0001410578-24-000199.txt : 20240314 0001410578-24-000199.hdr.sgml : 20240314 20240314170050 ACCESSION NUMBER: 0001410578-24-000199 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 85 CONFORMED PERIOD OF REPORT: 20231231 FILED AS OF DATE: 20240314 DATE AS OF CHANGE: 20240314 FILER: COMPANY DATA: COMPANY CONFORMED NAME: HUDSON TECHNOLOGIES INC /NY CENTRAL INDEX KEY: 0000925528 STANDARD INDUSTRIAL CLASSIFICATION: WHOLESALE-MACHINERY, EQUIPMENT & SUPPLIES [5080] ORGANIZATION NAME: 07 Trade & Services IRS NUMBER: 133641539 STATE OF INCORPORATION: NY FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 001-13412 FILM NUMBER: 24751133 BUSINESS ADDRESS: STREET 1: PO BOX 1541 STREET 2: ONE BLUE HILL PLAZA, 14TH FLOOR CITY: PEARL RIVER STATE: NY ZIP: 10965 BUSINESS PHONE: 8457356000 MAIL ADDRESS: STREET 1: PO BOX 1541 STREET 2: ONE BLUE HILL PLAZA, 14TH FLOOR CITY: PEARL RIVER STATE: NY ZIP: 10965 FORMER COMPANY: FORMER CONFORMED NAME: REFRIGERANT RECLAMATION INDUSTRIES INC DATE OF NAME CHANGE: 19940617 10-K 1 hdsn-20231231x10k.htm 10-K
http://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilities0000925528--12-312023FYfalsehttp://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilitiesHUDSON TECHNOLOGIES INC /NYhttp://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilitieshttp://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilitiesP12MP2M2024-05-012024-12-012026-09-012025-05-012027-06-012024-02-012024-12-012030-07-012023-06-012027-08-01P3YP2Y9MP5YP6MP6M0000925528us-gaap:CommonStockMember2023-01-012023-12-310000925528us-gaap:CommonStockMember2022-01-012022-12-310000925528us-gaap:CommonStockMember2021-01-012021-12-310000925528us-gaap:RetainedEarningsMember2023-12-310000925528us-gaap:AdditionalPaidInCapitalMember2023-12-310000925528us-gaap:RetainedEarningsMember2022-12-310000925528us-gaap:AdditionalPaidInCapitalMember2022-12-310000925528us-gaap:RetainedEarningsMember2021-12-310000925528us-gaap:AdditionalPaidInCapitalMember2021-12-310000925528us-gaap:RetainedEarningsMember2020-12-310000925528us-gaap:AdditionalPaidInCapitalMember2020-12-310000925528us-gaap:CommonStockMember2023-12-310000925528us-gaap:CommonStockMember2022-12-310000925528us-gaap:CommonStockMember2021-12-310000925528us-gaap:CommonStockMember2020-12-310000925528hdsn:StockOptionPlanMember2023-12-310000925528hdsn:StockOptionPlanMember2022-12-310000925528hdsn:StockOptionPlanMember2021-12-310000925528hdsn:StockOptionPlanMember2020-12-310000925528us-gaap:EmployeeStockOptionMember2021-01-012021-12-310000925528hdsn:StockOptionPlanMember2023-01-012023-12-310000925528hdsn:StockOptionPlanMember2022-01-012022-12-310000925528hdsn:StockOptionPlanMember2021-01-012021-12-310000925528srt:MinimumMemberus-gaap:EmployeeStockOptionMember2023-01-012023-12-310000925528srt:MaximumMemberus-gaap:EmployeeStockOptionMember2023-01-012023-12-310000925528srt:MinimumMember2023-01-012023-12-310000925528srt:MaximumMember2023-01-012023-12-310000925528srt:MinimumMember2022-01-012022-12-310000925528srt:MaximumMember2022-01-012022-12-310000925528srt:MinimumMember2021-01-012021-12-310000925528srt:MaximumMember2021-01-012021-12-310000925528us-gaap:EmployeeStockOptionMember2022-01-012022-12-310000925528us-gaap:EmployeeStockOptionMember2023-01-012023-12-310000925528us-gaap:StockAppreciationRightsSARSMember2023-01-012023-01-310000925528us-gaap:ServiceMember2023-01-012023-12-310000925528us-gaap:ProductMember2023-01-012023-12-310000925528us-gaap:ManagementServiceMember2023-01-012023-12-310000925528us-gaap:ServiceMember2022-01-012022-12-310000925528us-gaap:ProductMember2022-01-012022-12-310000925528us-gaap:ManagementServiceMember2022-01-012022-12-310000925528us-gaap:ServiceMember2021-01-012021-12-310000925528us-gaap:ProductMember2021-01-012021-12-310000925528us-gaap:ManagementServiceMember2021-01-012021-12-310000925528hdsn:FirstInLastOutTrancheMemberhdsn:TermLoanMember2023-07-012023-09-300000925528srt:MinimumMemberus-gaap:VehiclesMember2023-12-310000925528srt:MinimumMemberus-gaap:LeaseholdImprovementsMember2023-12-310000925528srt:MinimumMemberus-gaap:LandImprovementsMember2023-12-310000925528srt:MinimumMemberus-gaap:FurnitureAndFixturesMember2023-12-310000925528srt:MinimumMemberus-gaap:EquipmentMember2023-12-310000925528srt:MinimumMemberus-gaap:ComputerEquipmentMember2023-12-310000925528srt:MinimumMemberus-gaap:BuildingMember2023-12-310000925528srt:MinimumMemberus-gaap:BuildingImprovementsMember2023-12-310000925528srt:MinimumMemberus-gaap:AssetsHeldUnderCapitalLeasesMember2023-12-310000925528srt:MinimumMemberhdsn:CylindersMember2023-12-310000925528srt:MaximumMemberus-gaap:VehiclesMember2023-12-310000925528srt:MaximumMemberus-gaap:LeaseholdImprovementsMember2023-12-310000925528srt:MaximumMemberus-gaap:LandImprovementsMember2023-12-310000925528srt:MaximumMemberus-gaap:FurnitureAndFixturesMember2023-12-310000925528srt:MaximumMemberus-gaap:EquipmentMember2023-12-310000925528srt:MaximumMemberus-gaap:ComputerEquipmentMember2023-12-310000925528srt:MaximumMemberus-gaap:BuildingMember2023-12-310000925528srt:MaximumMemberus-gaap:BuildingImprovementsMember2023-12-310000925528srt:MaximumMemberus-gaap:AssetsHeldUnderCapitalLeasesMember2023-12-310000925528srt:MaximumMemberhdsn:CylindersMember2023-12-310000925528us-gaap:VehiclesMember2023-12-310000925528us-gaap:LeaseholdImprovementsMember2023-12-310000925528us-gaap:LandMember2023-12-310000925528us-gaap:LandImprovementsMember2023-12-310000925528us-gaap:FurnitureAndFixturesMember2023-12-310000925528us-gaap:EquipmentMember2023-12-310000925528us-gaap:ConstructionInProgressMember2023-12-310000925528us-gaap:ComputerEquipmentMember2023-12-310000925528us-gaap:BuildingMember2023-12-310000925528us-gaap:BuildingImprovementsMember2023-12-310000925528us-gaap:AssetsHeldUnderCapitalLeasesMember2023-12-310000925528hdsn:CylindersMember2023-12-310000925528us-gaap:VehiclesMember2022-12-310000925528us-gaap:LeaseholdImprovementsMember2022-12-310000925528us-gaap:LandMember2022-12-310000925528us-gaap:LandImprovementsMember2022-12-310000925528us-gaap:FurnitureAndFixturesMember2022-12-310000925528us-gaap:EquipmentMember2022-12-310000925528us-gaap:ConstructionInProgressMember2022-12-310000925528us-gaap:ComputerEquipmentMember2022-12-310000925528us-gaap:BuildingMember2022-12-310000925528us-gaap:BuildingImprovementsMember2022-12-310000925528us-gaap:AssetsHeldUnderCapitalLeasesMember2022-12-310000925528hdsn:CylindersMember2022-12-310000925528us-gaap:RetainedEarningsMember2023-01-012023-12-310000925528us-gaap:RetainedEarningsMember2022-01-012022-12-310000925528us-gaap:RetainedEarningsMember2021-01-012021-12-310000925528hdsn:RevolvingCreditFacilityAmendmentMemberhdsn:WellsFargoMember2022-03-022022-03-020000925528hdsn:FirstInLastOutTrancheMemberhdsn:WellsFargoMember2022-03-022022-03-020000925528us-gaap:PreferredStockMember2023-12-310000925528us-gaap:PreferredStockMember2022-12-310000925528us-gaap:SeriesAPreferredStockMember2023-12-310000925528us-gaap:SeriesAPreferredStockMember2022-12-310000925528us-gaap:StateAndLocalJurisdictionMember2023-12-310000925528us-gaap:DomesticCountryMember2023-12-310000925528us-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-12-310000925528us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-12-310000925528us-gaap:SellingGeneralAndAdministrativeExpensesMember2021-01-012021-12-310000925528hdsn:PriorTermLoanFacilityMember2022-01-012022-03-310000925528us-gaap:LetterOfCreditMemberhdsn:WellsFargoMember2022-03-020000925528hdsn:SwingLineLoanMemberhdsn:WellsFargoMember2022-03-020000925528hdsn:AmendedAndRestatedRevolvingCreditAndSecurityAgreementMemberhdsn:WellsFargoMember2022-03-020000925528hdsn:WellsFargoMember2022-03-022022-03-020000925528hdsn:WoodcliffLakeNewJerseyMember2023-01-012023-12-310000925528hdsn:StonyPointNyMemberMember2023-01-012023-12-310000925528hdsn:SmyrnaGeorgiaMemberMember2023-01-012023-12-310000925528hdsn:OntarioCaliforniaMemberMember2023-01-012023-12-310000925528hdsn:LongBeachCaliforniaMember2023-01-012023-12-310000925528hdsn:EscondidoCaliforniaMember2023-01-012023-12-310000925528hdsn:CharlotteNorthCarolinaMember2023-01-012023-12-310000925528hdsn:ChampaignIllinoisMember2023-01-012023-12-310000925528hdsn:ChampaignIllinois2ndLocationMember2023-01-012023-12-310000925528hdsn:BatonRougeLouisianaMember2023-01-012023-12-310000925528srt:MinimumMemberus-gaap:NoncompeteAgreementsMember2023-12-310000925528srt:MinimumMemberus-gaap:CustomerRelationshipsMember2023-12-310000925528srt:MaximumMemberus-gaap:NoncompeteAgreementsMember2023-12-310000925528srt:MaximumMemberus-gaap:CustomerRelationshipsMember2023-12-310000925528us-gaap:NoncompeteAgreementsMember2023-12-310000925528us-gaap:CustomerRelationshipsMember2023-12-310000925528us-gaap:AboveMarketLeasesMember2023-12-310000925528us-gaap:NoncompeteAgreementsMember2022-12-310000925528us-gaap:CustomerRelationshipsMember2022-12-310000925528us-gaap:AboveMarketLeasesMember2022-12-310000925528us-gaap:CostOfSalesMember2023-01-012023-12-310000925528us-gaap:CostOfSalesMember2022-01-012022-12-310000925528us-gaap:CostOfSalesMember2021-01-012021-12-3100009255282022-06-3000009255282022-03-310000925528us-gaap:DomesticCountryMember2022-12-310000925528us-gaap:RevolvingCreditFacilityMember2022-03-020000925528hdsn:TwoThousandAndTwentyStockIncentivePlanMember2020-06-110000925528hdsn:TwoThousandAndEighteenStockIncentivePlanMember2018-06-070000925528hdsn:TwoThousandAndFourteenStockIncentivePlanMember2014-09-170000925528hdsn:CaresActLoanMemberhdsn:PaycheckProtectionProgramMember2020-04-230000925528hdsn:TermLoanMember2023-09-300000925528hdsn:TermLoanFacilityMember2022-03-020000925528hdsn:PriorTermLoanFacilityMember2022-03-020000925528hdsn:FirstInLastOutTrancheMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:SecuredOvernightFinancingRateMember2022-03-022022-03-020000925528hdsn:RevolvingCreditFacilityAmendmentMember2022-03-022022-03-020000925528hdsn:OneCustomerMembersrt:MinimumMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000925528hdsn:OneCustomerMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-12-310000925528hdsn:OneCustomerMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000925528hdsn:NoCustomerMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-310000925528hdsn:OneCustomerMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-01-012021-12-310000925528hdsn:OneCustomerMemberus-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2021-01-012021-12-3100009255282020-12-310000925528hdsn:TermLoanMember2023-07-012023-09-3000009255282021-12-310000925528us-gaap:RevolvingCreditFacilityMemberhdsn:WellsFargoMemberhdsn:FCCRMember2022-03-022022-03-020000925528hdsn:CaresActLoanMemberhdsn:PaycheckProtectionProgramMember2021-07-012021-09-300000925528hdsn:WellsFargoMemberhdsn:FCCRMember2022-03-022022-03-020000925528srt:MaximumMemberhdsn:WellsFargoMember2022-03-020000925528hdsn:WellsFargoMember2022-03-020000925528hdsn:RiversideCaliforniaMemberMember2023-01-012023-12-310000925528hdsn:RantoulIllinoisMember2023-01-012023-12-310000925528srt:MinimumMemberhdsn:WellsFargoMemberhdsn:FCCRMember2022-03-022022-03-020000925528srt:MaximumMemberhdsn:WellsFargoMemberhdsn:FCCRMember2022-03-022022-03-020000925528hdsn:PriorTermLoanFacilityMember2022-03-022022-03-020000925528hdsn:CaresActLoanMemberhdsn:PaycheckProtectionProgramMember2020-04-232020-04-230000925528srt:MinimumMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:WellsFargoMember2022-03-020000925528srt:MinimumMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:SecuredOvernightFinancingRateMember2022-03-020000925528srt:MinimumMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:PrimeCommercialLendingRateOfWellsFargoMember2022-03-020000925528srt:MaximumMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:WellsFargoMember2022-03-020000925528srt:MaximumMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:SecuredOvernightFinancingRateMember2022-03-020000925528hdsn:SecuredOvernightFinancingRateAndFirstInLastOutTrancheMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:SecuredOvernightFinancingRateMember2022-03-020000925528hdsn:FirstInLastOutTrancheMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:SecuredOvernightFinancingRateMember2022-03-020000925528hdsn:FirstInLastOutTrancheMemberhdsn:RevolvingCreditFacilityAmendmentMemberhdsn:PrimeCommercialLendingRateOfWellsFargoMember2022-03-020000925528hdsn:RevolvingCreditFacilityAmendmentMemberhdsn:SecuredOvernightFinancingRateMember2022-03-020000925528hdsn:RevolvingCreditFacilityAmendmentMemberhdsn:PrimeCommercialLendingRateOfWellsFargoMember2022-03-020000925528hdsn:RevolvingCreditFacilityAmendmentMember2022-03-0200009255282023-12-3100009255282022-12-3100009255282016-07-012016-07-310000925528us-gaap:AdditionalPaidInCapitalMember2023-01-012023-12-310000925528us-gaap:AdditionalPaidInCapitalMember2022-01-012022-12-3100009255282022-01-012022-12-310000925528us-gaap:AdditionalPaidInCapitalMember2021-01-012021-12-3100009255282021-01-012021-12-3100009255282023-10-012023-12-3100009255282023-06-3000009255282024-03-1400009255282023-01-012023-12-31xbrli:sharesiso4217:USDutr:MTxbrli:pureiso4217:USDxbrli:shareshdsn:segment

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

WASHINGTON, DC 20549

FORM 10-K

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

For the fiscal year ended December 31, 2023

OR

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

For the transition period from ____________ to ____________

Commission file number 1-13412

Hudson Technologies, Inc.

(Exact name of registrant as specified in its charter)

New York

 

13-3641539

(State or Other Jurisdiction of Incorporation or Organization)

 

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

 

 

 

300 Tice Boulevard

 

 

Suite 290

 

 

Woodcliff Lake, New Jersey

 

07677

(Address of Principal Executive Offices)

 

(Zip Code)

Registrant’s telephone number, including area code (845) 735-6000

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

Title of Each Class

Trading Symbol(s)

 

Name of each exchange on which registered

Common stock, $0.01 par value

HDSN

 

The NASDAQ Stock Market LLC (NASDAQ Capital Market)

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

Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act  Yes      No

Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or 15(d) of the Exchange Act  Yes      No

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

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

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

Large accelerated filer

Accelerated filer

 

 

Non-accelerated filer

Smaller reporting company

 

 

 

 

 

Emerging growth company

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

Indicate by check mark whether the registrant has filed a report on and attestation to its management’s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.

If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements.

Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant’s executive officers during the relevant recovery period pursuant to §240.10D-1(b).

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

The aggregate market value of registrant’s common stock held by non-affiliates at June 30, 2023 was approximately $417,114,994.

As of March 14, 2024, there were 45,510,925 shares of the registrant’s common stock outstanding.

DOCUMENTS INCORPORATED BY REFERENCE:

Portions of the Registrant’s Proxy Statement for its Annual Meeting of Stockholders to be held on June 12, 2024, are incorporated by reference in Part III of this Report. Except as expressly incorporated by reference, the Registrant’s Proxy Statement shall not be deemed to be part of this Form 10-K.

Hudson Technologies, Inc.

Index

Part

    

Item

    

Page

Part I.

Item 1-

Business

3

Item 1A-

Risk Factors

9

Item 1B -

Unresolved Staff Comments

13

Item 1C -

Cybersecurity

13

Item 2 -

Properties

14

Item 3 -

Legal Proceedings

15

Item 4 -

Mine Safety Disclosures

15

Part II.

Item 5 -

Market for Registrant’s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities

15

Item 6 -

[Reserved]

16

Item 7 -

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

17

Item 7A -

Quantitative and Qualitative Disclosures About Market Risk

23

Item 8 -

Financial Statements and Supplementary Data

23

Item 9 -

Changes in and Disagreements with Accountants on Accounting and Financial Disclosure

23

Item 9A -

Controls and Procedures

26

Item 9B -

Other Information

26

Item 9C -

Disclosure Regarding Foreign Jurisdictions that Prevent Inspections

26

Part III.

Item 10 -

Directors, Executive Officers and Corporate Governance

26

Item 11 -

Executive Compensation

26

Item 12 -

Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters

26

Item 13 -

Certain Relationships and Related Transactions, and Director Independence

26

Item 14 -

Principal Accountant Fees and Services

26

Part IV.

Item 15 -

Exhibits and Financial Statement Schedules

27

Item 16 -

Form 10-K Summary

29

Signatures

56

2

Part I

Item 1. Business

General

Hudson Technologies, Inc. (“Hudson” or the “Company”), incorporated under the laws of New York on January 11, 1991, is a refrigerant services company providing innovative solutions to recurring problems within the refrigeration industry. Hudson has proven, reliable programs that meet customer refrigerant needs by providing environmentally sustainable solutions from initial sale of refrigerant gas through recovery, reclamation and reuse, peak operating performance of equipment through energy efficiency and emergency air conditioning and refrigeration system repair, to final refrigerant disposal and carbon credit trading.

The Company’s operations consist of one reportable segment. The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems, and include refrigerant and industrial gas sales, refrigerant management services consisting primarily of reclamation of refrigerants and RefrigerantSide® Services performed at a customer’s site. RefrigerantSide® Services consists of system decontamination to remove moisture, oils and other contaminants intended to restore systems to designed capacity.As a component of the Company’s products and services, the Company also participates in the generation of carbon offset projects. The Company operates principally through its wholly-owned subsidiary, Hudson Technologies Company. Unless the context requires otherwise, references to the “Company”, “Hudson”, “we”, “us”, “our”, or similar pronouns refer to Hudson Technologies, Inc. and its subsidiaries.

The Company’s executive offices are located at 300 Tice Boulevard, Suite 290, Woodcliff Lake, New Jersey and its telephone number is (845) 735-6000. The Company maintains a website at www.hudsontech.com, the contents of which are not incorporated into this filing.

Industry Background

The Company participates in an industry that is highly regulated, and changes in the regulations affecting our business could affect our operating results. Currently the Company purchases virgin and reclaimable hydrofluoro-olefin (“HFO”) and hydrofluorocarbon (“HFC”) refrigerants and reclaimable, primarily hydrochlorofluorocarbon (“HCFC”) and chlorofluorocarbon (“CFC”) refrigerants from suppliers and its customers. Effective January 1, 1996, the Clean Air Act, as amended (the “Act”) prohibited the production of virgin CFC refrigerants and limited the production of virgin HCFC refrigerants. Effective January 2004, the Act further limited the production of virgin HCFC refrigerants and federal regulations were enacted which established production and consumption allowances for HCFC refrigerants and which imposed limitations on the importation of certain virgin HCFC refrigerants. Under the Act, production of certain virgin HCFC refrigerants was phased out on December 31, 2019 and production of all virgin HCFC refrigerants is scheduled to be phased out by 2030.

The Act, and the federal regulations enacted under authority of the Act, have mandated and/or promoted responsible use practices in the air conditioning and refrigeration industry, which are intended to minimize the release of refrigerants into the atmosphere and encourage the recovery and re-use of refrigerants. The Act prohibits the venting of CFC, HFC and HCFC refrigerants, and prohibits and/or phases down the production of CFC and HCFC refrigerants.

The Act also mandates the recovery of CFC and HCFC refrigerants and promotes and encourages re-use and reclamation of CFC and HCFC refrigerants. Under the Act, owners, operators and companies servicing cooling equipment utilizing CFC and HCFC refrigerants are responsible for the integrity of the systems regardless of the refrigerant being used. In November 2016, the EPA issued a final rule extending these requirements to HFCs and to certain other refrigerants that are approved by the EPA as alternatives for CFC and HCFC refrigerants (the “608 Rule”).

3

HFC refrigerants are used as substitutes for CFC and HCFC refrigerants in certain applications. As a result of the increasing restrictions and limitations on the production and use of CFC and HCFC refrigerants, various sectors of the air conditioning and refrigeration industry have been replacing or modifying equipment that utilize CFC and HCFC refrigerants and have been transitioning to equipment that utilize HFC or HFO refrigerants. Certain HFC refrigerants are highly weighted greenhouse gases that are believed to contribute to global warming and climate change and, as a result, are now subject to various state regulations relating to the sale, use and emissions of HFC refrigerants, as well as federal restrictions on the production and consumption of HFCs under the AIM Act (as set forth below). The Company expects that HFC refrigerants eventually will be replaced by HFOs or other types of products with lower global warming potentials.

In October 2016, more than 200 countries, including the United States, agreed to amend the Montreal Protocol to phase down production of HFCs by 85% by 2047. The amendment establishes timetables for all developed and developing countries to freeze and then reduce production and use of HFCs, with the first reductions by developed countries in 2019. The amendment became effective January 1, 2019 as more than 197 countries have ratified the amendment.

AIM Act

The United States Environmental Protection Agency (“EPA”) issued several final rules establishing the framework to allocate allowances for virgin production and consumption of hydrofluorocarbon refrigerants (“HFCs”) that currently provide allowances through 2028. The EPA is responsible for the administration of the HFC phase down enacted by Congress under the AIM Act.

The AIM Act directs the EPA to address the reduction in virgin HFCs and provides authority to do so in three respects:

1)phase down the production and consumption of listed HFCs,
2)manage these HFCs and their substitutes including reclamation of refrigerants, and
3)facilitate the transition to next-generation technologies.

Congress required that the EPA consider ways to promote reclamation in all phases of its implementation of the AIM Act. The AIM Act introduced a stepdown of 10% from baseline levels in 2022 and 2023, and establishes a cumulative 40% reduction in the baseline for 2024. Hudson received allocation allowances for calendar years 2022, 2023 and 2024 equal to approximately 3 million, 3 million and 1.9 million Metric Tons Exchange Value Equivalents, respectively, per year, or approximately 1% of the total HFC consumption. Reclamation will be critical to maintaining necessary HFC supply levels to ensure an orderly phasedown. Reclamation is not subject to the allowance system or restricted from use.

On October 6, 2023, the EPA announced the latest actions to phase down HFCs under the AIM Act:

1)

Finalization of the Technology Transition Rule- The first new action is a final rule to accelerate the ongoing transition to more efficient and climate-safe technologies in new refrigeration, heating and cooling systems and other products by restricting the use of HFCs where alternatives are already available. The rule, which applies to both imported and domestically manufactured products, bans HFCs in certain equipment and sets a limit on the global warming potentials (GWPs) of the HFCs that can be used in each subsector, with compliance dates ranging from 2025 to 2028.

In December 2023, the EPA announced an interim final rule on this matter, which provides an additional year, until January 1, 2026, for the installation of new residential and light commercial A/C and heat pump systems that use components manufactured or imported prior to January 1, 2025. Importantly, to qualify for the extended compliance deadline, all components of a system using the higher GWP HFC must be manufactured or imported prior to January 1, 2025.

2)

Proposed Refrigerant Management Rule- The second action is a proposed rule to better manage and reuse existing HFCs, including by reducing wasteful leaks from equipment and supporting HFC recycling and reclamation. The proposed rule, which is expected to be finalized during the third quarter of 2024, includes requirements for repairing leaky equipment, use of automatic leak detection systems on large refrigeration systems, use of reclaimed HFCs for certain applications, recovery of HFCs from cylinders before their disposal, and a container tracking system.

4

Products and Services

Sustainability

From its inception, the Company has sold refrigerants, and has provided refrigerant reclamation and refrigerant management services that are designed to recover and reuse refrigerants, thereby protecting the environment from release of refrigerants to the atmosphere and the corresponding ozone depletion and global warming impact and supporting the circular economy. The reclamation process allows the refrigerant to be re-used thereby eliminating the need to destroy or manufacture additional refrigerant and eliminating the corresponding impact to the environment associated with the destruction and manufacturing. The Company believes it is the largest refrigerant reclaimer in the United States. In addition, the Company participates in the creation and monetization of verified emission reductions utilizing third party protocols.

The Company provides a complete offering of refrigerant management services, which primarily include reclamation of refrigerants, laboratory testing through the Company’s laboratory, which has been certified by the Air Conditioning, Heating and Refrigeration Institute (“AHRI”), and banking (storage) services tailored to individual customer requirements. The Company also separates “crossed” (i.e. commingled) refrigerants and provides re-usable cylinder refurbishment and hydrostatic testing services.

The Company has also created alternative solutions to reactive and preventative maintenance procedures that are performed on commercial and industrial refrigeration systems. These services, known as RefrigerantSide® Services, reduce the system’s energy consumption and improve the system’s operating performance, and complement the Company’s refrigerant sales and refrigerant reclamation and management services. These services also preserve system refrigerant charges, reducing the need for manufacture of additional refrigerant.

Refrigerant and Industrial Gas Sales

The Company sells reclaimed and virgin (new) refrigerants to a variety of customers in the air conditioning and refrigeration industry. The Company continues to sell reclaimed CFC and certain HCFC based refrigerants, which are no longer manufactured, and HFC’s, which are being phased down as discussed above. The Company purchases virgin refrigerants, such as HFC’s and HFO’s, from several suppliers and resold by the Company. Additionally, the Company regularly purchases used or contaminated refrigerants, from many different sources, which refrigerants are then reclaimed using the Company’s high speed proprietary reclamation equipment, its proprietary Zugibeast® system, and then are resold by the Company.

The Company also sells industrial gases to a variety of industry customers, predominantly to users in or involved with the US Military. In July 2016 the Company was awarded, as prime contractor, a five-year contract, together with a five-year renewal option which was exercised in July 2021, by the United States Defense Logistics Agency (“DLA”) for the management, supply, and sale of refrigerants, compressed gases, cylinders and related services.

RefrigerantSide® Services

The Company provides decontamination and recovery services that are performed at a customer’s site through the use of portable, high volume, high-speed proprietary equipment, including the proprietary Zugibeast® system. Certain of these RefrigerantSide® Services, which encompass system decontamination, and refrigerant recovery and reclamation, are also proprietary and are covered by process patents.

In addition to the decontamination and recovery services previously described, the Company also provides predictive and diagnostic services for its customers. The Company offers diagnostic services that are intended to predict potential problems in air conditioning, process cooling and refrigeration systems before they occur. The Company’s Chiller Chemistry® offering integrates several fluid tests of an operating system and the corresponding laboratory results into an engineering report providing its customers with an understanding of the current condition of the fluids, the cause for any abnormal findings and the potential consequences if the abnormal findings are not remediated. Fluid Chemistry®, an abbreviated version of the Company’s Chiller Chemistry® offering, is designed to quickly identify systems that require further examination.

5

The Company has also been awarded several US patents for its SmartEnergy OPS®, which is a system for measuring, modifying and improving the efficiency of energy systems, including air conditioning and refrigeration systems, in industrial and commercial applications. This service is a web-based real time continuous monitoring service applicable to a facility’s chiller plant systems. The SmartEnergy OPS® offering enables customers to monitor and improve their chiller plant performance and proactively identify and correct system inefficiencies. SmartEnergy OPS® is able to identify specific inefficiencies in the operation of chiller plant systems and, when used with Hudson’s RefrigerantSide ® Services, can increase the efficiency of the operating systems thereby reducing energy usage and costs. Improving the system efficiency reduces power consumption thereby directly reducing CO 2 emissions at the power plants or onsite. Lastly, the Company’s ChillSmart® offering, which combines the system optimization with the Company’s Chiller Chemistry ® offering, provides a snapshot of a packaged chiller’s operating efficiency and health. ChillSmart® provides a very effective predictive maintenance tool and helps our customers to identify the operating chillers that cause higher operating costs.

The Company’s engineers who developed and support SmartEnergy OPS® are recognized as Energy Experts and Qualified Best Practices Specialists by the United States Department of Energy (“DOE”) in the areas of Steam and Process Heating under the DOE “Best Practices” program, and are the Lead International Energy Experts for steam, chillers and refrigeration systems for the United Nations Industrial Development Organization (“UNIDO”). The Company’s staff have trained more than 4,000 industrial plant personnel in the US and internationally and have developed, and are currently delivering, training curriculums in 12 different countries. The Company’s staff have completed more than 200 industrial ESAs in the US and internationally.

Carbon Offset Projects

CFC refrigerants are ozone depleting substances and are also highly weighted greenhouse gases that contribute to global warming and climate change. The destruction of CFC refrigerants may be eligible for verified emission reductions that can be converted and monetized into carbon offset credits, which then can be traded in the emerging carbon offset markets. The Company is pursuing opportunities to acquire CFC refrigerants and is developing relationships within the emerging environmental markets in order to implement opportunities for the creation and monetization of verified emission reductions from the destruction of CFC refrigerants.

In October 2015, the American Carbon Registry (“ACR”) established a methodology to provide, among other things, a quantification framework for the creation of carbon offset credits for the use of certified reclaimed HFC refrigerants. The Company is pursuing opportunities to acquire HFC refrigerants and is developing relationships within the emerging environmental markets in order to implement opportunities for the creation and monetization of verified emission reductions from the reclamation of HFC refrigerants.

Suppliers

The Company purchases refrigerants from a variety of manufacturers, wholesalers, distributors, bulk gas brokers and from other sources within the air conditioning, refrigeration and automotive aftermarket industries.

Customers

The Company provides its products and services to commercial, industrial and governmental customers, as well as to refrigerant wholesalers, distributors, contractors and to refrigeration equipment manufacturers. Agreements with larger customers generally provide for standardized pricing for specified services. The Company generates sales by customer purchase order on a real-time basis and therefore does not carry a backlog of sales.

For the year ended December 31, 2023, there was one customer accounting for greater than 10% of the Company’s revenues and  one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2023. For the year ended December 31, 2022, there was no customer that accounted for 10% of the Company’s revenues, but one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2022. For the year ended December 31, 2021, one customer accounted for 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2021.

6

Strategic Relationships

Hudson announced the following strategic relationships:

-In, January 2022, Hudson entered into an agreement with AprilAire, the leading provider of professional grade healthy air solutions for homes, to meet the requirements of the recently finalized California Air Resources Board (CARB) Regulation Order for Reclaimed Refrigerant Use for Manufacturers of AC Equipment. Hudson will supply reclaimed refrigerant to AprilAire for use in its range of healthy indoor air quality solutions.
-In, August 2022, Hudson entered into an agreement with Lennox International Inc., a global leader in energy-efficient climate-control solutions, to align their efforts to meet the CARB Regulation Order for Certified Reclaimed Refrigerant Use Requirements for Manufacturers of AC Equipment. Under the agreement, Hudson will be the exclusive supplier of certified reclaimed refrigerants to Lennox for the aftermarket support of their residential HVAC systems.

Marketing

Marketing programs are conducted through the efforts of the Company’s executive officers, marketing personnel and Company sales personnel. Hudson employs various marketing methods, including digital marketing, segment targeted outreach, social media, trade and industry events, webinars, in-person solicitation, print advertising, response to quotation requests and the internet through the Company’s website (www.hudsontech.com). Information on the Company’s website is not part of this report.

The Company’s sales personnel are compensated on a combination of a base salary and commission. The Company’s executive officers devote significant time and effort to customer relationships.

Competition

The Company competes primarily on the basis of the performance of its proprietary high volume, high-speed equipment used in its operations, the breadth of services offered by the Company, including proprietary RefrigerantSide® Services and other on-site services, and price, particularly with respect to refrigerant sales.

The Company competes with numerous regional and national companies that market reclaimed and virgin refrigerants and provide refrigerant reclamation services. Certain of these competitors may possess greater financial, marketing, distribution and other resources for the sale and distribution of refrigerants than the Company.

Hudson’s RefrigerantSide® Services provide solutions to certain problems within the refrigeration industry and, as such, the demand and market acceptance for these services are subject to uncertainty. Competition for these services primarily consists of traditional periodic maintenance and repair methods of solving the industry’s problems. The Company’s marketing strategy is to educate the marketplace that its alternative solutions are available and that RefrigerantSide® Services are superior to traditional methods.

Risk Management

The Company carries insurance coverage that it considers sufficient to protect the Company’s assets and operations. The Company attempts to operate in a professional and prudent manner and to reduce potential liability risks through specific risk management efforts, including ongoing employee training.

The refrigerant industry involves potentially significant risks of statutory and common law liability for environmental damage and personal injury. The Company, and in certain instances, its officers, directors and employees, may be subject to claims arising from the Company’s on-site or off-site services, including the improper release, spillage, misuse or mishandling of refrigerants classified as hazardous or non-hazardous substances or materials. The Company may be held strictly liable for damages, which could be substantial, regardless of whether it exercised due care and complied with all relevant laws and regulations.

Hudson maintains environmental impairment insurance of $10,000,000 per occurrence, and $10,000,000 annual in the aggregate.

7

Government Regulation

The business of refrigerant and industrial gas sales, reclamation and management is subject to extensive, stringent and frequently changing federal, state and local laws and substantial regulation under these laws by governmental agencies, including the EPA, the United States Occupational Safety and Health Administration (“OSHA”) and the United States Department of Transportation (“DOT”).

Among other things, these regulatory authorities impose requirements which regulate the handling, packaging, labeling, transportation and disposal of hazardous and non-hazardous materials and the health and safety of workers, and require the Company and, in certain instances, its employees, to obtain and maintain licenses in connection with its operations. This extensive regulatory framework imposes significant compliance burdens and risks on the Company.

Hudson and its customers are subject to the requirements of the Clean Air Act and the AIM Act, and the regulations promulgated thereunder by the EPA, which make it unlawful for any person in the course of maintaining, servicing, repairing, and disposing of air conditioning or refrigeration equipment, to knowingly vent or otherwise release or dispose of ozone depleting substances, and non-ozone depleting substitutes, used as refrigerants.

Pursuant to the Act, reclaimed refrigerant must satisfy the same purity standards as newly manufactured, virgin refrigerants in accordance with standards established by AHRI prior to resale to a person other than the owner of the equipment from which it was recovered. The EPA administers a certification program pursuant to which applicants certify to reclaim refrigerants in compliance with AHRI standards. The Company has two of only four certified refrigerant testing laboratories in the United States under AHRI’s laboratory certification program, which is a voluntary program that certifies the ability of a laboratory to test refrigerant in accordance with the AHRI 700 standard. In addition, the EPA has established a mandatory certification program for air conditioning and refrigeration technicians. Hudson’s technicians have applied for or obtained such certification.

The Company may also be subject to regulations adopted by the EPA which impose reporting requirements arising out of the importation, purchase, production, use and/or emissions of certain greenhouse gases, including HFCs.

The Company is also subject to regulations adopted by the DOT which classify most refrigerants and industrial gases handled by the Company as hazardous materials or substances and imposes requirements for handling, packaging, labeling and transporting refrigerants and which regulate the use and operation of the Company’s commercial motor vehicles used in the Company’s business.

The Resource Conservation and Recovery Act of 1976, as amended (“RCRA”), requires facilities that treat, store or dispose of hazardous wastes to comply with certain operating standards. Before transportation and disposal of hazardous wastes off-site, generators of such waste must package and label their shipments consistent with detailed regulations and prepare a manifest identifying the material and stating its destination. The transporter must deliver the hazardous waste in accordance with the manifest to a facility with an appropriate RCRA permit. Under RCRA, impurities removed from refrigerants consisting of oils mixed with water and other contaminants are not presumed to be hazardous waste.

The Emergency Planning and Community Right-to-Know Act of 1986, as amended, requires the annual reporting by the Company of Emergency and Hazardous Chemical Inventories (Tier II reports) to the various states in which the Company operates and requires the Company to file annual Toxic Chemical Release Inventory Forms with the EPA.

The Comprehensive Environmental Response, Compensation and Liability Act of 1980 (“CERCLA”), establishes liability for clean-up costs and environmental damages to current and former facility owners and operators, as well as persons who transport or arrange for transportation of hazardous substances. Almost all states have similar statutes regulating the handling and storage of hazardous substances, hazardous wastes and non-hazardous wastes. Many such statutes impose requirements that are more stringent than their federal counterparts. The Company could be subject to substantial liability under these statutes to private parties and government entities, in some instances without any fault, for fines, remediation costs and environmental damage, as a result of the mishandling, release, or existence of any hazardous substances at any of its facilities.

The Occupational Safety and Health Act of 1970, as amended, mandates requirements for a safe work place for employees and special procedures and measures for the handling of certain hazardous and toxic substances. State laws, in certain circumstances, mandate additional measures for facilities handling specified materials. The Company is also subject to regulations adopted by the California Air Resources Board which impose certain reporting requirements arising out of the reclamation and sale of refrigerants that takes place within the State of California.

8

The Company believes that it is in material compliance with all applicable regulations that are material to its business operations.

Quality Assurance & Environmental Compliance

The Company utilizes in-house quality and regulatory compliance control procedures. Hudson maintains its own analytical testing laboratories, which are AHRI certified, to assure that reclaimed refrigerants comply with AHRI purity standards and employs portable testing equipment when performing on-site services to verify certain quality specifications. The Company employs twelve persons engaged full-time in quality control and to monitor the Company’s operations for regulatory compliance.

Human Capital Resources

On February 1, 2024, the Company had 237 full time employees including air conditioning and refrigeration technicians, chemists, engineers, sales and administrative personnel. None of the Company’s employees are represented by a union. The Company believes it has good relations with its employees.

Patents and Proprietary Information

The Company holds several U.S. and foreign patents, as well as pending patent applications, related to certain RefrigerantSide® Services and supporting systems developed by the Company for systems and processes for measuring and improving the efficiency of refrigeration systems, and for certain refrigerant recycling and reclamation technologies. These patents will expire between December 2024 and December 2036.

There can be no assurance as to the breadth or degree of protection that patents may afford the Company, that any patent applications will result in issued patents or that patents will not be circumvented or invalidated. Technological development in the refrigerant industry may result in extensive patent filings and a rapid rate of issuance of new patents. Although the Company believes that its existing patents and the Company’s equipment do not and will not infringe upon existing patents or violate proprietary rights of others, it is possible that the Company’s existing patent rights may not be valid or that infringement of existing or future patents or violations of proprietary rights of others may occur. In the event the Company’s equipment or processes infringe, or are alleged to infringe, patents or other proprietary rights of others, the Company may be required to modify the design of its equipment or processes, obtain a license or defend a possible patent infringement action. There can be no assurance that the Company will have the financial or other resources necessary to enforce or defend a patent infringement or proprietary rights violation action or that the Company will not become liable for damages.

The Company also relies on trade secrets and proprietary know-how, and employs various methods to protect its technology. However, such methods may not afford complete protection and there can be no assurance that others will not independently develop such know-how or obtain access to the Company’s know-how, concepts, ideas and documentation. Failure to protect its trade secrets could have a material adverse effect on the Company.

SEC Filings

The Company makes available on its internet website copies of its Annual Report on Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K, and amendments thereto, as soon as reasonably practicable after they are filed with the Securities and Exchange Commission.

Item 1A. Risk Factors

There are many important factors, including those discussed below (and above as described under “Business-Patents and Proprietary Information”), that have affected, and in the future could affect Hudson’s business including, but not limited to, the factors discussed below, which should be reviewed carefully together with the other information contained in this report. Some of the factors are beyond Hudson’s control and future trends are difficult to predict.

9

Risks Related to Business Strategy and Operations

Our existing and future debt obligations could impair our liquidity and financial condition.

Our existing credit facility, consisting of an asset-based lending facility of up to $75 million from Wells Fargo Bank, National Association (“Wells Fargo Bank”) and other lenders, is secured by substantially all of our assets and contains formulas that limit the amount of our future borrowings under that facility. Moreover, the terms of our credit facility also includes financial and negative covenants that, among other things, may limit our ability to incur additional indebtedness. If we violate any loan covenants and do not obtain a waiver from our lenders, our indebtedness under the credit facilities would become immediately due and payable, and the lenders could foreclose on their security, which could materially adversely affect our business and future financial condition and could require us to curtail or otherwise cease our existing operations.

Our revenues, results of operations and cash flows could be materially and adversely affected by changes in commodity prices.

Our revenues, results of operations and cash flows are affected by market prices for refrigerant gases. Commodity prices generally are affected by a wide range of factors beyond our control, including weather, seasonality, the availability and adequacy of supply, government regulation and policies and general political and economic conditions. We are exposed to fluctuating commodity prices as the result of our inventory of various refrigerant gases. At any time, our inventory levels may be substantial. We have processes in place to monitor exposures to these risks and engage in strategies to manage these risks. If these controls and strategies are not successful in mitigating our exposure to these fluctuations, we could be materially and adversely affected.

We may need additional financing to satisfy our future capital requirements, which may not be readily available to us.

Our capital requirements may be significant in the future. We may incur additional expenses in the development and implementation of our operations. Due to fluctuations in the price, demand and availability of new refrigerants, our existing credit facility led by Wells Fargo Bank that expires in March 2027 may not in the future be sufficient to provide all of the capital that we need to acquire and manage our inventories of new refrigerant. As a result, we may be required to seek additional equity or debt financing in order to develop our RefrigerantSide® Services business, our refrigerant sales business and our other businesses. We have no current arrangements with respect to, or sources of, additional financing other than our existing credit facility. There can be no assurance that we will be able to obtain any additional financing on terms acceptable to us or at all. Our inability to obtain financing, if and when needed, could materially adversely affect our business and future financial condition and could require us to curtail or otherwise cease our existing operations.

Adverse weather or economic downturn could adversely impact our financial results.

Our business could be negatively impacted by adverse weather or economic downturns. Weather is a significant factor in determining market demand for the refrigerants sold by us, and to a lesser extent, our RefrigerantSide® Services. Unusually cool temperatures in the spring and summer tend to depress demand for, and price of, refrigerants we sell. Protracted periods of cooler than normal spring and summer weather could result in a substantial reduction in our sales which could adversely affect our financial position as well as our results of operations. An economic downturn could cause customers to postpone or cancel purchases of the Company’s products or services. Either or both of these conditions could have severe negative implications to our business that may exacerbate many of the risk factors we identified in this report but not limited, to the following:

Liquidity

These conditions could reduce our liquidity, which could have a negative impact on our financial condition and results of operations.

Demand

These conditions could lower the demand and/or price for our product and services, which would have a negative impact on our results of operations.

Financial Covenants

These conditions could impact our ability to meet our loan covenants which, if we are unable to obtain a waiver from our lenders, could materially adversely affect our business and future financial condition and could require us to curtail or otherwise cease our existing operations.

10

Our business is impacted by customer concentration.

In July 2016, we were awarded, as prime contractor, a five-year contract, including a five-year renewal option (which has been exercised), by the United States Defense Logistics Agency (“DLA”) for the management and supply of refrigerants, compressed gases, cylinders and related items to US Military commands and installations, Federal civilian agencies and foreign militaries. Our contract with DLA expires in July 2026. For the years ended December 31, 2023, 2022 and 2021, the DLA accounted for 18%, 8% and 10% of our revenues. The loss of DLA as a customer could have a material adverse effect on our financial position and results of operations.

Our information technology systems, processes, and sites may suffer interruptions, failures, or attacks which could affect our ability to conduct business.

Our information technology systems provide critical data connectivity, information and services for internal and external users. These include, among other things, processing transactions, summarizing and reporting results of operations, complying with regulatory, legal or tax requirements, storing project information and other processes necessary to manage the business. Our systems and technologies, or those of third parties on which we rely, could fail or become unreliable due to equipment failures, software viruses, cyber threats, terrorist acts, natural disasters, power failures or other causes. Cybersecurity threats are evolving and include, but are not limited to, malicious software, cyber espionage, attempts to gain unauthorized access to our sensitive information, including that of our customers, suppliers, and subcontractors, and other electronic security breaches that could lead to disruptions in mission critical systems, unauthorized release of confidential or otherwise protected information, and corruption of data. Although we utilize various procedures and controls to monitor and mitigate these threats, there can be no assurance that these procedures and controls will be sufficient to prevent security threats from materializing. If any of these events were to materialize, the costs related to cyber or other security threats or disruptions may not be fully insured or indemnified and could have a material adverse effect on our reputation, operating results, and financial condition.

Risks Related to Regulatory and Environmental Matters

The nature of our business exposes us to potential liability.

The refrigerant recovery and reclamation industry involves potentially significant risks of statutory and common law liability for environmental damage and personal injury. We, and in certain instances, our officers, directors and employees, may be subject to claims arising from our on-site or off-site services, including the improper release, spillage, misuse or mishandling of refrigerants classified as hazardous or non-hazardous substances or materials. We may be strictly liable for damages, which could be substantial, regardless of whether we exercised due care and complied with all relevant laws and regulations. Our current insurance coverage may not be sufficient to cover potential claims, and adequate levels of insurance coverage may not be available in the future at a reasonable cost. A partially or completely uninsured claim against us, if successful and of sufficient magnitude would have a material adverse effect on our business and financial condition.

Our business and financial condition is substantially dependent on the sale and continued environmental regulation of refrigerants.

Our business and prospects are largely dependent upon continued regulation of the use and disposition of refrigerants. Changes in government regulations relating to the emission of refrigerants into the atmosphere could have a material adverse effect on us. Failure by government authorities to otherwise continue to enforce existing regulations or significant relaxation of regulatory requirements could also adversely affect demand for our services and products.

Our business is subject to significant regulatory compliance burdens.

The refrigerant reclamation and management business is subject to extensive, stringent and frequently changing federal, state and local laws and substantial regulation under these laws by governmental agencies, including the EPA, the OSHA and DOT. Although we believe that we are in material compliance with all applicable regulations material to our business operations, amendments to existing statutes and regulations or adoption of new statutes and regulations that affect the marketing and sale of refrigerant could require us to continually alter our methods of operation and/or discontinue the sale of certain of our products resulting in costs to us that could be substantial. We may not be able, for financial or other reasons, to comply with applicable laws, regulations and permit requirements, particularly as we seek to enter into new geographic markets. Our failure to comply with applicable laws, rules or regulations or permit requirements could subject us to civil remedies, including substantial fines, penalties and injunctions, as well as possible criminal sanctions, which would, if of significant magnitude, materially adversely impact our operations and future financial condition.

11

A number of factors could negatively impact the price and/or availability of refrigerants, which would, in turn, adversely affect our business and financial condition.

Refrigerant sales continue to represent a significant majority of our revenues. Therefore, our business is substantially dependent on the availability of both new and used refrigerants in large quantities, which may be affected by several factors including, without limitation: (i) commercial production and consumption limitations imposed by the Act and legislative limitations and ban on HCFC refrigerants; (ii) the amendment to the Montreal Protocol, the AIM Act, and any legislation and regulation enacted to implement the amendment, imposes limitations on production and consumption of HFC refrigerants; (iii) introduction of new refrigerants and air conditioning and refrigeration equipment; (iv) price competition resulting from additional market entrants; (v) changes in government regulation on the use and production of refrigerants; and (vi) reduction in price and/or demand for refrigerants. Sufficient amounts of new and/or used refrigerants may not be available to us in the future, particularly as a result of the further phase down of HFC production, or may not be available on commercially reasonable terms. Additionally, we may be subject to price fluctuations, periodic delays or shortages of new and/or used refrigerants. Our failure to obtain and resell sufficient quantities of virgin refrigerants on commercially reasonable terms, or at all, or to obtain, reclaim and resell sufficient quantities of used refrigerants would have a material adverse effect on our operating margins and results of operations.

Issues relating to potential global warming and climate change could have an impact on our business.

Refrigerants are considered to be strong greenhouse gases that are believed to contribute to global warming and climate change and are now subject to various state and federal regulations relating to the sale, use and emissions of refrigerants. Current and future global warming and climate change or related legislation and/or regulations may impose additional compliance burdens on us and on our customers and suppliers which could potentially result in increased administrative costs, decreased demand in the marketplace for our products, and/or increased costs for our supplies and products. In addition, an amendment to the Montreal Protocol has established timetables for all developed and developing countries to freeze and then reduce production and use of HFCs by 85% by 2047, with the first reductions by developed countries in 2019. The amendment became effective January 1, 2019. In December 2020, AIM Act legislation was enacted in the United States that requires the phasedown of virgin production of HFCs.

Risks Related to Our Common Stock and Other General Risks

As a result of competition, and the strength of some of our competitors in the market, we may not be able to compete effectively.

The markets for our services and products are highly competitive. We compete with numerous regional and national companies which provide refrigerant recovery and reclamation services, as well as companies which market and deal in new and reclaimed alternative refrigerants, including certain of our suppliers, some of which possess greater financial, marketing, distribution and other resources than us. We also compete with numerous manufacturers of refrigerant recovery and reclamation equipment. Certain of these competitors have established reputations for success in the service of air conditioning and refrigeration systems. We may not be able to compete successfully, particularly as we seek to enter into new markets.

We have the ability to designate and issue preferred stock, which may have rights, preferences and privileges greater than Hudson’s common stock and which could impede a subsequent change in control of us.

Our Certificate of Incorporation authorizes our Board of Directors to issue up to 5,000,000 shares of “blank check” preferred stock and to fix the rights, preferences, privileges and restrictions, including voting rights, of these shares, without further shareholder approval. The rights of the holders of our common stock will be subject to, and may be adversely affected by, the rights of holders of any additional preferred stock that may be issued by us in the future. Our ability to issue preferred stock without shareholder approval could have the effect of making it more difficult for a third party to acquire a majority of our voting stock, thereby delaying, deferring or preventing a change in control of us.

If our common stock were delisted from NASDAQ it could be subject to “penny stock” rules which would negatively impact its liquidity and our shareholders’ ability to sell their shares.

Our common stock is currently listed on the NASDAQ Capital Market. We must comply with numerous NASDAQ Marketplace rules in order to continue the listing of our common stock on NASDAQ. There can be no assurance that we can continue to meet the rules required to maintain the NASDAQ listing of our common stock. If we are unable to maintain our listing on NASDAQ, the market liquidity of our common stock may be severely limited.

12

Our management has significant control over our affairs.

Currently, our officers and directors collectively beneficially own approximately 7.8% of our outstanding common stock. Accordingly, our officers and directors are in a position to significantly affect major corporate transactions and the election of our directors. There is no provision for cumulative voting for our directors.

We may fail to successfully integrate any additional acquisitions made by us into our operations.

As part of our business strategy, we may look for opportunities to grow by acquiring other product lines, technologies or facilities that complement or expand our existing business. We may be unable to identify additional suitable acquisition candidates or negotiate acceptable terms. In addition, we may not be able to successfully integrate any assets, liabilities, customers, systems or management personnel we may acquire into our operations and we may not be able to realize related revenue synergies and cost savings within expected time frames. There can be no assurance that we will be able to successfully integrate any prior or future acquisition.

Item 1B. Unresolved Staff Comments

None.

Item 1C. Cybersecurity

Risk Management and Strategy

Our corporate information technology, communication networks, enterprise applications, accounting and financial reporting platforms, and related systems, and those that we offer to our customers are necessary for the operation of our business. We use these systems, among others, to manage our customer and vendor relationships, for internal communications, for accounting to operate record-keeping functions, and for many other key aspects of our business. Our business operations rely on the secure collection, storage, transmission, and other processing of proprietary, confidential, and sensitive data.

We have implemented and maintain various information security processes designed to identify, assess and manage material risks from cybersecurity threats to our critical computer networks, third-party hosted services, communications systems, hardware and software, and our critical data, including intellectual property, confidential information that is proprietary, strategic or competitive in nature, and tenant data (“Information Systems and Data”).

We rely on a multidisciplinary team, including our information security function, legal department, management, and third-party service providers, as described further below, to identify, assess, and manage cybersecurity threats and risks. We identify and assess risks from cybersecurity threats by monitoring and evaluating our threat environment and our risk profile using various methods including, for example, using manual and automated tools, subscribing to reports and services that identify cybersecurity threats, analyzing reports of threats and threat actors, conducting scans of the threat environment, evaluating our industry’s risk profile, utilizing internal and external audits, and conducting threat and vulnerability assessments.

Depending on the environment, we implement and maintain various technical, physical, and organizational measures, processes, standards, and/or policies designed to manage and mitigate material risks from cybersecurity threats to our Information Systems and Data, including risk assessments, incident detection and response, vulnerability management, disaster recovery and business continuity plans, internal controls within our accounting and financial reporting functions, encryption of data, network security controls, access controls, physical security, asset management, systems monitoring, vendor risk management program, employee training, and penetration testing.

We work with third parties from time to time that assist us to identify, assess, and manage cybersecurity risks, including professional services firms, consulting firms, threat intelligence service providers, and penetration testing firms.

To operate our business, we utilize certain third-party service providers to perform a variety of functions. We seek to engage reliable, reputable service providers that maintain cybersecurity programs. Depending on the nature of the services provided, the sensitivity and quantity of information processed, and the identity of the service provider, our vendor management process may include reviewing the cybersecurity practices of such provider, contractually imposing obligations on the provider, conducting security assessments, and conducting periodic reassessments during their engagement.

13

We are not aware of any risks from cybersecurity threats, including as a result of any cybersecurity incidents, which have materially affected or are reasonably likely to materially affect our Company, including our business strategy, results of operations, or financial condition.

Governance

Our full Board oversees the Company’s enterprise risk management process, including the management of risks arising from cybersecurity threats. The Board receives regular presentations and reports from management who are responsible for managing and assessing cybersecurity risks, which address a wide range of topics including recent developments, evolving standards, vulnerability assessments, third-party and independent reviews, the threat environment, technological trends and information security considerations. The Board also receives prompt and timely information regarding any cybersecurity incident that meets established reporting thresholds, as well as ongoing updates regarding any such incident until it has been addressed.

Management plays a crucial role in assessing and managing material risks from cybersecurity threats.  At the management level, the Company’s cybersecurity risk management and strategy is led by its Director of IT, who reports to the CFO. The qualifications of the Director of IT include over 25 years of IT management, cybersecurity, and information governance experience. The Director of IT is regularly informed about the latest developments in cybersecurity, including emerging threats and technologies to adapt security measures accordingly. This ongoing knowledge acquisition is crucial for the effective prevention, detection, mitigation, and remediation of cybersecurity incidents.  Management’s role includes:

Risk Assessment: Management conducts annual cybersecurity risk assessments to identify and evaluate potential threats and vulnerabilities. Management considers the likelihood and potential impact of various cybersecurity risks, considering the Company’s assets, systems, and operations, to prioritize mitigation efforts.
Cybersecurity Policies and Procedures: Management reviews and approves the Company’s cybersecurity policies and procedures and communicates these policies and procedures to all employees to ensure adherence to established security protocols.
Compliance with Regulations: Management implements and maintains compliance with relevant cybersecurity regulations and standards applicable to the Company.
Budgeting and Resource Allocation: Management reviews budgets for cybersecurity initiatives and ensures that adequate resources are allocated to address cybersecurity risks and that investments in cybersecurity align with the Company’s risk tolerance and strategic objectives.

The Director of IT is promptly informed of potential cybersecurity risks, threats, and vulnerabilities by the Company’s IT Helpdesk.  Once an incident has been identified, the Director of IT and the IT network security team assess the criticality and impact of the incident on the Company’s business operations. The Director of IT then formulates and oversees a response to contain, eradicate and resolve incidents in accordance with the Company’s incident response plan. Management is responsible for reporting incidents to the appropriate authorities as necessary and engaging the senior leadership on all material incidents.

Item 2. Properties

The Company’s headquarters are located in a multi-tenant building in Woodcliff Lake, New Jersey, which houses the Company’s executive officers, its accounting and administrative staff, and its information technology staff and equipment. The Company’s key reclamation, processing and cylinder refurbishment facilities are located in Champaign, Illinois, Smyrna, Georgia and Ontario, California. The Company also sells industrial gases out of facilities located in Escondido, California and in Champaign, Illinois. The Company maintains smaller reclamation and cylinder refurbishing facilities in Ontario, California. The Company also maintains four smaller service depots for the performance of its RefrigerantSide® Services and maintains three sales and telemarketing offices.

14

Hudson’s key operational facilities are as follows:

Location

    

Owned or Leased

    

Description

Woodcliff Lake, New Jersey

Leased

Company headquarters and administrative offices

Champaign, Illinois

Owned

Reclamation and separation of refrigerants and cylinder refurbishment

Champaign, Illinois

Leased

Refrigerant packaging, cylinder refurbishment, RefrigerantSide® Service depot, refrigerant and industrial gases storage

Smyrna, Georgia

Leased

Reclamation and separation of refrigerants and cylinder refurbishment center

Smyrna, Georgia

Owned

Refrigerant storage

Escondido, California

Leased

Refrigerant and Industrial gas storage and cylinder refurbishment center

Ontario, California

Leased

Refrigerant reclamation and cylinder refurbishment center

Item 3. Legal Proceedings

None.

Item 4. Mine Safety Disclosures

Not Applicable.

Part II

Item 5. Market for Registrant’s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities

The Company’s common stock trades on the NASDAQ Capital Market under the symbol “HDSN”.

The number of record holders of the Company’s common stock was approximately 87 as of March 8, 2024. The Company believes that there are approximately 4,000 beneficial owners of its common stock.

To date, the Company has not declared or paid any cash dividends on its common stock. The payment of dividends, if any, in the future is within the discretion of the Board of Directors and will depend upon the Company’s earnings, its capital requirements and financial condition, borrowing covenants, and other relevant factors. The Company presently intends to retain all earnings, if any, to finance the Company’s operations and development of its business and does not expect to declare or pay any cash dividends on its common stock in the foreseeable future. In addition, the Company has a credit facility with Wells Fargo Bank, National Association among other things, restricts the Company’s ability to declare or pay any cash dividends on its capital stock.

Stock Price Performance Graph

The following graph illustrates a comparison of the total cumulative five-year stockholder return of a $100 investment in our common stock on December 31, 2018, to two indices: the NASDAQ Composite Index and the Nasdaq Industrial Index. The stockholder return shown in the graph below is not necessarily indicative of future performance, and we do not make or endorse any predictions as to future stockholder returns.

15

Graphic

The above Stock Price Performance Graph and related information shall not be deemed “soliciting material” or to be “filed” with the Securities and Exchange Commission, nor shall such information be incorporated by reference into any future filing under the Securities Act of 1933 or Securities Exchange Act of 1934, each as amended, except to the extent that we specifically incorporate it by reference into such filing.

Item 6. [Reserved]

Not applicable.

16

Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations

Certain statements, contained in this section and elsewhere in this Form 10-K, constitute “forward-looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995. Such forward-looking statements involve a number of known and unknown risks, uncertainties and other factors which may cause the actual results, performance or achievements of the Company to be materially different from any future results, performance or achievements expressed or implied by such forward-looking statements. Such factors include, but are not limited to, changes in the laws and regulations affecting the industry, changes in the demand and price for refrigerants (including unfavorable market conditions adversely affecting the demand for, and the price of refrigerants), the Company’s ability to source refrigerants, regulatory and economic factors, seasonality, competition, litigation, the nature of supplier or customer arrangements that become available to the Company in the future, adverse weather conditions, possible technological obsolescence of existing products and services, possible reduction in the carrying value of long-lived assets, estimates of the useful life of its assets, potential environmental liability, customer concentration, the ability to obtain financing, the ability to meet financial covenants under our financing facility, any delays or interruptions in bringing products and services to market, the timely availability of any requisite permits and authorizations from governmental entities and third parties as well as factors relating to doing business outside the United States, including changes in the laws, regulations, policies, and political, financial and economic conditions, including inflation, interest and currency exchange rates, of countries in which the Company may seek to conduct business, the Company’s ability to successfully integrate any assets it acquires from third parties into its operations, and other risks detailed in this report, and in the Company’s other subsequent filings with the Securities and Exchange Commission (“SEC”). The words “believe”, “expect”, “anticipate”, “may”, “plan”, “should” and similar expressions identify forward-looking statements. Readers are cautioned not to place undue reliance on these forward-looking statements, which speak only as of the date the statement was made.

Critical Accounting Estimates

The Company’s discussion and analysis of its financial condition and results of operations are based upon its consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States. The preparation of these consolidated financial statements requires the Company to make estimates and judgments that affect the reported amounts of assets, liabilities, revenues and expenses and related disclosure of contingent assets and liabilities. Several of the Company’s accounting policies involve significant judgments, uncertainties and estimates. The Company bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities. Actual results may differ from these estimates under different assumptions or conditions. To the extent that actual results differ from management’s judgments and estimates, there could be a material adverse effect on the Company. On a continuous basis, the Company evaluates its estimates, including, but not limited to, those estimates related to its inventory reserves, goodwill and intangible assets.

Inventory

For inventory, the Company evaluates both current and anticipated sales prices of its products to determine if a write down of inventory to net realizable value is necessary. Net realizable value represents the estimated selling price in the ordinary course of business, less reasonably predictable costs of completion and disposal. The determination if a write-down to net realizable value is necessary is primarily affected by the market prices for the refrigerant gases we sell. Commodity prices generally are affected by a wide range of factors beyond our control, including weather, seasonality, the availability and adequacy of supply, government regulation and policies and general political and economic conditions. At any time, our inventory levels may be substantial and fluctuate, which will materially impact our estimates of net realizable value.

Goodwill

The Company has made acquisitions that included a significant amount of goodwill and other intangible assets. The Company applies the purchase method of accounting for acquisitions, which among other things, requires the recognition of goodwill (which represents the excess of the purchase price of the acquisition over the fair value of the net assets acquired and identified intangible assets). We test our goodwill for impairment on an annual basis (the first day of the fourth quarter) and between annual tests if an event occurs or circumstances change that would more likely than not reduce the fair value of an asset below its carrying value. Other intangible assets that meet certain criteria are amortized over their estimated useful lives.

17

An impairment charge is recorded based on the excess of a reporting unit’s carrying amount over its fair value. An impairment charge would be recognized when the carrying amount exceeds the estimated fair value of a reporting unit. These impairment evaluations use many assumptions and estimates in determining an impairment loss, including certain assumptions and estimates related to future earnings. If the Company does not achieve its earnings objectives, the assumptions and estimates underlying these impairment evaluations could be adversely affected, which could result in an asset impairment charge that would negatively impact operating results.

There were no goodwill impairment losses recognized in any of the three years ended December 31, 2023, 2022 and 2021.

Overview

The Company is a leading provider of sustainable refrigerant products and services to the Heating Ventilation Air Conditioning and Refrigeration (“HVACR”) industry. For nearly three decades, we have demonstrated our commitment to our customers and the environment by becoming one of the United States’ largest refrigerant reclaimers through multimillion dollar investments in the plants and advanced separation technology required to recover a wide variety of refrigerants and restoring them to Air-Conditioning, Heating, and Refrigeration Institute (“AHRI”) standard for reuse as certified EMERALD Refrigerants™.

The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems, and include refrigerant and industrial gas sales, refrigerant management services consisting primarily of reclamation of refrigerants and RefrigerantSide® Services performed at a customer’s site, consisting of system decontamination to remove moisture, oils and other contaminants.

Sales of refrigerants continue to represent a significant majority of the Company’s revenues.

The Company also sells industrial gases to a variety of industry customers, predominantly to users in, or involved with, the US Military. In July 2016, the Company was awarded, as prime contractor, a five-year fixed price contract, including a five-year renewal option which has been exercised, awarded to it by the United States Defense Logistics Agency (“DLA”) for the management and supply of refrigerants, compressed gases, cylinders and related items to US Military commands and installations, Federal civilian agencies and foreign militaries. Primary users include the US Army, Navy, Air Force, Marine Corps and Coast Guard. Our contract with DLA expires in July 2026.

Results of Operations

Year ended December 31, 2023 as compared to the year ended December 31, 2022

Revenues for the year ended December 31, 2023 were $289.0 million, a decrease of $36.2 million or 11% from the $325.2 million reported during the comparable 2022 period. The decrease was mainly attributable to lower selling prices of certain refrigerants sold, partially offset by increase in revenues from our DLA and carbon credit programs.

Cost of sales for the year ended December 31, 2023 was $177.5 million or 61% of sales. Cost of sales for the year ended December 31, 2022 was $162.3 million or 50% of sales. The increase in the cost of sales percentage from 61% to 50% is primarily due to the lower selling prices of certain refrigerants sold, as described above.

Selling, general and administrative (“SG&A”) expenses for the year ended December 31, 2023 were $30.5 million, an increase of $1.9 million from the $28.6 million reported during the comparable 2022 period. The increase in SG&A was primarily due to an increased number of employees and stock compensation.

Amortization expense was $2.8 million during 2023 and 2022, respectively.

Other expense for 2023 was $8.4 million, compared to the $14.3 million of other expense reported during the comparable 2022 period. During the third quarter of 2023, the Company repaid in full the remaining $32.5 million principal balance outstanding under its Term Loan Facility. In conjunction with this payoff, the Company recorded a non-cash write off of $3.4 million of deferred financing costs. Similarly, during the first quarter of 2022, the Company recorded a non-cash write off of $4.7 million of deferred financing cost. Excluding these write offs, total interest expense for the year 2023 decreased by $4.7 million from the comparable 2022 period.

18

Income tax expense for 2023 was $17.6 million compared to income tax expense of $13.4 million for 2022. The key drivers of increased income tax expense are the reversal of valuation allowance during 2022 for federal NOLs that were fully utilized and can no longer reduce taxable income. Income tax expense for federal and state income tax purposes was determined by applying statutory income tax rates to pre-tax income after adjusting for certain items.

The net income for the year ended December 31, 2023 was $52.2 million, a decrease of $51.6 million from the $103.8 million of net income reported during the comparable 2022 period, primarily due to lower revenues, higher cost of sales and a higher tax rate, as described above.

Year ended December 31, 2022 as compared to the year ended December 31, 2021

Management’s discussion and analysis of the year ended December 31, 2022 as compared to the year ended December 31, 2021 is contained in the Company’s Annual Report on Form 10-K filed with the Securities and Exchange Commission on March 14, 2023.

Liquidity and Capital Resources

At December 31, 2023, the Company had working capital, which represents current assets less current liabilities, of $146.4 million, an increase of $22.2 million from the working capital of $124.2 million at December 31, 2022. The increase in working capital is primarily attributable to continued profitability and the timing of borrowings, accounts receivable and inventory.

Inventory and trade receivables are principal components of current assets. At December 31, 2023, the Company had inventory of $154.5 million, an increase of $9.1 million from $145.4 million at December 31, 2022. The Company’s ability to sell and replace its inventory on a timely basis and the prices at which it can be sold are subject, among other things, to current market conditions and the nature of supplier or customer arrangements and the Company’s ability to source CFC and HCFC based refrigerants (which are no longer being produced) and HFC refrigerants (virgin production currently in the process of being phased down) and HFO refrigerants.

At December 31, 2023, the Company had trade receivables, net of credit losses, of $25.2 million, an increase of $4.3 million from $20.9 million at December 31, 2022, mainly due to timing. The Company typically generates its most significant revenue during the second and third quarters of any given year. The Company’s trade receivables are concentrated with various wholesalers, brokers, contractors and end-users within the refrigeration industry that are primarily located in the continental United States. The Company has historically financed its working capital requirements through cash flows from operations, debt, and the issuance of equity securities.

Net cash provided by operating activities for the year ended December 31, 2023 was $58.5 million, when compared to the net cash provided by operating activities of $62.8 million for the comparable 2022 period. As discussed above, selling prices of certain refrigerants declined in 2023. Another contributory factor was the timing of accounts receivable and inventory balances.

Net cash used in investing activities for 2023 was $3.6 million when compared to the net cash used in investing activities of $3.7 million for the comparable 2022 period.

Net cash used in financing activities for 2023 was $47.8 million, compared with net cash used in financing activities of $57.4 million for 2022. The Company refinanced its term loan debt during the first quarter of 2022, as described below, and paid off its remaining $32.5 million term loan debt during the third quarter of 2023.

At December 31, 2023, cash and cash equivalents were $12.4 million, or approximately $7.1 million higher than the $5.3 million of cash and cash equivalents at December 31, 2022.

Revolving Credit Facility

On March 2, 2022, Hudson Technologies Company (“HTC”) and Hudson Holdings, Inc. (“Holdings”), as borrowers (collectively, the “Borrowers”), and Hudson Technologies, Inc. (the “Company”) as a guarantor, entered into an Amended and Restated Credit Agreement (the “Amended Wells Fargo Facility”) with Wells Fargo Bank, National Association, as administrative agent and lender (“Agent” or “Wells Fargo”) and such other lenders as have or may thereafter become a party to the Amended Wells Fargo Facility. The Amended Wells Fargo facility amended and restated the prior Wells Fargo Facility entered into on December 19, 2019.

19

Under the terms of the Amended Wells Fargo Facility, the Borrowers: (i) immediately borrowed $15 million in the form of a “first in last out” term loan (the “FILO Tranche”) and (ii) may borrow from time to time, up to $75 million at any time consisting of revolving loans (the “Revolving Loans”) in a maximum amount up to the lesser of $75 million and a borrowing base that is calculated based on the outstanding amount of the Borrowers’ eligible receivables and eligible inventory, as described in the Amended Wells Fargo Facility. The Amended Wells Fargo Facility also contains a sublimit of $9 million for swing line loans and $2 million for letters of credit. The Company currently has a $0.9 million letter of credit outstanding. The FILO Tranche was repaid in full in July 2023 and may not be reborrowed.

Amounts borrowed under the Amended Wells Fargo Facility may be used for working capital needs, certain permitted acquisitions, and to reimburse drawings under letters of credit.

Interest under the Amended Wells Fargo Facility is payable in arrears on the first day of each month. Interest charges with respect to Revolving Loans are computed on the actual principal amount of Revolving Loans outstanding at a rate per annum equal to (A) with respect to Base Rate loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) between 1.25% and 1.75% depending on average monthly undrawn availability and (B) with respect to SOFR loans, the sum of the applicable SOFR rate plus between 2.36% and 2.86% depending on average quarterly undrawn availability. Interest charges with respect to the FILO Tranche were computed on the actual principal amount of FILO Tranche loans outstanding at a rate per annum equal to (A) with respect to Base Rate FILO Tranche loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) 6.5% and (B) with respect to SOFR FILO Tranche loans, the sum of the applicable SOFR rate plus 7.50%. The Amended Wells Fargo Facility also includes a monthly unused line fee ranging from 0.35% to 0.75% per annum determined based upon the level of average Revolving Loans outstanding during the immediately preceding month measured against the total Revolving Loans that may be borrowed under the Amended Wells Fargo Facility.

In connection with the closing of the Amended Wells Fargo Facility, the Company also entered into a First Amendment to Guaranty and Security Agreement, dated as of March 2, 2022 (the “Amended Revolver Guaranty and Security Agreement”), pursuant to which the Company and certain subsidiaries are continuing to unconditionally guarantee the payment and performance of all obligations owing by Borrowers to Wells Fargo, as Agent for the benefit of the revolving lenders. Pursuant to the Amended Revolver Guaranty and Security Agreement, Borrowers, the Company and certain other subsidiaries are continuing to grant to the Agent, for the benefit of the Wells Fargo Facility lenders, a security interest in substantially all of their respective assets, including receivables, equipment, general intangibles (including intellectual property), inventory, subsidiary stock, real property, and certain other assets.

The Amended Wells Fargo Facility contains a financial covenant requiring the Company to maintain at all times minimum liquidity (defined as availability under the Amended Wells Fargo Facility plus unrestricted cash) of at least $5 million, of which at least $3 million must be derived from availability. The Amended Wells Fargo Facility also contains a springing covenant, which takes effect only upon a failure to maintain undrawn availability of at least $11.25 million or upon an election by the Borrowers to increase the inventory component of the borrowing base, requiring the Company to maintain a Fixed Charge Coverage Ratio (FCCR) of not less than 1.00 to 1.00, as of the end of each trailing period of twelve consecutive months commencing with the month prior to the triggering of the covenant. The FCCR (as defined in the Wells Fargo Facility) is the ratio of (a) EBITDA for such period, minus unfinanced capital expenditures made during such period, to (b) the aggregate amount of (i) interest expense required to be paid (other than interest paid-in-kind, amortization of financing fees, and other non-cash interest expense) during such period, (ii) scheduled principal payments (but excluding principal payments relating to outstanding Revolving Loans under the Amended Wells Fargo Facility), (iii) all net federal, state, and local income taxes required to be paid during such period (provided, that any tax refunds received shall be applied to the period in which the cash outlay for such taxes was made), (iv) all restricted payments paid (as defined in the Amended Wells Fargo Facility) during such period, and (v) to the extent not otherwise deducted from EBITDA for such period, all payments required to be made during such period in respect of any funding deficiency or funding shortfall with respect to any pension plan. The FCCR covenant ceases after the Borrowers have been in compliance therewith for two consecutive months.

The Amended Wells Fargo Facility also contains customary non-financial covenants relating to the Company and the Borrowers, including limitations on the Borrowers’ ability to pay dividends on common stock or preferred stock, and also includes certain events of default, including payment defaults, breaches of representations and warranties, covenant defaults, cross-defaults to other obligations, events of bankruptcy and insolvency, certain ERISA events, judgments in excess of specified amounts, impairments to guarantees and a change of control.

20

The Company evaluated the Amended Wells Fargo Facility in accordance with the provisions of ASC 470-50 to determine if the amendment was a modification or an extinguishment of debt and concluded that the amendment was a modification of the original revolving credit facility for accounting purposes. As a result, the Company capitalized an additional $0.9 million of deferred financing costs in connection with the amendment, which, along with the $0.2 million of remaining deferred financing costs of the original revolving facility, is being amortized over the five year term of the Amended Wells Fargo Facility.

The commitments under the Amended Wells Fargo Facility will expire and the full outstanding principal amount of the loans, together with accrued and unpaid interest, are due and payable in full on March 2, 2027, unless the commitments are terminated and the outstanding principal amount of the loans are accelerated sooner following an event of default or in the event of certain other cross-defaults.

Termination of 2022 Term Loan Facility

On March 2, 2022, Hudson Technologies Company (“HTC”), an indirect subsidiary of Hudson Technologies, Inc. (the “Company”), and the Company’s subsidiary Hudson Holdings, Inc., as borrowers (collectively, the “Borrowers”), and the Company, as guarantor, became obligated under a Credit Agreement (the “Term Loan Facility”) with TCW Asset Management Company LLC, as administrative agent (“Term Loan Agent”) and the lender parties thereto (the “Term Loan Lenders”).

Under the terms of the Term Loan Facility, the Borrowers immediately borrowed $85 million pursuant to a term loan (the “Term Loan”), which had a maturity date in March 2027. Amounts borrowed under the Term Loan Facility were used by the Borrowers to repay the outstanding principal amount and related fees and expenses under the Prior Term Loan Facility (as defined below) and for other corporate purposes. The Company paid approximately $4.3 million of term loan deferred financing costs.

During the third quarter of 2023, the Company repaid in full the remaining principal balance outstanding under the Term Loan Facility and the FILO Tranche.

Termination of Prior Term Loan Facility

In conjunction with entry into the new Term Loan Facility as described above, on March 2, 2022 the Company’s then-existing term loans, as amended (the “Prior Term Loan Facility”), which had a principal balance of approximately $63.9 million after payment of a $16.0 million excess cash flow amount thereunder, were repaid in full, together with associated required lender fees and expenses of $3.3 million, and the Prior Term Loan Facility was terminated. The termination of the Prior Term Loan Facility constituted an extinguishment of debt, which resulted in the Company recording an additional $4.6 million of interest expense during the first quarter of 2022, which included the aforementioned $3.3 million of prior lender fees and expenses and $1.3 million of pre-existing deferred financing costs from the Prior Term Loan Facility.

The Company was in compliance with all covenants under the Amended Wells Fargo Facility as of December 31, 2023.

The Company’s ability to comply with these covenants in future quarters may be affected by events beyond the Company’s control, including general economic conditions, weather conditions, regulations and refrigerant pricing. Therefore, we cannot make any assurance that we will continue to be in compliance during future periods.

The Company believes that it will be able to satisfy its working capital requirements for the foreseeable future from anticipated cash flows from operations and available funds under the Amended Wells Fargo Facility. Any unanticipated expenses, including, but not limited to, an increase in the cost of refrigerants purchased by the Company, an increase in operating expenses or failure to achieve expected revenues from the Company’s RefrigerantSide® Services and/or refrigerant sales or additional expansion or acquisition costs that may arise in the future would adversely affect the Company’s future capital needs. There can be no assurance that the Company’s proposed or future plans will be successful, and as such, the Company may require additional capital sooner than anticipated, which capital may not be available on acceptable terms, or at all.

21

CARES Act Loan

On April 23, 2020 the Company received a loan in the amount of $2.475 million from Meridian Bank under the Paycheck Protection Program (“PPP”) pursuant to the CARES Act. The loan had a term of two years, was unsecured, and bore interest at a fixed rate of one percent per annum, with the first nine months of principal and interest deferred. As a result of the COVID-19 pandemic, in applying for the loan the Company made a good faith assertion based upon the degree of uncertainty introduced to the capital markets and the industries affecting the Company’s customers and the Company’s dependency to curtail expenses to fund ongoing operations. The PPP loan proceeds were used in part to help offset payroll costs as stipulated in the legislation. All or a portion of the PPP loan could be forgiven by the U.S. Small Business Administration (“SBA”) upon application by the Company and upon documentation of expenditures in accordance with the SBA requirements. Under the CARES Act, loan forgiveness is available for the sum of documented payroll costs and other covered areas, such as rent payments, mortgage interest and utilities, as applicable. During the third quarter of 2021, the Company received forgiveness of the loan from the SBA, resulting in $2.475 million of Other income recorded in the Company’s Consolidated Income Statements.

Inflation

Inflation, historically or the recent increase, has not had a material impact on the Company’s operations.

Reliance on Suppliers and Customers

The Company participates in an industry that is highly regulated, and changes in the regulations affecting our business could affect our operating results. Currently the Company purchases virgin HCFC and HFC refrigerants and reclaimable, primarily HCFC and CFC, refrigerants from suppliers and its customers. Under the Clean Air Act the phase-down of future production of certain virgin HCFC refrigerants commenced in 2010 and has been fully phased out by the year 2020, and production of all virgin HCFC refrigerants is scheduled to be phased out by the year 2030. To the extent that the Company is unable to source sufficient quantities of refrigerants or is unable to obtain refrigerants on commercially reasonable terms or experiences a decline in demand and/or price for refrigerants sold by it, the Company could realize reductions in revenue from refrigerant sales, which could have a material adverse effect on the Company’s operating results and financial position.

For the year ended December 31, 2023, there was one customer accounting for greater than 10% of the Company’s revenues and  one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2023. For the year ended December 31, 2022, there was no customer accounted for 10% of the Company’s revenues but one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2022. For the year ended December 31, 2021, one customer accounted for 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2021.

The loss of a principal customer or a decline in the economic prospects of and/or a reduction in purchases of the Company’s products or services by any such customer could have a material adverse effect on the Company’s operating results and financial position.

Seasonality and Weather Conditions and Fluctuations in Operating Results

The Company’s operating results vary from period to period as a result of weather conditions, requirements of potential customers, non-recurring refrigerant and service sales, availability and price of refrigerant products (virgin or reclaimable), changes in reclamation technology and regulations, timing in introduction and/or retrofit or replacement of refrigeration equipment, the rate of expansion of the Company’s operations, and by other factors. The Company’s business is seasonal in nature with peak sales of refrigerants occurring in the first nine months of each year. During past years, the seasonal decrease in sales of refrigerants has resulted in losses particularly in the fourth quarter of the year. In addition, to the extent that there is unseasonably cool weather throughout the spring and summer months, which would adversely affect the demand for refrigerants, there would be a corresponding negative impact on the Company. Delays or inability in securing adequate supplies of refrigerants at peak demand periods, lack of refrigerant demand, increased expenses, declining refrigerant prices and a loss of a principal customer could result in significant losses. There can be no assurance that the foregoing factors will not occur and result in a material adverse effect on the Company’s financial position and significant losses. The Company believes that to a lesser extent there is a similar seasonal element to RefrigerantSide® Service revenues as refrigerant sales.

22

Recent Accounting Pronouncements

See recent accounting pronouncements set forth in Note 1 of the financial statements contained in this report and commitments and contingencies noted in Note 11 thereof.

Item 7A. Quantitative and Qualitative Disclosures about Market Risk

Interest Rate Sensitivity

We are exposed to market risk from fluctuations in interest rates on the Amended Wells Fargo Facility. The Amended Wells Fargo Facility is a $75 million secured facility with a $0.0 million outstanding balance as of December 31, 2023. Future interest rate changes on our borrowing under the Amended Wells Fargo Facility may have an impact on our consolidated results of operations.

Refrigerant Market

We are also exposed to market risk from fluctuations in the demand, price and availability of refrigerants. To the extent that the Company is unable to source sufficient quantities of refrigerants or is unable to obtain refrigerants on commercially reasonable terms, or experiences a decline in demand and/or price for refrigerants sold by the Company, the Company could realize reductions in revenue from refrigerant sales or write downs of inventory, which could have a material adverse effect on our consolidated results of operations.

Item 8. Financial Statements and Supplementary Data

The financial statements appear in a separate section of this report following Part IV.

Item 9. Changes in and Disagreements with Accountants on Accounting and Financial Disclosure

Not Applicable.

Item 9A. Controls and Procedures

Disclosure Controls and Procedures

The Company, under the supervision and with the participation of the Company’s management, including the Company’s Chief Executive Officer and Chief Financial Officer, has evaluated the effectiveness of the Company’s disclosure controls and procedures, as defined in Rule 13a-15(e) of the Securities Exchange Act of 1934, as amended (“Exchange Act”), as of the end of the period covered by this report. Based on that evaluation, the Chief Executive Officer and the Chief Financial Officer have concluded that the Company’s disclosure controls and procedures were effective and provided reasonable assurance that information required to be disclosed in reports filed under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the rules and forms of the Securities and Exchange Commission, and that such information is accumulated and communicated to the Company’s management, including its principal executive officer and principal financial officer, as appropriate, to allow timely decisions regarding required disclosure. Because of the inherent limitations in all control systems, any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives, and management necessarily is required to apply its judgment in evaluating the cost-benefit relationship of possible controls and procedures. Furthermore, the Company’s controls and procedures can be circumvented by the individual acts of some persons, by collusion of two or more people or by management override of the control and misstatements due to error or fraud may occur and not be detected on a timely basis.

Changes in Internal Control over Financial Reporting

As required by Rule 13a-15(d) of the Exchange Act, our management, including our principal executive officer and our principal financial officer, conducted an evaluation of the internal control over financial reporting to determine whether any changes occurred during the quarter ended December 31, 2023 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting. Based on that evaluation, our principal executive officer and principal financial officer concluded there were no such changes.

23

Management’s Report on Internal Control over Financial Reporting

Management of the Company is responsible for establishing and maintaining adequate internal control over financial reporting for the Company as defined in Rule 13a-15(f) under the Exchange Act. The Company’s internal control over financial reporting is designed to provide reasonable assurance to the Company’s management and board of directors regarding the preparation and fair presentation of published financial statements and the reliability of financial reporting.

Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Therefore, even those systems determined to be effective can provide only reasonable assurance with respect to financial statement preparation and presentation.

The Company’s Chief Executive Officer and Chief Financial Officer have assessed the effectiveness of the Company’s internal control over financial reporting as of December 31, 2023. In making this assessment, the Company’s Chief Executive Officer and Chief Financial Officer have used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (“COSO”) in Internal Control – Integrated Framework (2013). Based on our assessment, the Company’s Chief Executive Officer and Chief Financial Officer believe that, as of December 31, 2023, the Company’s internal control over financial reporting is effective based on those criteria.

BDO USA, P.C., the independent registered public accounting firm which audits our financial statements, has provided an attestation report on our internal control over financial reporting as of December 31, 2023.

24

Report of Independent Registered Public Accounting Firm

Shareholders and Board of Directors

Hudson Technologies, Inc.

Woodcliff Lake, New Jersey

Opinion on Internal Control over Financial Reporting

We have audited Hudson Technologies, Inc.’s (the “Company’s”) internal control over financial reporting as of December 31, 2023 based on criteria established in Internal Control – Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (the “COSO criteria”). In our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of December 31, 2023, based on the COSO criteria.

We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (“PCAOB”), the consolidated balance sheets of the Company as of December 31, 2023 and 2022, the related consolidated statements of income, stockholders’ equity, and cash flows for each of the three years in the period ended December 31, 2023, and the related notes and our report dated March 14, 2024 expressed an unqualified opinion.

Basis for Opinion

The Company’s management is responsible for maintaining effective internal control over financial reporting and for its assessment of the effectiveness of internal control over financial reporting, included in the accompanying Item 9A, Management’s Report on Internal Control over Financial Reporting. Our responsibility is to express an opinion on the Company’s internal control over financial reporting based on our audit. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.

We conducted our audit of internal control over financial reporting in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether effective internal control over financial reporting was maintained in all material respects. Our audit included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, and testing and evaluating the design and operating effectiveness of internal control based on the assessed risk. Our audit also included performing such other procedures as we considered necessary in the circumstances. We believe that our audit provides a reasonable basis for our opinion.

Definition and Limitations of Internal Control over Financial Reporting

A company’s internal control over financial reporting is a process designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles. A company’s internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (2) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the company; and (3) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company’s assets that could have a material effect on the financial statements.

Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.

/s/ BDO USA, P.C.

Stamford, Connecticut

March 14, 2024

25

Item 9B. Other Information

None.

Item 9C. Disclosure Regarding Foreign Jurisdictions that Prevent Inspections

Not applicable.

Part III

Item 10. Directors, Executive Officers and Corporate Governance

Reference is made to the disclosure required by Items 401, 405, 406, and 407(c)(3), (d)(4), (d)(5) and 408(b) of Regulation S-K to be contained in the Registrant’s definitive proxy statement to be mailed to stockholders on or about April 26, 2024, and to be filed with the Securities and Exchange Commission.

Item 11. Executive Compensation

Reference is made to the disclosure required by Items 402 and 407(e)(4) and (e)(5) of Regulation S-K to be contained in the Registrant’s definitive proxy statement to be mailed to stockholders on or about April 26, 2024, and to be filed with the Securities and Exchange Commission.

Item 12. Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters

Reference is made to the disclosure required by Item 403 of Regulation S-K to be contained in the Registrant’s definitive proxy statement to be mailed to stockholders on or about April 26, 2024, and to be filed with the Securities Exchange Commission.

Equity Compensation Plans

The following table provides certain information with respect to all of Hudson’s equity compensation plans as of December 31, 2023.

    

    

    

Number of

securities

remaining

available for

future

issuance

under equity

Number of

compensation

securities to

Weighted-

plans

be

average

(excluding

issued upon

exercise

securities

exercise of

price of

reflected

outstanding

outstanding

in column

options and stock appreciation rights

options

(a))

Plan Category

(a)

(b)

(c)

Equity compensation plans approved by security holders

2,647,435

$

3.31

4,341,463

Item 13. Certain Relationships and Related Transactions, and Director Independence

Reference is made to the disclosure required by Items 404 and 407(a) of Regulation S-K to be contained in the Registrant’s definitive proxy statement to be mailed to stockholders on or about April 26, 2024, and to be filed with the Securities and Exchange Commission.

Item 14. Principal Accountant Fees and Services

Reference is made to the proposal regarding the approval of the Registrant’s independent registered public accounting firm to be contained in the Registrant’s definitive proxy statement to be mailed to stockholders on or about April 26, 2024, and to be filed with the Securities and Exchange Commission.

26

Part IV

Item 15.

    

Exhibits and Financial Statement Schedules

(A)(1)

Financial Statements

The consolidated financial statements of Hudson Technologies, Inc. appear after Item 16 of this report

(A)(2)

Financial Statement Schedules

None

(A)(3)

Exhibits

3.1

Certificate of Incorporation and Amendment. (1)

3.2

Amendment to Certificate of Incorporation, dated July 20, 1994. (1)

3.3

Amendment to Certificate of Incorporation, dated October 26, 1994. (1)

3.4

Certificate of Amendment of the Certificate of Incorporation dated March 16, 1999. (2)

3.5

Certificate of Correction of the Certificate of Amendment dated March 25, 1999. (2)

3.6

Certificate of Amendment of the Certificate of Incorporation dated March 29, 1999. (2)

3.7

Certificate of Amendment of the Certificate of Incorporation dated February 16, 2001. (3)

3.8

Certificate of Amendment of the Certificate of Incorporation dated March 20, 2002. (4)

3.9

Amendment to Certificate of Incorporation dated January 3, 2003. (5)

3.10

Amended and Restated By-Laws. (26)

3.11

Certificate of Amendment of the Certificate of Incorporation dated September 15, 2015. (14)

4.1

Description of Equity Securities. (24)

10.1

2004 Stock Incentive Plan. (7)*

10.2

Agreement with Brian F. Coleman, as amended. (9)*

10.3

2008 Stock Incentive Plan. (8)*

10.4

Form of Incentive Stock Option Agreement under the 2008 Stock Incentive Plan with full vesting upon issuance. (9)*

10.5

Form of Incentive Stock Option Agreement under the 2008 Stock Incentive Plan with options vesting in equal installments over two year period. (9)*

10.6

Form of Non-Incentive Stock Option Agreement under the 2008 Stock Incentive Plan with full vesting upon issuance. (9)*

10.7

Form of Non-Incentive Stock Option Agreement under the 2008 Stock Incentive Plan with options vesting in equal installments over two year period. (9)*

10.8

Long Term Care Insurance Plan Summary. (10)*

10.9

Amendment No. 1 to the Hudson Technologies, Inc. 2008 Stock Incentive Plan adopted October 22, 2013. (11) *

10.10

2014 Stock Incentive Plan (12)*

10.11

Form of Incentive Stock Option Agreement under the 2014 Stock Incentive Plan with full vesting upon issuance. (13)*

10.12

Form of Incentive Stock Option Agreement under the 2014 Stock Incentive Plan with options vesting in equal installments over two year period. (13)*

10.13

Form of Non-Incentive Stock Option Agreement under the 2014 Stock Incentive Plan with full vesting upon issuance. (13)*

10.14

Form of Non-Incentive Stock Option Agreement under the 2014 Stock Incentive Plan with options vesting in equal installments over two year period. (13)*

10.15

Form of Incentive Barrier Stock Option Agreement under the 2014 Stock Incentive Plan with full vesting upon issuance. (13)*

10.16

Form of Non-Incentive Barrier Stock Option Agreement under the 2014 Stock Incentive Plan with full vesting upon issuance. (13)*

10.17

Form of Incentive Barrier Stock Option Agreement under the 2008 Stock Incentive Plan with full vesting upon issuance. (13)*

10.18

Form of Non-Incentive Barrier Stock Option Agreement under the 2008 Stock Incentive Plan with full vesting upon issuance. (13)*

10.19

Amended and Restated Agreement with Brian Coleman (15)*

10.20

Agreement, dated September 5, 2016, between Hudson Technologies, Inc. and Nat Krishnamurti. (16)*

10.21

2018 Stock Incentive Plan (17)*

10.22

Form of Incentive Stock Option Agreement under the 2018 Stock Incentive Plan with full vesting upon issuance (18)*

10.23

Form of Incentive Stock Option Agreement under the 2018 Stock Incentive Plan with vesting in equal installments over a specified of time. (18)*

27

10.24

Form of Non-Qualified Stock Option Agreement under the 2018 Stock Incentive Plan with full vesting upon issuances (18)*

10.25

Form of Non-Qualified Stock Option Agreement under the 2018 Stock Incentive Plan with vesting in equal installments over a specified period of time. (18)*

10.26

Form of Non-Qualified Stock Option Agreement under the 2018 Stock Incentive Plan with conditional vesting provisions. (18)*

10.27

Second Amended and Restated Agreement dated as of September 20, 2019 between the Registrant and Brian F. Coleman (19)*

10.28

Amended and Restated Agreement dated as of September 20, 2019 between the Registrant and Nat Krishnamurti (19)*

10.29

Third Amended and Restated Agreement dated December 19, 2019 between the Registrant and Brian F. Coleman (20)*

10.30

Fourth Amended and Restated Agreement dated as of June 24, 2020 between the Registrant and Brian F. Coleman (21)*

10.31

Amended and Restated Agreement dated September 30, 2019 between the Company and Kathleen L. Houghton (22)*

10.32

Hudson Technologies, Inc. 2020 Stock Incentive Plan (23)*

10.33

Form of Incentive Stock Option Agreement under the 2020 Stock Incentive Plan with full vesting upon issuance (25)*

10.34

Form of Incentive Stock Option Agreement under the 2020 Stock Incentive Plan with vesting in equal installments over a specified period of time (25)*

10.35

Form of Non-Qualified Stock Option Agreement under the 2020 Stock Incentive Plan with full vesting upon issuance (25)*

10.36

Form of Non-Qualified Stock Option Agreement under the 2020 Stock Incentive Plan with vesting in equal installments over a specified period of time (25)*

10.37

Form of Non-Qualified Stock Option Agreement under the 2020 Stock Incentive Plan with conditional vesting provisions (25)*

10.38

Amended and Restated Credit Agreement dated March 2, 2022 by and among Wells Fargo Bank, National Association, as Agent, Hudson Technologies, Inc., and the Borrowers and Lenders party thereto (26)

10.39

First Amendment to Guaranty and Security Agreement dated March 2, 2022 by and among the Grantors named therein and Wells Fargo Bank, National Association, as Agent (26)

10.40

Form of Stock Appreciation Rights Award Agreement (27)

14

Code of Business Conduct and Ethics. (6)

21

Subsidiaries of the Company. (28)

23.1

Consent of BDO USA, P.C. (28)

31.1

Certification of Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002. (28)

31.2

Certification of Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002. (28)

32.1

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

32.2

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

97

Hudson Technologies, Inc. Clawback Policy (28)

101

Interactive data file pursuant to Rule 405 of Regulation S-T. (28)

(1)

Incorporated by reference to the comparable exhibit filed with the Company’s Registration Statement on Form SB-2 (No. 33-80279-NY).

(2)

Incorporated by reference to the comparable exhibit filed with the Company’s Quarterly Report on Form 10-QSB for the quarter ended June 30, 1999.

(3)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-KSB for the year ended December 31, 2000.

(4)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-KSB for the year ended December 31, 2001.

(5)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-KSB for the year ended December 31, 2002.

(6)

Incorporated by reference to the comparable exhibit filed with the Company’s Current Report on Form 8-K, for the event dated March 3, 2005, and filed May 31, 2005.

(7)

Incorporated by reference to Appendix B to the Company’s Definitive Proxy Statement on Schedule 14A filed August 18, 2004.

(8)

Incorporated by reference to Appendix I to the Company’s Definitive Proxy Statement on Schedule 14A filed July 29, 2008.

28

(9)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-K for the year ended December 31, 2008.

(10)

Incorporated by reference to the comparable exhibit filed with the Company’s Quarterly Report on Form 10-Q for the quarter ended September 30, 2012.

(11)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-K for the year ended December 31, 2013.

(12)

Incorporated by reference to Appendix B to the Company’s Definitive Proxy Statement on Schedule 14A filed August 12, 2014.

(13)

Incorporated by reference to the comparable exhibit filed with the Company’s Quarterly Report on Form 10-Q for the quarter ended September 30, 2014.

(14)

Incorporated by reference to the comparable exhibit filed with the Company’s Quarterly Report on Form 10-Q for the quarter ended September 30, 2015.

(15)

Incorporated by reference to the comparable exhibit filed with the Company Annual Report on form 10-K for the year ended December 31, 2015.

(16)

Incorporated by reference to the comparable exhibit filed with the Company’s Current Report on Form 8-K filed September 9, 2016.

(17)

Incorporated by reference to the comparable exhibit filed with the Company’s Registration Statement on Form S-8 filed December 21, 2018.

(18)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-K for the year ended December 31, 2018.

(19)

Incorporated by reference to the comparable exhibit filed with the Company’s Current Report on Form 8-K filed September 23, 2019.

(20)

Incorporated by reference to the comparable exhibit filed with the Company’s Current Report on Form 8-K filed December 20, 2019.

(21)

Incorporated by reference to the comparable exhibit filed with the Company’s Current Report on Form 8-K filed July 20, 2020.

(22)

Incorporated by reference to the comparable exhibit filed with the Company’s Current Report on Form 8-K filed September 16, 2020.

(23)

Incorporated by reference to the comparable exhibit filed with the Company’s Registration Statement on Form S-8 filed June 30, 2020.

(24)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-K filed March 13, 2020.

(25)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-K filed March 12, 2021.

(26)

Incorporated by reference to the comparable exhibit filed with the Company’s Current Report on Form 8-K filed March 3, 2022.

(27)

Incorporated by reference to the comparable exhibit filed with the Company’s Annual Report on Form 10-K filed March 24, 2022.

(28)

Filed herewith.

(*)

Denotes Management Compensation Plan, agreement or arrangement.

Item 16. Form 10-K Summary

None.

29

Report of Independent Registered Public Accounting Firm

Shareholders and Board of Directors

Hudson Technologies, Inc.

Woodcliff Lake, New Jersey

Opinion on the Consolidated Financial Statements

We have audited the accompanying consolidated balance sheets of Hudson Technologies, Inc. (the “Company”) as of December 31, 2023 and 2022, the related consolidated statements of income, stockholders’ equity, and cash flows for each of the three years in the period ended December 31, 2023, and the related notes (collectively referred to as the “consolidated financial statements”). In our opinion, the consolidated financial statements present fairly, in all material respects, the financial position of the Company at December 31, 2023 and 2022, and the results of its operations and its cash flows for each of the three years in the period ended December 31, 2023, in conformity with accounting principles generally accepted in the United States of America.

We also have audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (“PCAOB”), the Company's internal control over financial reporting as of December 31, 2023, based on criteria established in Internal Control – Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (“COSO”) and our report dated March 14, 2024 expressed an unqualified opinion thereon.

Basis for Opinion

These consolidated financial statements are the responsibility of the Company’s management. Our responsibility is to express an opinion on the Company’s consolidated financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (“PCAOB”) and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.

We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the consolidated financial statements are free of material misstatement, whether due to error or fraud.

Our audits included performing procedures to assess the risks of material misstatement of the consolidated financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the consolidated financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the consolidated financial statements. We believe that our audits provide a reasonable basis for our opinion.

Critical Audit Matter

The critical audit matter communicated below is a matter arising from the current period audit of the consolidated financial statements that was communicated or required to be communicated to the audit committee and that: (i) relates to accounts or disclosures that are material to the consolidated financial statements and (ii) involved our especially challenging, subjective, or complex judgments. The communication of the critical audit matter does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing separate opinions on the critical audit matter or on the accounts or disclosures to which it relates.

Inventory Valuation – Assessment of Net Realizable Value 

As described in Notes 1 and 4 to the consolidated financial statements, inventories total approximately $154.5 million as of December 31, 2023. Inventories, consisting primarily of refrigerant products available for sale, are stated at the lower of cost, on a first-in first-out basis, or net realizable value. Where the market price of inventory is less than the related cost, the Company may be required to write down its inventory through a lower of cost or net realizable value adjustment, the impact of which would be reflected in the cost of sales on the Consolidated Income Statements. Any such adjustment would be based on management’s judgements regarding future demand and market conditions and analysis of historical experience.

31

We identified assessment of net realizable value of certain inventories as a critical audit matter. Determining whether the Company may be required to write down its inventory through a lower of cost or net realizable value adjustment based on future demand, market conditions and analysis of historical experience requires significant judgment due to the subjectivity of these assumptions. Auditing these elements involved especially challenging and subjective auditor judgement due to the nature of the audit effort required to address these matters.

The primary procedures we performed to address this critical audit matter included evaluating the reasonableness of the judgments regarding future demand, market conditions and analysis of historical experience of certain inventories by:

Evaluating the consistency of current, historical, and subsequent pricing of inventory to the cost of inventory on hand at December 31, 2023.
Evaluating the consistency of the judgments with the company’s objectives and strategies.

/s/ BDO USA, P.C.

We have served as the Company’s auditor since 1994

Stamford, Connecticut

March 14, 2024

32

Hudson Technologies, Inc. and Subsidiaries

Consolidated Balance Sheets

(Amounts in thousands, except for share and par value amounts)

December 31, 

    

2023

    

2022

Assets

Current assets:

 

  

 

  

Cash and cash equivalents

$

12,446

$

5,295

Trade accounts receivable – net

 

25,169

 

20,872

Inventories

 

154,450

 

145,377

Income tax receivable

 

5,438

 

Prepaid expenses and other current assets

 

7,492

 

5,289

Total current assets

 

204,995

 

176,833

Property, plant and equipment, less accumulated depreciation

 

19,375

 

20,568

Goodwill

 

47,803

 

47,803

Intangible assets, less accumulated amortization

 

14,771

 

17,564

Right of use asset

6,591

7,339

Other assets

 

3,137

 

2,386

Total Assets

$

296,672

$

272,493

Liabilities and Stockholders’ Equity

 

  

 

  

Current liabilities:

 

  

 

  

Trade accounts payable

$

23,399

$

14,165

Accrued expenses and other current liabilities

 

31,537

 

27,908

Accrued payroll

 

3,615

 

6,303

Current maturities of long-term debt

 

 

4,250

Total current liabilities

 

58,551

 

52,626

Deferred tax liability

 

4,558

 

244

Long-term lease liabilities

4,790

5,763

Long-term debt, less current maturities, net of deferred financing costs

 

 

38,985

Total Liabilities

 

67,899

 

97,618

Commitments and contingencies

 

  

 

  

Stockholders’ equity:

 

  

 

  

Preferred stock, shares authorized 5,000,000: Series A Convertible preferred stock, $0.01 par value ($100 liquidation preference value); shares authorized 150,000; none issued or outstanding

 

 

Common stock, $0.01 par value; shares authorized 100,000,000; issued and outstanding: 45,502,380 and 45,287,619 respectively

 

455

 

453

Additional paid-in capital

 

118,091

 

116,442

Retained earnings

 

110,227

 

57,980

Total Stockholders’ Equity

 

228,773

 

174,875

Total Liabilities and Stockholders’ Equity

$

296,672

$

272,493

See Accompanying Notes to the Consolidated Financial Statements.

33

Hudson Technologies, Inc. and Subsidiaries

Consolidated Income Statements

(Amounts in thousands, except for share and per share amounts)

For the years ended December 31, 

    

2023

    

2022

    

2021

Revenues

$

289,025

$

325,225

$

192,748

Cost of sales

 

177,518

 

162,332

 

121,084

Gross profit

 

111,507

 

162,893

 

71,664

Operating expenses:

 

 

 

Selling, general and administrative

 

30,542

 

28,591

 

26,566

Amortization

 

2,793

 

2,793

 

2,793

Total operating expenses

 

33,335

 

31,384

 

29,359

Operating income

 

78,172

 

131,509

 

42,305

Other (expense) income:

 

 

 

Interest expense

 

(8,352)

 

(14,327)

 

(11,376)

Other income

 

 

 

2,470

Total other expense

 

(8,352)

 

(14,327)

 

(8,906)

Income before income taxes

 

69,820

 

117,182

 

33,399

Income tax expense

 

17,573

 

13,381

 

1,140

Net income

$

52,247

$

103,801

$

32,259

Net income per common share – Basic

$

1.15

$

2.31

$

0.74

Net income per common share – Diluted

$

1.10

$

2.20

$

0.69

Weighted average number of shares outstanding – Basic

 

45,385,433

 

44,990,104

 

43,765,443

Weighted average number of shares outstanding – Diluted

 

47,338,231

 

47,109,018

 

46,640,822

See Accompanying Notes to the Consolidated Financial Statements.

34

Hudson Technologies, Inc. and Subsidiaries

Consolidated Statements of Stockholders’ Equity

(Amounts in thousands, except for share amounts)

Retained

Earnings

Common Stock

Additional

(Accumulated

    

Shares

    

Amount

    

Paid-in Capital

    

Deficit)

    

Total

Balance at January 1, 2021

 

43,347,887

$

433

$

118,269

$

(78,080)

$

40,622

Issuance of common stock upon exercise of stock options

 

1,398,979

 

14

 

187

 

 

201

Excess tax benefits from exercise of stock options

(2,655)

(2,655)

Issuance of common stock for services

 

12,059

 

1

 

 

 

1

Share-based compensation

 

 

 

511

 

 

511

Net income

 

 

 

 

32,259

 

32,259

Balance at December 31, 2021

 

44,758,925

$

448

$

116,312

$

(45,821)

$

70,939

Issuance of common stock upon exercise of stock options

 

519,749

 

5

 

177

 

 

182

Excess tax benefits from exercise of stock options

(969)

(969)

Issuance of common stock for services

 

8,945

 

 

 

 

Share-based compensation

 

 

 

922

 

 

922

Net income

 

 

 

 

103,801

 

103,801

Balance at December 31, 2022

 

45,287,619

$

453

$

116,442

$

57,980

$

174,875

Issuance of common stock upon exercise of stock options

214,761

2

37

39

Excess tax benefits from exercise of stock options

(694)

(694)

Share-based compensation

2,306

2,306

Net income

52,247

52,247

Balance at December 31, 2023

45,502,380

$

455

$

118,091

$

110,227

$

228,773

See Accompanying Notes to the Consolidated Financial Statements.

35

Hudson Technologies, Inc. and Subsidiaries

Consolidated Statements of Cash Flows

(Amounts in thousands)

For the years ended December 31, 

    

2023

    

2022

    

2021

Cash flows from operating activities:

Net income

$

52,247

$

103,801

$

32,259

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

 

 

  

 

  

Depreciation

 

2,989

 

3,184

 

3,387

Amortization of intangible assets

 

2,793

 

2,793

 

2,793

Impairment of long lived assets

2,120

Forgiveness of Payroll Protection Program loan

(2,475)

Lower of cost or net realizable value inventory adjustment

 

(2,259)

 

1,837

 

(2,806)

Allowance for doubtful accounts

 

659

 

474

 

44

Amortization of deferred finance cost

 

726

 

1,086

 

1,125

Loss on extinguishment of debt

3,427

4,665

Share based compensation

 

2,306

 

922

 

511

Deferred tax expense

 

4,314

 

(1,449)

 

337

Changes in assets and liabilities:

 

 

 

  

Trade accounts receivable

 

(4,957)

 

(7,123)

 

(4,461)

Inventories

 

(6,814)

 

(53,070)

 

(46,878)

Prepaid and other assets

 

(3,182)

 

1,782

 

(2,120)

Lease obligations

17

4

Income taxes receivable/payable

 

(5,277)

 

(630)

 

674

Accounts payable and accrued expenses

 

9,455

 

4,526

 

16,378

Cash provided by (used in) operating activities

 

58,547

 

62,815

 

(1,228)

Cash flows from investing activities:

 

 

 

  

Additions to property, plant, and equipment

 

(3,580)

 

(3,659)

 

(1,922)

Cash used in investing activities

 

(3,580)

 

(3,659)

 

(1,922)

Cash flows from financing activities:

 

 

 

  

Net proceeds from issuances of common stock and exercises of stock options

 

39

 

182

 

201

Excess tax benefits from exercise of stock options

 

(694)

 

(969)

 

(2,655)

Payment of deferred financing cost

(8,512)

Borrowing of short-term debt - net

13,000

Proceeds from long term debt

 

 

100,000

 

Repayment of long-term debt

 

(47,161)

 

(148,054)

 

(5,252)

Cash (used in) provided by financing activities

 

(47,816)

 

(57,353)

 

5,294

Increase in cash and cash equivalents

 

7,151

 

1,803

 

2,144

Cash and cash equivalents at beginning of period

 

5,295

 

3,492

 

1,348

Cash and cash equivalents at end of period

$

12,446

$

5,295

$

3,492

Supplemental disclosure of cash flow information:

 

 

 

  

Cash paid during period for interest

$

4,475

$

11,702

$

10,157

Cash paid for income taxes

$

18,536

$

15,460

$

128

Property and equipment included in accrued expenses and other current liabilities

$

337

See Accompanying Notes to the Consolidated Financial Statements

36

Hudson Technologies, Inc. and Subsidiaries

Notes to the Consolidated Financial Statements

Note 1 - Summary of Significant Accounting Policies

Business

Hudson Technologies, Inc. (“Hudson” or the “Company”), incorporated under the laws of New York on January 11, 1991, is a refrigerant services company providing innovative solutions to recurring problems within the refrigeration industry. Hudson has proven, reliable programs that meet customer refrigerant needs by providing environmentally sustainable solutions from initial sale of refrigerant gas through recovery, reclamation and reuse, peak operating performance of equipment through energy efficiency and emergency air conditioning and refrigeration system repair, to final refrigerant disposal and carbon credit trading.

The Company’s operations consist of one reportable segment. The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems, and include refrigerant and industrial gas sales, refrigerant management services consisting primarily of reclamation of refrigerants and RefrigerantSide® Services performed at a customer’s site. RefrigerantSide® Services consist of system decontamination to remove moisture, oils and other contaminants intended to restore systems to designed capacity. As a component of the Company’s products and services, the Company also participates in the generation of carbon offset projects. The Company operates principally through its wholly-owned subsidiary, Hudson Technologies Company. Unless the context requires otherwise, references to the “Company”, “Hudson”, “we”, “us”, “our”, or similar pronouns refer to Hudson Technologies, Inc. and its subsidiaries.

In preparing the accompanying consolidated financial statements, and in accordance with Accounting Standards Codification (“ASC”) 855-10 “Subsequent Events”, the Company’s management has evaluated subsequent events through the date that the financial statements were filed.

AIM Act

The United States Environmental Protection Agency (“EPA”) issued several final rules establishing the framework to allocate allowances for virgin production and consumption of hydrofluorocarbon refrigerants (“HFCs”) that currently provide allowances through 2028. The EPA is responsible for the administration of the HFC phase down enacted by Congress under the AIM Act.

The AIM Act directs the EPA to address the reduction in virgin HFCs and provides authority to do so in three respects:

1)phase down the production and consumption of listed HFCs,
2)manage these HFCs and their substitutes including reclamation of refrigerants, and
3)facilitate the transition to next-generation technologies.

Congress required that the EPA consider ways to promote reclamation in all phases of its implementation of the AIM Act. The AIM Act introduced a stepdown of 10% from baseline levels in 2022 and 2023, and establishes a cumulative 40% reduction in the baseline for 2024. Hudson received allocation allowances for calendar years 2022 and 2023 equal to approximately 3 million Metric Tons Exchange Value Equivalents per year, or approximately 1% of the total HFC consumption, with allowances for future periods to be determined at a later date. Reclamation will be critical to maintaining necessary HFC supply levels to ensure an orderly phasedown. Reclamation is not subject to the allowance system or restricted from use.

On October 6, 2023, the EPA announced the latest actions to phase down HFCs under the AIM Act:

1)

Finalization of the Technology Transition Rule - The first new action is a final rule to accelerate the ongoing transition to more efficient and climate-safe technologies in new refrigeration, heating and cooling systems and other products by restricting the use of HFCs where alternatives are already available. The rule, which applies to both imported and domestically manufactured products, bans HFCs in certain equipment and sets a limit on the global warming potentials (GWPs) of the HFCs that can be used in each subsector, with compliance dates ranging from 2025 to 2028.

37

In December 2023, the EPA announced an interim final rule on this matter, which provides an additional year, until January 1, 2026, for the installation of new residential and light commercial air conditioning systems and heat pump systems that use components manufactured or imported prior to January 1, 2025. Importantly, to qualify for the extended compliance deadline, all components of a system using the higher Global Warming Potential (GWP) HFC must be manufactured or imported prior to January 1, 2025.

2)

Proposed Refrigerant Management Rule - The second action is a proposed rule (subject to further comments) to better manage and reuse existing HFCs, including by reducing wasteful leaks from equipment and supporting HFC recycling and reclamation. The proposed rule, which is expected to be finalized during the third quarter of 2024, includes requirements for repairing leaky equipment, use of automatic leak detection systems on large refrigeration systems, use of reclaimed HFCs for certain applications, recovery of HFCs from cylinders before their disposal, and a container tracking system.

Consolidation

The consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States, represent all companies of which Hudson directly or indirectly has majority ownership or otherwise controls. Significant intercompany accounts and transactions have been eliminated. The Company’s consolidated financial statements include the accounts of wholly-owned subsidiaries Hudson Holdings, Inc. and Hudson Technologies Company. The Company does not present a statement of comprehensive income as its comprehensive income is the same as its net income.

Fair Value of Financial Instruments

The carrying values of financial instruments including cash, trade accounts receivable and accounts payable approximate fair value at December 31, 2023 and December 31, 2022, because of the relatively short maturity of these instruments. The carrying value of debt approximates fair value, due to the variable rate nature of the debt, as of December 31, 2022. See Note 2 for further details.

Credit Risk

Financial instruments, which potentially subject the Company to concentrations of credit risk, consist principally of temporary cash investments and trade accounts receivable. The Company maintains its temporary cash investments in highly-rated financial institutions and, at times, the balances exceed FDIC insurance coverage. The Company’s trade accounts receivable are primarily due from companies throughout the United States. The Company reviews each customer’s credit history before extending credit.

The Company establishes an allowance for credit losses. In accordance with the “expected credit loss” model, the carrying amount of accounts receivable is reduced by a valuation allowance that reflects the Company’s best estimate of the amounts that it does not expect to collect. In addition to reviewing delinquent accounts receivable, the Company considers many factors in estimating its reserve, including types of customers and their credit worthiness, experience and historical data adjusted for current conditions.

The carrying value of the Company’s accounts receivable is reduced by the established allowance for credit losses. The allowance for doubtful accounts includes any accounts receivable balances that are determined to be uncollectible, along with a general reserve for the remaining accounts receivable balances. The Company adjusts its reserves based on factors that affect the collectability of the accounts receivable balances.

For the year ended December 31, 2023, there was one customer accounting for greater than 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2023.  For the year ended December 31, 2022, there was no customer that accounted for 10% of the Company’s revenues but one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2022. For the year ended December 31, 2021, one customer accounted for 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2021.

The loss of a principal customer or a decline in the economic prospects of and/or a reduction in purchases of the Company’s products or services by any such customer could have a material adverse effect on the Company’s operating results and financial position.

Cash and Cash Equivalents

Temporary investments with original maturities of ninety days or less are included in cash and cash equivalents.

38

Inventories

Inventories, consisting primarily of refrigerant products available for sale, are stated at the lower of cost, on a first-in first-out basis, or net realizable value. Where the market price of inventory is less than the related cost, the Company may be required to write down its inventory through a lower of cost or net realizable value adjustment, the impact of which would be reflected in cost of sales on the Consolidated Income Statements. Any such adjustment would be based on management’s judgment regarding future demand and market conditions and analysis of historical experience.

Property, Plant and Equipment

Property, plant and equipment are stated at cost, including internally manufactured equipment. The cost to complete equipment that is under construction is not considered to be material to the Company’s financial position. Provision for depreciation is recorded using the straight-line method over the useful lives of the respective assets. Leasehold improvements are amortized on a straight-line basis over the shorter of economic life or terms of the respective leases. Costs of maintenance and repairs are charged to expense when incurred.

Due to the specialized nature of the Company’s business, it is possible that the Company’s estimates of equipment useful life periods may change in the future.

Goodwill

The Company has made acquisitions that included a significant amount of goodwill and other intangible assets. The Company applies the purchase method of accounting for acquisitions, which among other things, requires the recognition of goodwill (which represents the excess of the purchase price of the acquisition over the fair value of the net assets acquired and identified intangible assets). The Company tests its goodwill for impairment annually on a qualitative or quantitative basis (the first day of the fourth quarter) and between annual tests if an event occurs or circumstances change that would more likely than not reduce the fair value of an asset below its carrying value. Goodwill is tested for impairment at the reporting unit level. When performing the annual impairment test, the Company has the option of first performing a qualitative assessment, which requires management to make assumptions affecting a reporting unit, to determine the existence of events and circumstances that would lead to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. If such a conclusion is reached, the Company is then required to perform a quantitative impairment assessment of goodwill. The Company has one reporting unit at December 31, 2023. Other intangible assets that meet certain criteria are amortized over their estimated useful lives.

An impairment charge is recorded based on the excess of a reporting unit’s carrying amount over its fair value. An impairment charge would be recognized when the carrying amount exceeds the estimated fair value of a reporting unit. These impairment evaluations use many assumptions and estimates in determining an impairment loss, including certain assumptions and estimates related to future earnings. If the Company does not achieve its earnings objectives, the assumptions and estimates underlying these impairment evaluations could be adversely affected, which could result in an asset impairment charge that would negatively impact operating results. During the fourth quarter of 2023, the Company completed its annual impairment test as of October 1 and determined in its qualitative assessment that it is more likely than not that the fair value of the reporting unit is greater than its carrying amount, resulting in no goodwill impairment. There can be no assurances that future sustained declines in macroeconomic or business conditions affecting our industry will not occur, which could result in goodwill impairment charges in future periods.

There were no goodwill impairment losses recognized in 2023, 2022 or 2021.

Leases

The Company determines if an arrangement contains a lease at inception. An arrangement contains a lease if it implicitly or explicitly identifies an asset to use and conveys the right to control the use of the identified asset in exchange for consideration. As a lessee, the Company includes operating leases in operating lease right-of-use (“ROU”) assets, operating lease liabilities, and non-current operating lease liabilities in its consolidated balance sheets.

Finance leases are included in property and equipment in the consolidated balance sheets.

39

ROU assets represent the Company’s right to use an underlying asset for the lease term and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized upon commencement of the lease based on the present value of the lease payments over the lease term. As most of the Company’s leases do not provide an implicit interest rate, the Company generally uses its incremental borrowing rate based on the estimated rate of interest for fully collateralized and fully amortizing borrowings over a similar term of the lease payments and commencement date to determine the present value of lease payments. When readily determinable, the Company uses the implicit rate. The Company’s lease terms include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Expenses associated with operating leases and finance leases are included in selling, general and administrative within the consolidated statement of income.

Cylinder Deposit Liability

The cylinder deposit liability, which is included in Accrued expenses and other current liabilities on the Company’s Balance Sheet, represents the amount due to customers for the return of refillable cylinders. The Company charges its customers cylinder deposits upon the shipment of refrigerant gases that are contained in refillable cylinders. The amount charged to the customer by the Company approximates the cost of a new cylinder of the same size. Upon return of a cylinder, this liability is reduced. The cylinder deposit liability balance was $17.2 million and $13.6 million at December 31, 2023 and 2022, respectively. 

Revenues and Cost of Sales

The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems. Most of the Company’s revenues are realized from the sale of refrigerant and industrial gases and related products. The Company also generates revenue from refrigerant management services performed at a customer’s site and in-house. The Company conducts its business primarily within the US.

The Company applies the FASB’s guidance on revenue recognition, which requires the Company to recognize revenue in an amount that reflects the consideration to which the Company expects to be entitled in exchange for goods or services transferred to its customers. In most instances, the Company’s contract with a customer is the customer’s purchase order and the sales price to the customer is fixed. For certain customers, the Company may also enter into a sales agreement outlining a framework of terms and conditions applicable to future purchase orders received from that customer. Because the Company’s contracts with customers are typically for a single customer purchase order, the duration of the contract is usually less than one year. The Company’s performance obligations related to product sales are satisfied at a point in time, which may occur upon shipment of the product or receipt by the customer, depending on the terms of the arrangement. The Company’s performance obligations related to reclamation and RefrigerantSide® services are generally satisfied at a point in time when the service is performed. Accordingly revenues are recorded upon the shipment of the product, or in certain instances upon receipt by the customer, or the completion of the service.

In July 2016 the Company was awarded, as prime contractor, a five-year contract, including a five-year renewal option,which has been exercised through July 2026, by the United States Defense Logistics Agency (“DLA”) for the management, supply, and sale of refrigerants, compressed gases, cylinders and related services. The Company determined that the sale of refrigerants and the management services provided each have stand-alone value. Accordingly, the performance obligations related to the sale of refrigerants is satisfied at a point in time, mainly when the customer receives and obtains control of the product. The performance obligation related to management service revenue is satisfied over time and revenue is recognized on a straight-line basis over the term of the arrangement as the management services are provided. For the years ended December 31, 2023, 2022 and 2021 management services revenue were $2.4 million, $2.3 million, and $2.2 million respectively.

Cost of sales is recorded based on the cost of products shipped or services performed and related direct operating costs of the Company’s facilities. In general, the Company performs shipping and handling services for its customers in connection with the delivery of refrigerant and other products. The Company elected to implement ASC 606-10-25-18B, whereby the Company accounts for such shipping and handling as activities to fulfill the promise to transfer the good. To the extent that the Company charges its customers shipping fees, such amounts are included as a component of revenue and the corresponding costs are included as a component of cost of sales.

40

The Company’s revenues are derived from Product and related sales and RefrigerantSide® Services revenues. The revenues for each of these lines are as follows:

Years Ended December 31, 

    

2023

    

2022

    

2021

(in thousands)

Product and related sales

$

281,954

$

319,019

$

187,799

RefrigerantSide ® Services

 

7,071

 

6,206

 

4,949

Total

$

289,025

$

325,225

$

192,748

Income Taxes

The Company is taxed at statutory corporate income tax rates after adjusting income reported for financial statement purposes for certain items. Current income tax expense reflects the tax results of revenues and expenses currently taxable or deductible. The Company utilizes the asset and liability method of accounting for deferred income taxes, which provides for the recognition of deferred tax assets or liabilities, based on enacted tax rates and laws, for the differences between the financial and income tax reporting bases of assets and liabilities. The tax benefit associated with the Company’s net operating loss carry forwards (“NOLs”) is recognized to the extent that the Company expects to realize future taxable income.

During the year ended December 31, 2022, the Company concluded that its deferred tax assets were more likely than not to become realizable. The Company fully reversed its existing valuation allowance of $15.1 million, with $11.6 million reversed during the first and second quarters of 2022, and the remaining $3.5 million through the third and fourth quarters of 2022. The conclusion that a valuation allowance was no longer needed was based on the achievement of three years of cumulative pre-tax income, the utilization of the Company’s $29.3 million federal NOLs, which comprised a majority of the Company’s deferred tax assets, combined with estimates of future years’ pre-tax income that were sufficient to realize the remaining deferred tax assets.

For the year ended December 31, 2023 the Company had no federal NOLs, as the Company utilized all of its remaining federal NOLs during the year ended December 31, 2022. For the year ended December 31, 2023, the Company had state tax NOLs of approximately $1.8 million, expiring in various years. We review the likelihood that we will realize the benefit of our deferred tax assets on a quarterly basis.

The Company evaluates uncertain tax positions, if any, by determining if it is more likely than not to be sustained upon examination by the taxing authorities. For the years ended December 31, 2023 and December 31, 2022, the Company believes it had no uncertain tax positions.

Income per Common and Equivalent Shares

If dilutive, common equivalent shares (common shares assuming exercise of options) utilizing the treasury stock method are considered in the presentation of diluted income per share. The reconciliation of shares used to determine net income per share is as follows (dollars in thousands):

Years ended December 31, 

    

2023

    

2022

    

2021

Net income

$

52,247

$

103,801

$

32,259

Weighted average number of shares – basic

 

45,385,433

 

44,990,104

 

43,765,443

Shares underlying options

 

1,952,798

 

2,118,914

 

2,875,379

Weighted average number of shares outstanding – diluted

 

47,338,231

 

47,109,018

 

46,640,822

During the years ended December 31, 2023, 2022 and 2021, certain options aggregating 17,172, 28,467 and 2,583,523 shares, respectively, have been excluded from the calculation of diluted shares, due to the fact that their effect would be anti-dilutive.

41

Estimates and Risks

The preparation of financial statements in conformity with generally accepted accounting principles in the United States requires the use of estimates and assumptions that affect the amounts reported in these financial statements and footnotes. The Company considers these accounting estimates to be critical in the preparation of the accompanying consolidated financial statements. The Company uses information available at the time the estimates are made. However, these estimates could change materially if different information or assumptions were used. Additionally, these estimates may not ultimately reflect the actual amounts of the final transactions that occur. The Company utilizes both internal and external sources to evaluate potential current and future liabilities for various commitments and contingencies. In the event that the assumptions or conditions change in the future, the estimates could differ from the original estimates.

Several of the Company’s accounting policies involve significant judgments, uncertainties, and estimates. The Company bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities. Actual results may differ from these estimates under different assumptions or conditions. To the extent that actual results differ from management’s judgments and estimates, there could be a material adverse effect on the Company. On a continuous basis, the Company evaluates its estimates, including, but not limited to, those estimates related to its allowance for doubtful accounts, inventory reserves, goodwill and commitments and contingencies. With respect to trade accounts receivable, the Company estimates the necessary allowance for doubtful accounts based on both historical and anticipated trends of payment history and the ability of the customer to fulfill its obligations. For inventory, the Company evaluates both current and anticipated sales prices of its products to determine if a write down of inventory to net realizable value is necessary.

The Company participates in an industry that is highly regulated, and changes in the regulations affecting its business could affect its operating results. Currently the Company purchases virgin hydrofluorocarbon (“HFC”) and hydrofluroolefin (“HFO”) refrigerants and reclaimable, primarily hydrochlorofluorocarbons (“HCFC”), HFC and chlorofluorocarbon (“CFC”), refrigerants from suppliers and its customers. To the extent that the Company is unable to source sufficient quantities of refrigerants or is unable to obtain refrigerants on commercially reasonable terms or experiences a decline in demand and/or price for refrigerants sold by the Company, the Company could realize reductions in revenue from refrigerant sales, which could have a material adverse effect on its operating results and its financial position. The process of sourcing refrigerants includes various procurement costs, such as freight, processing, insurance, and other costs, relating to the delivery of refrigerants. As a result of the recently noted global supply chain issues, the Company determined it could be exposed to incremental costs related to these refrigerant purchases. These costs represent the Company’s initial estimate that are possibly subject to finalization in future periods and are recorded in accrued expenses and other current liabilities on the consolidated balance sheet as of December 31, 2023.

The Company is subject to various legal proceedings. The Company assesses the merit and potential liability associated with each of these proceedings. In addition, the Company estimates potential liability, if any, related to these matters. To the extent that these estimates are not accurate, or circumstances change in the future, the Company could realize liabilities, which could have a material adverse effect on its operating results and its financial position.

Impairment of Long-lived Assets

The Company reviews long-lived assets for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of the assets to the future net cash flows expected to be generated by the asset. If such assets are considered to be impaired, the impairment to be recognized is measured by the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of are reported at the lower of the carrying amount or fair value less the cost to sell.

Capitalized Software Development Costs

Capitalized internal-use software costs consist of costs to purchase and develop software. For software to be used solely to meet internal needs and for cloud-based applications used to deliver our services, we capitalize costs incurred during the application development stage and include such costs within property and equipment, net within our consolidated balance sheets.

42

Recent Accounting Pronouncements

In June 2016, the FASB issued ASU No. 2016-13, Measurement of Credit Losses on Financial Instruments, which revises guidance for the accounting for credit losses on financial instruments within its scope, and in November 2018, issued ASU No. 2018-19 and in April 2019, issued ASU No. 2019-04 and in May 2019, issued ASU No. 2019-05, and in November 2019, issued ASU No. 2019-11, which each amended the standard. The new standard introduces an approach, based on expected losses, to estimate credit losses on certain types of financial instruments and modifies the impairment model for available-for-sale debt securities. The new approach to estimating credit losses (referred to as the current expected credit losses model) applies to most financial assets measured at amortized cost and certain other instruments, including trade and other receivables, loans, held-to-maturity debt securities, net investments in leases and off-balance-sheet credit exposures. This ASU is effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. Entities are required to apply the standard’s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. The Company adopted ASU No. 2016-13 on January 1, 2023. The adoption of ASU No. 2016-13 did not have a material impact on its results of operations or financial position.

In August 2020, the FASB issued ASU 2020-06, “Debt-Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging-Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity”, which is intended to simplify the accounting for convertible instruments by removing certain separation models in Subtopic 470-20, Debt-Debt with Conversion and Other Options, for convertible instruments. The pronouncement is effective for fiscal years, and for interim periods within those fiscal years, beginning after December 15, 2022, with early adoption permitted. The Company adopted ASU 2020-06 on January 1, 2023. The adoption of ASU 2020-06 did not have a material impact on its results of operations or financial position.

In December 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-09, “Income Taxes (Topic 740): Improvements to Income Tax Disclosures,” which requires public business entities to disclose additional information in specified categories with respect to the reconciliation of the effective tax rate to the statutory rate for federal, state, and foreign income taxes. It also requires greater detail about individual reconciling items in the rate reconciliation to the extent the impact of those items exceeds a specified threshold. In addition to new disclosures associated with the rate reconciliation, the ASU requires information pertaining to taxes paid (net of refunds received) to be disaggregated for federal, state, and foreign taxes and further disaggregated for specific jurisdictions to the extent the related amounts exceed a quantitative threshold. The ASU also describes items that need to be disaggregated based on their nature, which is determined by reference to the item’s fundamental or essential characteristics, such as the transaction or event that triggered the establishment of the reconciling item and the activity with which the reconciling item is associated. The ASU eliminates the historic requirement that entities disclose information concerning unrecognized tax benefits having a reasonable possibility of significantly increasing or decreasing in the 12 months following the reporting date. This ASU is effective for annual periods beginning after December 15, 2024. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. This ASU should be applied on a prospective basis; however, retrospective application is permitted. The Company is currently evaluating the impact that ASU 2023 – 09 will have on its consolidated financial statements.

In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280): Improvements to Reportable Segments,” which aims to improve financial reporting by requiring disclosure of incremental segment information on an annual and interim basis for all public entities to enable investors to develop more decision-useful financial analyses. Currently, Topic 280 requires that a public entity disclose certain information about its reportable segments. For example, a public entity is required to report a measure of segment profit or loss that the CODM uses to assess segment performance and make decisions about allocating resources. Topic 280 also requires other specified segment items and amounts, such as depreciation, amortization, and depletion expense, to be disclosed under certain circumstances. The amendments in this ASU do not change or remove those disclosure requirements and do not change how a public entity identifies its operating segments, aggregates those operating segments, or applies the quantitative thresholds to determine its reportable segments. This ASU is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company does not expect that the requirements of ASU 2023 – 07 will have a material impact on its consolidated financial statements.

43

Note 2- Fair Value

ASC Subtopic 820-10 defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The Company often utilizes certain assumptions that market participants would use in pricing the asset or liability, including assumptions about risk and/or the risks inherent in the inputs to the valuation technique. These inputs can be readily observable, market-corroborated, or generally unobservable inputs. The Company utilizes valuation techniques that maximize the use of observable inputs and minimize the use of unobservable inputs. Based upon observable inputs used in the valuation techniques, the Company is required to provide information according to the fair value hierarchy.

The fair value hierarchy ranks the quality and reliability of the information used to determine fair values into three broad levels as follows:

Level 1: Valuations for assets and liabilities traded in active markets from readily available pricing sources for market transactions involving identical assets or liabilities.

Level 2: Valuations for assets and liabilities traded in less active dealer or broker markets. Valuations are obtained from third-party pricing services for identical or similar assets or liabilities.

Level 3: Valuations for assets and liabilities include certain unobservable inputs in the assumptions and projections used in determining the fair value assigned to such assets or liabilities.

In instances where the determination of the fair value measurement is based on inputs from different levels of the fair value hierarchy, the level in the fair value hierarchy within which the entire fair value measurement falls is based on the lowest level input that is significant to the fair value measurement in its entirety. The Company’s assessment of the significance of a particular input to the fair value measurement in its entirety requires judgment and considers factors specific to the asset or liability.

Note 3 - Trade accounts receivable – net

The opening and closing balance of the company’s accounts receivable is as follows:

Beginning

Increase

Balance

(Decrease),

Ending Balance

(in thousands)

    

at January 1

    

Net

    

at December 31

2023

$

20,872

$

4,297

$

25,169

2022

$

14,223

$

6,649

$

20,872

At December 31, 2023 and 2022, trade accounts receivable are net of reserves for allowance for credit losses of $2.0 million and $1.9 million, respectively. The following table represents the activity occurring in the reserves for allowance for credit losses in 2023 and 2022.

Beginning

Net additions

Balance

charged to

Deductions

Ending Balance

(in thousands)

    

at January 1

    

Operations

    

and Other

    

at December 31

2023

$

1,927

$

659

$

(592)

$

1,994

2022

$

1,584

$

474

$

(131)

$

1,927

Note 4- Inventories

Inventories consist of the following:

December 31, 

December 31, 

    

2023

    

2022

(in thousands)

Refrigerants and cylinders

$

159,654

$

152,840

Less: net realizable value adjustments

 

(5,204)

 

(7,463)

Total

$

154,450

$

145,377

44

Note 5 - Property, plant and equipment

Elements of property, plant and equipment are as follows:

Estimated

December 31, 

    

2023

    

2022

    

Lives

(in thousands)

Property, plant and equipment

 

  

 

  

 

  

- Land

$

1,255

$

1,255

 

  

- Land improvements

 

319

 

319

 

6-10 years

- Buildings

 

1,446

 

1,446

 

25-39 years

- Building improvements

 

3,467

 

3,396

 

25-39 years

- Cylinders

 

13,220

 

13,315

 

15-30 years

- Equipment

 

29,397

 

27,258

 

3-10 years

- Equipment under capital lease

 

315

 

315

 

5-7 years

- Vehicles

 

1,790

 

1,773

 

3-5 years

- Lab and computer equipment, software

 

3,233

 

3,103

 

2-8 years

- Furniture & fixtures

 

933

 

840

 

5-10 years

- Leasehold improvements

 

865

 

852

 

3-5 years

- Construction-in-Progress

 

2,844

 

3,533

 

  

Subtotal

 

59,084

 

57,405

 

  

Less: Accumulated depreciation

 

(39,709)

 

(36,837)

 

  

Total

$

19,375

$

20,568

 

  

Depreciation expense for the years ended December 31, 2023, 2022 and 2021 was $3.0 million, $3.2 million and $3.4 million, respectively, of which $2.0 million, $2.0 million and $1.9 million, respectively, were included as cost of sales in the Company’s Consolidated Income Statements.

Note 6 - Leases

The Company has various lease agreements with terms up to 11 years, including leases of buildings and various equipment. Some leases include options to purchase, terminate or extend for one or more years. These options are included in the lease term when it is reasonably certain that the option will be exercised.

At inception, the Company determines if an arrangement contains a lease and whether that lease meets the classification criteria of a finance or operating lease. Some of the Company’s lease arrangements contain lease components (e.g. minimum rent payments) and non-lease components (e.g. common area maintenance, charges, utilities and property taxes). The Company elected the package of practical expedients permitted under the transition guidance, which allows it to carry forward its historical lease classification, its assessment on whether a contract contains a lease, and its initial direct costs for any leases that existed prior to the adoption of the new standard. The Company also elected to combine lease and non-lease components and to keep leases with an initial term of 12 months or less off the balance sheet and recognize the associated lease payments in the consolidated income statements on a straight line basis over the lease term. The Company’s lease agreements do not contain any material residual value, guarantees or material restrictive covenants.

Operating leases are included in Right of use asset, Accrued expenses and other current liabilities, and Long-term lease liabilities on the consolidated balance sheets. These assets and liabilities are recognized at the commencement date based on the present value of remaining lease payments over the lease term using the Company’s secured incremental borrowing rates or implicit rates, when readily determinable. Short-term operating leases, which have an initial term of 12 months or less, are not recorded on the balance sheet. Lease expense for operating leases is recognized on a straight-line basis over the lease term. Variable lease expense is recognized in the period in which the obligation for those payments is incurred.

Operating lease expense of $1.7 million, $2.6 million and $3.1 million, for the years ended December 31, 2023, 2022 and 2021, respectively, is included in Selling, general and administrative expenses on the consolidated income statements.

45

The following table presents information about the amount and timing of cash flows arising from the Company’s operating leases as of December 31, 2023.

Maturity of Lease Payments

    

December 31, 2023

(in thousands)

 -2024

 

1,914

 -2025

 

1,663

 -2026

 

1,500

 -2027

1,043

-2028

656

-Thereafter

 

823

Total undiscounted operating lease payments

 

7,599

Less imputed interest

 

(911)

Present value of operating lease liabilities

$

6,688

Balance Sheet Classification

December 31, 

    

2023

    

2022

Current lease liabilities (recorded in Accrued expenses and other current liabilities)

$

1,898

$

1,663

Long-term lease liabilities

4,790

 

5,763

Total operating lease liabilities

$

6,688

$

7,426

Other Information

December 31, 

    

2023

    

2022

Weighted-average remaining term for operating leases

2.92

years

3.60

years

Weighted-average discount rate for operating leases

 

8.27

%

8.21

%

Supplemental cash flow and non-cash information related to leases

December 31,

    

2023

    

2022

Cash paid for amounts included in measurement of lease liabilities:

 

  

 

  

Operating cash flow from operating leases

$

1,782

$

2,588

Right -of-use assets obtained in exchange for new operating lease liabilities

$

1,020

$

2,659

Note 7 - Income taxes

Income tax expense for the years ended December 31, 2023, 2022 and 2021 was $17.6 million, $13.4 million and $1.1 million, respectively. The income tax expense (benefit) for each of the years ended December 31, 2023, 2022 and 2021 were provided for federal and state income tax at statutory rates applied to the pre-tax income (loss) for each of the periods.

46

The following summarizes the provision for income taxes:

Years Ended December 31,

    

2023

    

2022

    

2021

(in thousands)

Current:

 

  

 

  

 

  

Federal

$

10,319

$

11,995

$

453

State and local

 

2,940

 

2,835

 

350

 

13,259

 

14,830

 

803

Deferred:

 

 

 

  

Federal

 

3,667

 

(323)

 

267

State and local

 

647

 

(1,126)

 

70

 

4,314

 

(1,449)

 

337

Expense for income taxes

$

17,573

$

13,381

$

1,140

Reconciliation of the Company’s actual tax rate to the U.S. Federal statutory rate is as follows:

Years ended December 31, 

    

2023

    

2022

    

2021

 

Income tax rates

- Statutory U.S. federal rate

 

21

%  

21

%  

21

%

- State income taxes, net of federal benefit

 

4

%  

4

%  

0

%

- Excess tax benefits related to stock compensation

 

(1)

%  

(1)

%  

(4)

%

- 162m limitation

1

%  

1

%

- PPP Benefit

0

%

0

%

(2)

%

- Change in valuation allowance

 

0

%

(13)

%  

(12)

%

- Other true-up

0

%

(1)

%

Total

 

25

%  

11

%  

3

%

For the year ended December 31, 2023, the Company had no federal NOLs carryforward. For the year ended December 31, 2023, the Company had state tax NOL carryforwards of approximately $1.8 million, expiring in various years.

Deferred income tax represents the tax effect of the differences between the book and tax bases of assets and liabilities. The net deferred income tax assets (liabilities) consisted of the following at:

December 31, 

    

2023

    

2022

(in thousands)

Deferred tax assets (liabilities):

- Reserve for doubtful accounts

$

497

$

500

- Inventory reserve

 

687

 

1,045

-Non qualified stock options

 

529

 

383

- Deferred interest

 

 

2,637

- Accrued expenses

 

82

 

107

Total Deferred income tax assets

$

1,795

$

4,672

Deferred tax liabilities:

 

 

- Depreciation and amortization

(6,353)

(4,916)

Total deferred tax liabilities

(6,353)

(4,916)

Net deferred tax liabilities

$

(4,558)

$

(244)

We review the likelihood that we will realize the benefit of our deferred tax assets, and therefore the need for valuation allowances, on a quarterly basis. In determining the requirement for a valuation allowance, the historical and projected financial results are considered, along with all other available positive and negative evidence.

47

The Company’s 2019 and prior federal tax years have been closed. The Company operates in many states throughout the United States and, as of December 31, 2023, the state statutes of limitations remain open for tax years subsequent to 2018. The Company recognizes interest and penalties, if any, relating to income taxes as a component of the provision for income taxes.

Note 8 – Goodwill and intangible assets

Goodwill represents the excess of the purchase price over the fair value of the net assets acquired in business combinations accounted for under the purchase method of accounting.

There were no goodwill impairment losses recognized for the years ended December 31, 2023, 2022 and 2021.

Based on the results of the impairment assessments of goodwill and intangible assets performed, management concluded that the fair value of the Company’s goodwill exceeds the carrying value and that there are no impairment indicators related to intangible assets.

At December 31, 2023 and December 31, 2022 the Company had $47.8 million of goodwill.

The Company’s other intangible assets consist of the following:

2023

2022

Amortization

Gross

Gross

December 31, 

Period

Carrying

Accumulated

Carrying

Accumulated

(in thousands)

    

(in years)

    

Amount

    

Amortization

    

Net

    

Amount

    

Amortization

    

Net

Intangible assets with determinable lives

 

  

Covenant not to compete

 

610

$

870

$

798

 

72

$

870

$

710

160

Customer relationships

 

312

 

31,560

 

17,151

 

14,409

 

31,560

 

14,491

 

17,069

Above market leases

 

13

 

567

 

277

 

290

 

567

 

232

 

335

Total identifiable intangible assets

$

32,997

$

18,226

$

14,771

$

32,997

$

15,433

$

17,564

The amortization of intangible assets for the years ended December 31, 2023, 2022 and 2021, were $2.8 million. Future estimated amortization expense is as follows: 2024 - $2.8 million, 2025 - $2.5 million, 2026- $2.5 million, 2027- $2.5 million, 2028-$2.5 million and thereafter - $1.9 million.

Note 9 – Accrued expenses and other current liabilities

Elements of Accrued expenses and other current liabilities are as follows:

December 31,

    

2023

    

2022

(in thousands)

 

  

 

  

Accrued expenses

$

12,256

$

11,696

Cylinder deposits

 

17,225

 

13,638

Lease obligations

 

1,893

 

1,669

Other current liabilities

 

163

 

905

Total

$

31,537

$

27,908

48

Note 10 - Short-term and long-term debt

Elements of short-term and long-term debt are as follows:

December 31, 

    

2023

    

2022

(in thousands)

Short-term & long-term debt

 

  

 

  

Short-term debt:

 

  

 

  

- Revolving credit line and other debt

$

$

- Term loan facility - current

4,250

Subtotal

 

 

4,250

Long-term debt:

 

 

- Term loan facility- net of current portion of long-term debt

 

 

27,563

- FILO term loan

 

 

15,000

- Less: deferred financing costs on term loan

 

 

(3,578)

Subtotal

 

 

38,985

Total short-term & long-term debt

$

$

43,235

Revolving Credit Facility

On March 2, 2022, Hudson Technologies Company (“HTC”) and Hudson Holdings, Inc. (“Holdings”), as borrowers (collectively, the “Borrowers”), and Hudson Technologies, Inc (the “Company”) as a guarantor, entered into an Amended and Restated Credit Agreement (the “Amended Wells Fargo Facility”) with Wells Fargo Bank, National Association, as administrative agent and lender (“Agent” or “Wells Fargo”) and such other lenders as have or may thereafter become a party to the Amended Wells Fargo Facility. The Amended Wells Fargo facility amended and restated the prior Wells Fargo Facility entered into on December 19, 2019.

Under the terms of the Amended Wells Fargo Facility, the Borrowers: (i) immediately borrowed $15 million in the form of a “first in last out” term loan (the “FILO Tranche”) and (ii) may borrow from time to time, up to $75 million at any time consisting of revolving loans (the “Revolving Loans”) in a maximum amount up to the lesser of $75 million and a borrowing base that is calculated based on the outstanding amount of the Borrowers’ eligible receivables and eligible inventory, as described in the Amended Wells Fargo Facility. The Amended Wells Fargo Facility also contains a sublimit of $9 million for swing line loans and $2 million for letters of credit. The Company currently has a $0.9 million letter of credit outstanding. The FILO Tranche was repaid in full in July 2023 and may not be reborrowed.

Amounts borrowed under the Amended Wells Fargo Facility may be used for working capital needs, certain permitted acquisitions, and to reimburse drawings under letters of credit.

Interest under the Amended Wells Fargo Facility is payable in arrears on the first day of each month. Interest charges with respect to Revolving Loans are computed on the actual principal amount of Revolving Loans outstanding at a rate per annum equal to (A) with respect to Base Rate loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) between 1.25% and 1.75% depending on average monthly undrawn availability and (B) with respect to SOFR loans, the sum of the applicable SOFR rate plus between 2.36% and 2.86% depending on average quarterly undrawn availability. Interest charges with respect to the FILO Tranche were computed on the actual principal amount of FILO Tranche loans outstanding at a rate per annum equal to (A) with respect to Base Rate FILO Tranche loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) 6.5% and (B) with respect to SOFR FILO Tranche loans, the sum of the applicable SOFR rate plus 7.50%. The Amended Wells Fargo Facility also includes a monthly unused line fee ranging from 0.35% to 0.75% per annum determined based upon the level of average Revolving Loans outstanding during the immediately preceding month measured against the total Revolving Loans that may be borrowed under the Amended Wells Fargo Facility.

49

In connection with the closing of the Amended Wells Fargo Facility, the Company also entered into a First Amendment to Guaranty and Security Agreement, dated as of March 2, 2022 (the “Amended Revolver Guaranty and Security Agreement”), pursuant to which the Company and certain subsidiaries are continuing to unconditionally guarantee the payment and performance of all obligations owing by Borrowers to Wells Fargo, as Agent for the benefit of the revolving lenders. Pursuant to the Amended Revolver Guaranty and Security Agreement, Borrowers, the Company and certain other subsidiaries are continuing to grant to the Agent, for the benefit of the Wells Fargo Facility lenders, a security interest in substantially all of their respective assets, including receivables, equipment, general intangibles (including intellectual property), inventory, subsidiary stock, real property, and certain other assets.

The Amended Wells Fargo Facility contains a financial covenant requiring the Company to maintain at all times minimum liquidity (defined as availability under the Amended Wells Fargo Facility plus unrestricted cash) of at least $5 million, of which at least $3 million must be derived from availability. The Amended Wells Fargo Facility also contains a springing covenant, which takes effect only upon a failure to maintain undrawn availability of at least $11.25 million or upon an election by the Borrowers to increase the inventory component of the borrowing base, requiring the Company to maintain a Fixed Charge Coverage Ratio (FCCR) of not less than 1.00 to 1.00, as of the end of each trailing period of twelve consecutive months commencing with the month prior to the triggering of the covenant. The FCCR (as defined in the Wells Fargo Facility) is the ratio of (a) EBITDA for such period, minus unfinanced capital expenditures made during such period, to (b) the aggregate amount of (i) interest expense required to be paid (other than interest paid-in-kind, amortization of financing fees, and other non-cash interest expense) during such period, (ii) scheduled principal payments (but excluding principal payments relating to outstanding Revolving Loans under the Amended Wells Fargo Facility), (iii) all net federal, state, and local income taxes required to be paid during such period (provided, that any tax refunds received shall be applied to the period in which the cash outlay for such taxes was made), (iv) all restricted payments paid (as defined in the Amended Wells Fargo Facility) during such period, and (v) to the extent not otherwise deducted from EBITDA for such period, all payments required to be made during such period in respect of any funding deficiency or funding shortfall with respect to any pension plan. The FCCR covenant ceases after the Borrowers have been in compliance therewith for two consecutive months.

The Amended Wells Fargo Facility also contains customary non-financial covenants relating to the Company and the Borrowers, including limitations on Borrowers’ ability to pay dividends on common stock or preferred stock, and also includes certain events of default, including payment defaults, breaches of representations and warranties, covenant defaults, cross-defaults to other obligations, events of bankruptcy and insolvency, certain ERISA events, judgments in excess of specified amounts, impairments to guarantees and a change of control.

The Company evaluated the Amended Wells Fargo Facility in accordance with the provisions of ASC 470 to determine if the amendment was a modification or an extinguishment of debt and concluded that the amendment was a modification of the original revolving credit facility for accounting purposes. As a result, the Company capitalized an additional $0.9 million of deferred financing costs in connection with the amendment, which, along with the $0.2 million of remaining deferred financing costs of the original revolving facility, is being amortized over the five year term of the Amended Wells Fargo Facility.

The commitments under the Amended Wells Fargo Facility will expire and the full outstanding principal amount of the loans, together with accrued and unpaid interest, are due and payable in full on March 2, 2027, unless the commitments are terminated and the outstanding principal amount of the loans are accelerated sooner following an event of default or in the event of certain other cross-defaults.

Termination of 2022 Term Loan Facility

On March 2, 2022, Hudson Technologies Company (“HTC”), an indirect subsidiary of Hudson Technologies, Inc. (the “Company”), and the Company’s subsidiary Hudson Holdings, Inc., as borrowers (collectively, the “Borrowers”), and the Company, as guarantor, became obligated under a Credit Agreement (the “Term Loan Facility”) with TCW Asset Management Company LLC, as administrative agent (“Term Loan Agent”) and the lender parties thereto (the “Term Loan Lenders”).

Under the terms of the Term Loan Facility, the Borrowers immediately borrowed $85 million pursuant to a term loan (the “Term Loan”), which had a maturity date in March 2027. Amounts borrowed under the Term Loan Facility were used by the Borrowers to repay the outstanding principal amount and related fees and expenses under the Prior Term Loan Facility (as defined below) and for other corporate purposes. The Company paid approximately $4.3 million of term loan deferred financing costs.

50

During the third quarter of 2023, the Company repaid in full the remaining $32.5 million principal balance outstanding under its Term Loan Facility and the FILO Tranche. In conjunction with this payoff, the Company recorded $3.4 million of interest which included a non-cash write off of $3.1 million deferred financing costs and $0.3 million of other expense and fees.

Termination of Prior Term Loan Facility

In conjunction with entry into the new Term Loan Facility as described above, on March 2, 2022 the Company’s then-existing term loans, as amended (the “Prior Term Loan Facility”), which had a principal balance of approximately $63.9 million after payment of a $16.0 million excess cash flow amount thereunder, were repaid in full, together with associated required lender fees and expenses of $3.3 million, and the Prior Term Loan Facility was terminated. The termination of the Prior Term Loan Facility constituted an extinguishment of debt, which resulted in the Company recording an additional $4.6 million of interest expense during the first quarter of 2022, which included the aforementioned $3.3 million of prior lender fees and expenses and $1.3 million of pre-existing deferred financing costs from the Prior Term Loan Facility.

The Company was in compliance with all covenants under the Amended Wells Fargo Facility as of December 31, 2023.

The Company’s ability to comply with these covenants in future quarters may be affected by events beyond the Company’s control, including general economic conditions, weather conditions, regulations and refrigerant pricing. Therefore, the Company cannot make any assurance that it will continue to be in compliance during future periods.

The Company believes that it will be able to satisfy its working capital requirements for the foreseeable future from anticipated cash flows from operations and available funds under the Amended Wells Fargo Facility. Any unanticipated expenses, including, but not limited to, an increase in the cost of refrigerants purchased by the Company, an increase in operating expenses or failure to achieve expected revenues from the Company’s RefrigerantSide® Services and/or refrigerant sales or additional expansion or acquisition costs that may arise in the future would adversely affect the Company’s future capital needs. There can be no assurance that the Company’s proposed or future plans will be successful, and as such, the Company may require additional capital sooner than anticipated, which capital may not be available on acceptable terms, or at all.

CARES Act Loan

On April 23, 2020 the Company received a loan in the amount of $2.475 million from Meridian Bank under the Paycheck Protection Program (“PPP”) pursuant to the CARES Act. The loan had a term of two years, was unsecured, and bore interest at a fixed rate of one percent per annum, with the first nine months of principal and interest deferred. As a result of the COVID-19 pandemic, in applying for the loan the Company made a good faith assertion based upon the degree of uncertainty introduced to the capital markets and the industries affecting the Company’s customers and the Company’s dependency to curtail expenses to fund ongoing operations. The PPP loan proceeds were used in part to help offset payroll costs as stipulated in the legislation. All or a portion of the PPP loan could be forgiven by the U.S. Small Business Administration (“SBA”) upon application by the Company and upon documentation of expenditures in accordance with the SBA requirements. Under the CARES Act, loan forgiveness is available for the sum of documented payroll costs and other covered areas, such as rent payments, mortgage interest and utilities, as applicable. During the third quarter of 2021, the Company received forgiveness of the loan from the SBA, resulting in $2.475 million of Other income recorded in the Company’s Consolidated Income Statements.

51

Note 11 - Commitments and contingencies

Rents and operating leases

The Company utilizes leased facilities and operates equipment under non-cancelable operating leases through July 2030. Below is a table of key properties:

    

    

Lease

Annual

Expiration

Location

Rent

Date

Baton Rouge, Louisiana

$

30,000

 

5/2024

Champaign, Illinois

$

609,000

 

12/2024

Champaign, Illinois (2nd location)

$

349,000

9/2026

Charlotte, North Carolina

$

38,000

 

5/2025

Escondido, California

$

238,000

 

6/2027

Long Beach, California

$

28,800

 

2/2024*

Ontario, California

$

174,000

 

12/2024

Riverside, California

$

27,000

 

Month to Month

Rantoul, Illinois

$

36,000

Month to Month

Smyrna, Georgia

$

492,000

 

7/2030

Stony Point, New York

$

118,000

 

6/2026

Woodcliff Lake, New Jersey

$

236,000

8/2027

*

Lease was renewed on March 1, 2024.

The Company rents properties and various equipment under operating leases. Operating lease expense for the years ended December 31, 2023, 2022 and 2021 totaled approximately $1.7 million, $2.6 million and $3.1 million. In addition to the properties above, the Company does at times utilize public warehouse space on a month to month basis. The Company typically enters into short-term leases for the facilities and wherever possible extends the expiration date of such leases.

Note 12 - Share-Based Compensation

Share-based compensation represents the cost related to share-based awards, typically stock options or stock grants, granted to employees, non-employees, officers and directors. Share-based compensation is measured at grant date, based on the estimated aggregate fair value of the award on the grant date, and such amount is charged to compensation expense on a straight-line basis over the requisite service period. For the years ended December 31, 2023, 2022 and 2021, the share-based compensation expense of $2.3 million, $0.9 million and $0.5 million, respectively, is reflected in Selling, general and administrative expenses in the consolidated Income Statements.

Share-based awards have historically been made as stock options, and recently also as stock grants, issued pursuant to the terms of the Company’s stock option and stock incentive plans, (collectively, the “Plans”), described below. The Plans may be administered by the Board of Directors or the Compensation Committee of the Board or by another committee appointed by the Board from among its members as provided in the Plans. Presently, the Plans are administered by the Company’s Compensation Committee of the Board of Directors. As of December 31, 2023 there were 4,341,463 shares of the Company’s common stock available under the Plans for issuance for future stock option grants or other stock based awards.

Stock option awards, which allow the recipient to purchase shares of the Company’s common stock at a fixed price, are typically granted at an exercise price equal to the Company’s stock price at the date of grant. Typically, the Company’s stock option awards have vested from immediately to two years from the grant date and have had a contractual term ranging from three to ten years. Incentive Stock Options (“ISOs”) granted under the Plans may not be granted at a price less than the fair market value of the common stock on the date of grant (or 110% of fair market value in the case of persons holding 10% or more of the voting stock of the Company). Nonqualified options granted under the Plans may not be granted at a price less than the fair market value of the common stock. Options granted under the Plans expire not more than ten years from the date of grant (five years in the case of ISOs granted to persons holding 10% or more of the voting stock of the Company).

52

Effective September 17, 2014, the Company adopted its 2014 Stock Incentive Plan (“2014 Plan”) pursuant to which 3,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. Incentive Stock Options (ISOs) may be granted under the 2014 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2014 Plan is sooner terminated, the ability to grant options or other awards under the 2014 Plan will expire on September 17, 2024.

Effective June 7, 2018, the Company adopted its 2018 Stock Incentive Plan (“2018 Plan”) pursuant to which 4,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. ISOs may be granted under the 2018 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2018 Plan is sooner terminated, the ability to grant options or other awards under the 2018 Plan will expire on June 7, 2028.

Effective June 11, 2020, the Company adopted its 2020 Stock Incentive Plan (“2020 Plan”) pursuant to which 3,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. ISOs may be granted under the 2020 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2020 Plan is sooner terminated, the ability to grant options or other awards under the 2020 Plan will expire on June 11, 2030.

All stock options have been granted to employees and non-employees at exercise prices equal to or in excess of the market value on the date of the grant.

The Company determines the fair value of share-based awards at the grant date by using the Black-Scholes option-pricing model, and has utilized the “simplified” method, as prescribed by the SEC’s Staff Accounting Bulletin (“SAB”) No.110, Share-Based Payment, to compute expected lives of share based awards. The Company has opted to use the simplified method for stock options because management believes that the Company does not have sufficient historical exercise data to provide a reasonable basis upon which to estimate the expected term. The Company records forfeitures and cancellations as they occur. The following are the weighted-average assumptions:

Year ended

    

    

 

December 31, 

2023

2022

2021

 

Assumptions

 

  

 

  

 

  

Dividend yield

 

0

%  

0

%

0

%

Risk free interest rate

 

3.69%-4.89

%  

1.84%-4.27

%

0.29%-0.85

%

Expected volatility

 

71.73%-94

%  

91%-94

%

90%-101

%

Expected lives

 

1.5-2.0 years

 

1.5-2.75 years

 

2.5-5 years

The expected stock price volatility is based on the implied volatilities from traded options on our stock, historical volatility of our stock and other factors.

53

A summary of the activity for the Company’s Plans for the indicated periods is presented below:

    

    

Weighted

Average

Stock Options and Stock Appreciation Rights

Shares

Exercise Price

Outstanding at December 31, 2020

 

5,329,515

$

1.06

-Cancelled

 

(133,257)

$

2.02

-Exercised

 

(3,076,489)

$

1.16

 -Granted (1)

 

484,254

$

1.82

Outstanding at December 31, 2021

 

2,604,023

$

1.03

-Cancelled

 

(11,781)

$

3.75

-Exercised

 

(583,273)

$

1.15

 -Granted (2)

 

381,181

$

4.33

Outstanding at December 31, 2022

2,390,150

$

1.51

-Cancelled

(48,268)

$

5.67

-Exercised

(296,973)

$

2.68

 -Granted (3)

602,526

$

10.02

Outstanding at December 31, 2023

 

2,647,435

$

3.31

(1)Options to purchase 463,754 shares were granted in 2021, all of which were vested immediately in 2021. In addition, 20,500 stock appreciation rights were granted in December 2021 with a six- month vesting period.
(2)Options to purchase 381,181 shares were granted in 2022, of which options to purchase 40,588 shares vested immediately in 2022 and the remainder vested 50% immediately and 50% one year after the date of the grants.
(3)Options to purchase 584,826 shares were granted in 2023, of which options to purchase 337,727 shares vested immediately in 2023 and the remainder vested 50% immediately and 50% one year after the date of the grants. In addition, 17,700 stock appreciation rights were granted in January 2023 with a six- month vesting period.

The following is the weighted average contractual life in years and the weighted average exercise price at December 31, 2023 and 2022 of:

    

    

Weighted 

    

Average

Remaining

Weighted

Number of

Contractual

Average

December 31, 2023

Options

Life (Years)

Exercise Price

Options outstanding and vested

 

2,400,336

 

4.47

$

2.60

    

    

Weighted 

    

Average

Remaining

Weighted

Number of

Contractual

Average

December 31, 2022

Options

Life(Years)

Exercise Price

Options outstanding and vested

 

2,218,799

 

5.39

$

1.33

54

The intrinsic values of options outstanding at December 31, 2023 and 2022 are $26.9 million and $20.6 million, respectively.

The intrinsic value of options unvested at December 31, 2023 and 2022 are $0.8 million and $1.1 million, respectively. As of December 31, 2023 there was $0.9 million unrecognized share based compensation expense related to non-vested options.

The intrinsic values of options vested and exercised during the years ended December 31, 2023, 2022 and 2021 were as follows:

    

2023

    

2022

    

2021

Intrinsic value of options vested

$

2,886,080

$

1,249,506

$

1,481,858

Intrinsic value of options exercised

$

2,565,056

$

4,051,422

$

7,088,578

Note 13 – Benefit Plan

The Company maintains a 401(k)-benefit plan for its employees, which generally allows participants to make contributions via salary deductions up to allowable Internal Revenue Service limits on a tax-deferred basis. Such deductions may be matched in part by discretionary contributions by the Company.  The matching contributions for 2023, 2022 and 2021 were $561,852, $472,002, and $281,586, respectively.

55

SIGNATURES

Pursuant to the requirements of Section 13 or 15 (d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.

HUDSON TECHNOLOGIES, INC.

By:

/s/ Brian F. Coleman

Brian F. Coleman, Chairman and Chief Executive Officer

Date:

March 14, 2024

Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated.

Signature

    

Title

   

Date

/s/ Brian F. Coleman

Chairman of the Board, President and Chief Executive Officer (Principal Executive Officer)

March 14, 2024

Brian F. Coleman

/s/ Nat Krishnamurti

Chief Financial Officer (Principal Financial and Accounting Officer)

March 14, 2024

Nat Krishnamurti

/s/ Vincent P. Abbatecola

Director

March 14, 2024

Vincent P. Abbatecola

/s/ Nicole Bulgarino

Director

March 14, 2024

Nicole Bulgarino

/s/ Kathleen L. Houghton

Director

March 14, 2024

Kathleen L. Houghton

/s/ Loan Mansy

Director

March 14, 2024

Loan Mansy

/s/ Richard Parrillo

Director

March 14, 2024

Richard Parrillo

/s/ Eric A. Prouty

Director

March 14, 2024

Eric A. Prouty

56

EX-21 2 hdsn-20231231xex21.htm EX-21

Exhibit 21:

Subsidiaries of the Registrant

Hudson Technologies Company incorporated in the State of Delaware

Hudson Holdings, Inc. incorporated in the State of Nevada

Glacier International, Inc. incorporated in the State of New York

Glacier Trading Corp., incorporated in the State of New York

HFC International, Inc., incorporated in the State of New York

HFC Traders, Inc., incorporated in the State of New York

RGIT Trading Corp., incorporated in the State of New York

RCTI Corp., incorporated in the State of New York

RCTI Trading, Inc., incorporated in the State of New York

RGIT, Inc., incorporated in the State of New York

RGT Enterprises, Inc., incorporated in the State of New York

RCT International, Inc., incorporated in the State of New York

CCNY International, Inc. incorporated in the State of New York

CCNY Traders, Inc. incorporated in the State of New York

CCS Trading, Inc. incorporated in the State of New York

NYCCS Trading Corp. incorporated in the State of New York

RRC International, Inc. incorporated in the State of New York

RRC Technical Corp. incorporated in the State of New York

RRCA Corp. incorporated in the State of New York

RRCA Enterprises, Inc. incorporated in the State of New York

RRI Enterprises, Inc. incorporated in the State of New York

RRI Trading Corp. incorporated in the State of New York


EX-23.1 3 hdsn-20231231xex23d1.htm EX-23.1

Exhibit 23.1

Consent of Independent Registered Public Accounting Firm

Hudson Technologies, Inc.

Woodcliff Lake, New Jersey

We hereby consent to the incorporation by reference in the Registration Statements on Form S-3 (No. 333- 269221) and Form S-8 (No. 333-129057, No. 333-164650, No. 333-202955, No. 333-228971 and No. 333-239561) of Hudson Technologies, Inc. (the Company) of our reports dated March 14, 2024 relating to the consolidated financial statements and the effectiveness of the Company’s internal control over financial reporting, which appear in this Annual Report on Form 10-K.

/s/ BDO USA, P.C.

Stamford, CT

March 14, 2024


EX-31.1 4 hdsn-20231231xex31d1.htm EX-31.1

Exhibit 31.1:

Hudson Technologies, Inc.

Certification of Principal Executive Officer

I, Brian F. Coleman, certify that:

1.

I have reviewed this annual report on Form 10-K of Hudson Technologies, Inc.;

2.

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

3.

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

4.

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

a)

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

b)

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

c)

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

d)

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

5.

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

a)

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

b)

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

Date: March 14, 2024

 

 

/s/ Brian F. Coleman

 

Brian F. Coleman

 

Chief Executive Officer and Chairman of the Board


EX-31.2 5 hdsn-20231231xex31d2.htm EX-31.2

Exhibit 31.2:

Hudson Technologies, Inc.

Certification of Principal Financial Officer

I, Nat Krishnamurti, certify that:

1.

I have reviewed this annual report on Form 10-K of Hudson Technologies, Inc.;

2.

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

3.

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

4.

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

a)

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

b)

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

c)

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

d)

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

5.

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

a)

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

b)

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

Date: March 14, 2024

 

 

/s/ Nat Krishnamurti

 

Nat Krishnamurti

 

Chief Financial Officer


EX-32.1 6 hdsn-20231231xex32d1.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 Annual Report of Hudson Technologies, Inc. (the “Company”) on Form 10-K for the period ended December 31, 2023 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Brian F. Coleman, as Chief Executive Officer and Chairman of the Board of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to the best of my knowledge:

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

 

/s/ Brian F. Coleman

 

Brian F. Coleman

 

Chief Executive Officer and Chairman of the Board

 

 

 

March 14, 2024


EX-32.2 7 hdsn-20231231xex32d2.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 Annual Report of Hudson Technologies, Inc. (the “Company”) on Form 10-K for the period ended December 31, 2023 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Nat Krishnamurti, as Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to the best of my knowledge:

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

 

/s/ Nat Krishnamurti

 

Nat Krishnamurti

 

Chief Financial Officer

 

 

 

March 14, 2024


EX-97 8 hdsn-20231231xex97.htm EX-97

Exhibit 97

HUDSON TECHNOLOGIES, INC.

CLAWBACK POLICY

The Board of Directors (the “Board”) of Hudson Technologies, Inc. (the “Company”) believes that it is in the best interests of the Company and its shareholders to adopt this Clawback Policy (the “Policy”), which provides for the recovery of certain incentive compensation in the event of an Accounting Restatement (as defined below). This Policy is designed to comply with, and shall be interpreted to be consistent with, Section 10D of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), Rule 10D-1 promulgated under the Exchange Act (“Rule 10D-1”) and Nasdaq Listing Rule 5608 (the “Listing Standards”).

1.Administration

Except as specifically set forth herein, this Policy shall be administered by the Board or, if so designated by the Board, a committee thereof (the Board or such committee charged with administration of this Policy, the “Administrator”). The Administrator is authorized to interpret and construe this Policy and to make all determinations necessary, appropriate or advisable for the administration of this Policy. Any determinations made by the Administrator shall be final and binding on all affected individuals and need not be uniform with respect to each individual covered by the Policy. In the administration of this Policy, the Administrator is authorized and directed to consult with the full Board or such other committees of the Board, such as the Audit Committee or the Compensation Committee, as may be necessary or appropriate as to matters within the scope of such other committee’s responsibility and authority. Subject to any limitation at applicable law, the Administrator may authorize and empower any officer or employee of the Company to take any and all actions necessary or appropriate to carry out the purpose and intent of this Policy (other than with respect to any recovery under this Policy involving such officer or employee).

2.Definitions

As used in this Policy, the following definitions shall apply:

Accounting Restatement” means an accounting restatement of the Company’s financial statements due to the Company’s material noncompliance with any financial reporting requirement under the securities laws, including any required accounting restatement to correct an error in previously issued financial statements that is material to the previously issued financial statements, or that would result in a material misstatement if the error were corrected in the current period or left uncorrected in the current period.

Applicable Period” means the three completed fiscal years immediately preceding the date on which the Company is required to prepare an Accounting Restatement, as well as any transition period (that results from a change in the Company’s fiscal year) within or immediately following those three completed fiscal years (except that a transition period that comprises a period of at least nine months shall count as a completed fiscal year). The “date on

1


which the Company is required to prepare an Accounting Restatement” is the earlier to occur of (a) the date the Board, the Audit Committee or the Chief Financial Officer concludes, or reasonably should have concluded, that the Company is required to prepare an Accounting Restatement or (b) the date a court, regulator or other legally authorized body directs the Company to prepare an Accounting Restatement, in each case regardless of if or when the restated financial statements are filed.

Covered Executives” means the Company’s current and former executive officers, as determined by the Administrator in accordance with the definition of executive officer set forth in Rule 10D-1 and the Listing Standards, which are defined as follows: the Company’s president, principal financial officer, principal accounting officer (or if there is no such accounting officer, the controller), any vice president of the issuer in charge of a principal business unit, division or function (such as sales, administration or finance), any other officer who performs a policy-making function, or any other person who performs similar policy-making functions for the Company.

Erroneously Awarded Compensation” has the meaning set forth in Section 5 of this Policy.

A “Financial Reporting Measure” is any measure that is determined and presented in accordance with the accounting principles used in preparing the Company’s financial statements, and any measure that is derived wholly or in part from such measure. Financial Reporting Measures include but are not limited to the following (and any measures derived from the following): Company stock price; total shareholder return (“TSR”); revenues; net income; operating income; profitability of one or more reportable segments; financial ratios (e.g., accounts receivable turnover and inventory turnover rates); earnings before interest, taxes, depreciation and amortization (“EBITDA”); funds from operations and adjusted funds from operations; liquidity measures (e.g., working capital, operating cash flow); return measures (e.g., return on invested capital, return on assets); earnings measures (e.g., earnings per share); sales per square foot or same store sales, where sales is subject to an Accounting Restatement; revenue per user, or average revenue per user, where revenue is subject to an Accounting Restatement; cost per employee, where cost is subject to an Accounting Restatement; any of such financial reporting measures relative to a peer group, where the Company’s financial reporting measure is subject to an Accounting Restatement; and tax basis income. A Financial Reporting Measure need not be presented within the Company’s financial statements or included in a filing with the Securities Exchange Commission.

Incentive-Based Compensation” means any compensation that is granted, earned or vested based wholly or in part upon the attainment of a Financial Reporting Measure. Incentive-Based Compensation is “received” for purposes of this Policy in the Company’s fiscal period during which the Financial Reporting Measure specified in the Incentive-Based Compensation award is attained, even if the payment or grant of such Incentive-Based Compensation occurs after the end of that period.

3.Covered Executives; Incentive-Based Compensation

2


This Policy applies to Incentive-Based Compensation received by a Covered Executive (a) after beginning services as a Covered Executive; (b) if that person served as a Covered Executive at any time during the performance period for such Incentive-Based Compensation; and (c) while the Company had a listed class of securities on a national securities exchange.

4.Required Recoupment of Erroneously Awarded Compensation in the Event of an Accounting Restatement

In the event the Company is required to prepare an Accounting Restatement, the Company shall promptly recoup the amount of any Erroneously Awarded Compensation received by any Covered Executive, as calculated pursuant to Section 5 hereof, during the Applicable Period.

5.Erroneously Awarded Compensation: Amount Subject to Recovery

The amount of “Erroneously Awarded Compensation” subject to recovery under the Policy, as determined by the Administrator, is the amount of Incentive-Based Compensation received by the Covered Executive that exceeds the amount of Incentive-Based Compensation that would have been received by the Covered Executive had it been determined based on the restated amounts.

Erroneously Awarded Compensation shall be computed by the Administrator without regard to any taxes paid by the Covered Executive in respect of the Erroneously Awarded Compensation.

By way of example, with respect to any compensation plans or programs that take into account Incentive-Based Compensation, the amount of Erroneously Awarded Compensation subject to recovery hereunder includes, but is not limited to, the amount contributed to any notional account based on Erroneously Awarded Compensation and any earnings accrued to date on that notional amount.

For Incentive-Based Compensation based on stock price or TSR: (a) the Administrator shall determine the amount of Erroneously Awarded Compensation based on a reasonable estimate of the effect of the Accounting Restatement on the stock price or TSR upon which the Incentive-Based Compensation was received; and (b) the Company shall maintain documentation of the determination of that reasonable estimate and provide such documentation to The Nasdaq Stock Market (“Nasdaq”).

6.Method of Recoupment

The Administrator shall determine, in its sole discretion, the timing and method for promptly recouping Erroneously Awarded Compensation hereunder, which may include without limitation (a) seeking reimbursement of all or part of any cash or equity-based award, (b) cancelling prior cash or equity-based awards, whether vested or unvested or paid or unpaid, (c) cancelling or offsetting against any planned future cash or equity-based awards, (d) forfeiture of deferred compensation, subject to compliance with Section 409A of the Internal Revenue Code and the regulations promulgated thereunder and (e) any other method authorized by applicable law or contract. Subject to compliance with any applicable law, the Administrator may affect recovery under this Policy from any amount otherwise payable to the Covered Executive, including

3


amounts payable to such individual under any otherwise applicable Company plan or program, including base salary, bonuses or commissions and compensation previously deferred by the Covered Executive.

The Company is authorized and directed pursuant to this Policy to recoup Erroneously Awarded Compensation in compliance with this Policy unless the Compensation Committee of the Board has determined that recovery would be impracticable solely for the following limited reasons, and subject to the following procedural and disclosure requirements:

The direct expense paid to a third party to assist in enforcing the Policy would exceed the amount to be recovered. Before concluding that it would be impracticable to recover any amount of Erroneously Awarded Compensation based on expense of enforcement, the Administrator must make a reasonable attempt to recover such erroneously awarded compensation, document such reasonable attempt(s) to recover and provide that documentation to Nasdaq;
Recovery would violate home country law of the issuer where that law was adopted prior to November 28, 2022. Before concluding that it would be impracticable to recover any amount of Erroneously Awarded Compensation based on violation of home country law of the issuer, the Administrator must satisfy the applicable opinion and disclosure requirements of Rule 10D-1 and the Listing Standards; or
Recovery would likely cause an otherwise tax-qualified retirement plan, under which benefits are broadly available to employees of the Company, to fail to meet the requirements of 26 U.S.C. 401(a)(13) or 26 U.S.C. 411(a) and regulations thereunder.

7.No Indemnification of Covered Executives

Notwithstanding the terms of any indemnification or insurance policy or any contractual arrangement with any Covered Executive that may be interpreted to the contrary, the Company shall not indemnify any Covered Executives against the loss of any Erroneously Awarded Compensation, including any payment or reimbursement for the cost of third-party insurance purchased by any Covered Executives to fund potential clawback obligations under this Policy.

8.Administrator Indemnification

Any members of the Administrator, and any other members of the Board who assist in the administration of this Policy, shall not be personally liable for any action, determination or interpretation made with respect to this Policy and shall be fully indemnified by the Company to the fullest extent under applicable law and Company policy with respect to any such action, determination or interpretation. The foregoing sentence shall not limit any other rights to indemnification of the members of the Board under applicable law or Company policy.

9.Effective Date; Retroactive Application

This Policy shall be effective as of October 2, 2023 (the “Effective Date”). The terms of this Policy shall apply to any Incentive-Based Compensation that is received by Covered Executives

4


on or after the Effective Date, even if such Incentive-Based Compensation was approved, awarded, granted or paid to Covered Executives prior to the Effective Date. Without limiting the generality of Section 6 hereof, and subject to applicable law, the Administrator may affect recovery under this Policy from any amount of compensation approved, awarded, granted, payable or paid to the Covered Executive prior to, on or after the Effective Date.

10.Amendment; Termination

The Board may amend, modify, supplement, rescind or replace all or any portion of this Policy at any time and from time to time in its discretion, and shall amend this Policy as it deems necessary to comply with applicable law or any rules or standards adopted by a national securities exchange on which the Company’s securities are listed.

11. Other Recoupment Rights; Company Claims

The Board intends that this Policy shall be applied to the fullest extent of the law. Any right of recoupment under this Policy is in addition to, and not in lieu of, any other remedies or rights of recoupment that may be available to the Company under applicable law or pursuant to the terms of any similar policy in any employment agreement, equity award agreement, or similar agreement and any other legal remedies available to the Company.

Nothing contained in this Policy, and no recoupment or recovery as contemplated by this Policy, shall limit any claims, damages or other legal remedies the Company or any of its affiliates may have against a Covered Executive arising out of or resulting from any actions or omissions by the Covered Executive.

12.Successors

This Policy shall be binding and enforceable against all Covered Executives and their beneficiaries, heirs, executors, administrators or other legal representatives.

13.Exhibit Filing Requirement

A copy of this Policy and any amendments thereto shall be posted on the Company’s website and filed as an exhibit to the Company’s annual report on Form 10-K.

5


GRAPHIC 9 hdsn-20231231x10k001.jpg GRAPHIC begin 644 hdsn-20231231x10k001.jpg M_]C_X 02D9)1@ ! @ 0 ! #_VP!# ," @," @,# P,$ P,$!0@%!00$ M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_ MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04 M%!04%!04%!04%!04%!04%!04%!04%!3_P 1" &I HP# 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#].])TFQET MJR=[*W=VA1F9HE))*C))Q5O^Q=._Y\+7_ORO^%&B_P#(&L/^O>/_ -!%7: * M7]BZ=_SX6O\ WY7_ H_L73O^?"U_P"_*_X5=HH I?V+IW_/A:_]^5_PH_L7 M3O\ GPM?^_*_X5=HH I?V+IW_/A:_P#?E?\ "C^Q=._Y\+7_ +\K_A5VB@"E M_8NG?\^%K_WY7_"C^Q=._P"?"U_[\K_A5VB@"E_8NG?\^%K_ -^5_P */[%T M[_GPM?\ ORO^%7:* *7]BZ=_SX6O_?E?\*/[%T[_ )\+7_ORO^%7:* *7]BZ M=_SX6O\ WY7_ H_L73O^?"U_P"_*_X5=HH I?V+IW_/A:_]^5_PH_L73O\ MGPM?^_*_X5=HH I?V+IW_/A:_P#?E?\ "C^Q=._Y\+7_ +\K_A5VB@"E_8NG M?\^%K_WY7_"C^Q=._P"?"U_[\K_A6;JOQ \+Z%J\6E:EXDTC3]4FP([*ZOHH MIGSTPC,&.?85MP7,5U&7AE29 S(6C8,-RL589'<$$$=B"* *W]BZ=_SX6O\ MWY7_ H_L73O^?"U_P"_*_X5=HH I?V+IW_/A:_]^5_PH_L73O\ GPM?^_*_ MX5=HH I?V+IW_/A:_P#?E?\ "C^Q=._Y\+7_ +\K_A5VLG5?%6EZ)K&CZ5>W M7DW^L2216,7ENWG,D9D<9 (7"J3\Q'3CF@"S_8NG?\^%K_WY7_"C^Q=._P"? M"U_[\K_A5VB@"E_8NG?\^%K_ -^5_P */[%T[_GPM?\ ORO^%7:* *7]BZ=_ MSX6O_?E?\*/[%T[_ )\+7_ORO^%7:Y3Q3\4?#/@N[-MJVH/!*BQO-Y-K-.ML MCL51YFC1A"C$$!I"H.#SP: -[^Q=._Y\+7_ORO\ A1_8NG?\^%K_ -^5_P * MQ-<^*?@OPQJ+Z?K/B_0=)OT 9K6^U.&&501D$JS C(YJO)\7_!(\.ZKKL'BG M2]1TK2D$E[<:;"!2<#<(MQY[<=C0!T?\ 8NG?\^%K_P!^5_PH_L73O^?" MU_[\K_A5Q6#J&4Y!&0:6@"E_8NG?\^%K_P!^5_PH_L73O^?"U_[\K_A5FXN( MK2WEGGE2&")2\DDC!510,DDG@ #O6%X>^(GA3Q;)<)H?B?1M:>W3S)ET^_BG M,2?WF",<#W- &I_8NG?\^%K_ -^5_P */[%T[_GPM?\ ORO^%4?#7C?PYXS6 MX;P_K^EZZMN0)CIM['<",G.-VQCC.#C/H:VZ *7]BZ=_SX6O_?E?\*/[%T[_ M )\+7_ORO^%7:* *7]BZ=_SX6O\ WY7_ H_L73O^?"U_P"_*_X5FZK\0/"^ MA:O%I6I>)-(T_5)L".RNKZ**9\],(S!CGV%;<%S%=1EX94F0,R%HV##I% %W^Q=._Y\+7_ORO\ MA1_8NG?\^%K_ -^5_P *NT4 4O[%T[_GPM?^_*_X4?V+IW_/A:_]^5_PJ[7+ MZ[\4O!?A?47T_6?%^@Z1?Q@,]K?:G##*H(R"59@1D<]* -O^Q=._Y\+7_ORO M^%']BZ=_SX6O_?E?\*CT+Q%I7BBP6^T;4[/5K)B5%S8W"31D]QN4D5HT 4O[ M%T[_ )\+7_ORO^%']BZ=_P ^%K_WY7_"K,%S%=*S0RI*JLR$HP8!E)##CN"" M".Q%24 4O[%T[_GPM?\ ORO^%']BZ=_SX6O_ 'Y7_"KM% %+^Q=._P"?"U_[ M\K_A1_8NG?\ /A:_]^5_PJ[10!2_L73O^?"U_P"_*_X4?V+IW_/A:_\ ?E?\ M*NT4 4O[%T[_ )\+7_ORO^%']BZ=_P ^%K_WY7_"KM% %+^Q=._Y\+7_ +\K M_A1_8NG?\^%K_P!^5_PJ[10!2_L73O\ GPM?^_*_X4?V+IW_ #X6O_?E?\*N MT4 4O[%T[_GPM?\ ORO^%']BZ=_SX6O_ 'Y7_"KM% %+^Q=._P"?"U_[\K_A M1_8NG?\ /A:_]^5_PJ[10!2_L73O^?"U_P"_*_X4?V+IW_/A:_\ ?E?\*NT4 M 4O[%T[_ )\+7_ORO^%']BZ=_P ^%K_WY7_"KM% %+^Q=._Y\+7_ +\K_A7$ M^-H([+58DMXU@0PABL2A03N;G KT.O/_ (@?\AF'_KW7_P!":@#L]%_Y UA_ MU[Q_^@BKM4M%_P"0-8?]>\?_ *"*NT %%%% !1110 4444 %%%% !1110 44 M44 %%%% !1110 5R_P 4=AH \U_9^\/:5:?!KPY+;I%>/J^GQ7NH7 M5-\KRL>7)9F'S9].U5=5C7P-J?@[X<>%KB3P];:L]_VDM(R22PC$T,CQ*2 M2=J.H&> *T/$?PLT?Q!INE6Z37VE7>E7!NK#5+&X_P!+MY2"'??('#[PS!A( M .0: /(_'OQ'\=^"_"?Q-TR+78)M7\+0VE_9ZU/81M+<6L^X!)(UVQK*K( MPWA-I&/DR:ZV74/%3?$K5/#/_"67,=I<^'UU>*>.RMA+9S"4QLL.8RI0_*<2 MB1A@@-SD;7B+X(:;XH\':SH%]KFM%M:D234]422#[7=A%"JA)B,:)A5^6-%' M!Q]YLO?X.A_%K>(SXO\ $/\ :3:3_8QQ]C$?E8^_M%OC?O\ WF>F[C&WY: / M.M*^)WC7Q)HWP5O(]:M=/7Q.TEOJ8CL%=Y'6"5MZLS8490$*%X/4D?*;^H^. M/%GA*\^('AJZ\46LLNEVECJ&G^(M9M41HH;B5HWCD6! KR#8WEA8_F9E!![X M7C7X=+X#N/A1X3TNX\8:CIVDZE/<'5;2P>XET^)X)$0F6&W\O D8?*ZMP3N! M3BO4K[X(:-JNAZK97VI:K=ZEJ=Q;W=QKCS1K>&6!@T#+M01*$*C"B,+U)4DD MD \AUWXL^.M(\'?%866MW:7/AI;*[L+_ %_2H%O'AF3+*T<81%.1N4O&& )# M)GIZ'J^N>,/"OQ*\!Z9<>(XM3TKQ#J5Z98&TZ.*2.)+(R)"'!.5$BLV<;B"H M+'!W3>)/V<])\41^)5NO$OB.,^(XK:+4WBGMP9_)!"G!@(7.>0H"^@6NBU7X M6PZUKW@_6+O7]7DO/#)=H"/LZK6[3 0\DKD?)L R< &@#A?A_P#$[5+W MQA8Z%XCU>^T;Q-)/<37?A[5["...6)8WP-/GC0"6-6*-\SNY"DY&"#GWGQ$\ M6R_"4?%JPUPM9H6O9/#,EM!]E-D)BAC$@3SA,$&=WF;=X(V <5Z5IGPGL-.U M/1;F35=5U"UT3+:;I]Y+&\-M(8VC,@8()&.UV&'=E&[A1A<4[/X):1837$$& MJ:O'X>GO/M[>&_/C-B)O,$I(_=^:$,@W&,2;"2"W!4.P@\UE7.< G(&65IJ.E/:P1PVXN\* MCVK(@DPCLHQ(\FY<\@U'\.=#OT_:'^)A>-+?S(A(B&YB%O'<,(0A94#X21BKLG5N5/2NT M\4_"D^*?&FD^)3XLU[3;K2O,^QVUD+3R(O,4+)Q);NS;@.=S''\.VM7XD^ ; M3XG>#=0\-7]]>Z?8WP59Y=/:-92H8-M!=' !P,\9]Z .#D\1:]X:^*FO6&M> M)M0ET2^T%M2T:%+:T40R(VVX16$6YW3="4#$@ASN#$9K'\0^*/'D>I/X,TFZ MU[4?$&F:+!?W&IZ=#I)>6YF:4*)5N&B3R5,>,1)N.>67'S>G^(?AII7BJY\+ M76IRW4]YX=N5NK:X#JCRN$VD2!5 *L=K%0%&5'0<5C?$?X':+\1];L-;?4]; M\-Z[9Q&W75?#M\;.YD@)R8G8 Y3/..OO0!U/@>\UR_\ !^CW'B6PCTSQ ]LA MO[2)U=(YL?.%*LPQGD8)X/6O*?%5CJGPF^*D%YX8@A.F>.Y397%J[!8[35 A M9+L)W5HT?>HP6*+W->R:)HUMX>TFUTZT\S[/;IL5II6ED;N69V)9F)))8DDD MDFN7\??#!?'VJZ)?/XEUK17T><75K%IGV78)]K+YC>;!(2=KLN,[<'IGF@#S MOQ+J.O:#KM[X$\"VVL0W.FZ9'J3WNDQZ:\MS=3O*/,N/MDB!E+1EF,8W$N?F M3 #4_''CSQ_9:%;->:FWAWQ%!X:;49]#T*V@O+C[8F[?).TJR11VN%&")%9C MN4,Q %>@?$3X&:-\1=8T[69-5USP]KUE";8:OX?OOL=S+"3DQ.P4Y7/.,#!S MC%)=? K0YKNXEM]1UBQCO-)_L:]@@NPPO(?G(:1Y%:3S 9';>K DL=V[)H X MG3_&?CGQOXTT#2[3Q+;:#;:YX,76HOL^EI,;6ZWP L3(QWC+M\ORC:2.N&'J MGQ/UN_\ #/PT\4:MIRF74K'2[BXMPJY/F+&Q4X[X(SCVKGO#'P-LO"OBG1== MMO$NO7$VDZ6-&AMKE[9H6MAM^5@( V245LJP.5],@^D2(LJ,CJ'1@0RL,@CT M- 'FO[/WA[2K3X->');=(KQ]7T^*]U"[E4/)>SRIOE>5CRY+,P^;/IVK(U.U MN?A?\0/AAX:\.:A+8>&-2NM1AN-'$,+0X$4MPNQBF] KG 56 VJHQUST6B_! MVW\*2-#X;\2Z[X>T8R&0:+9O;26D9))81B:&1XE)).U'4#/ %7]>^%NEZROA M]X+N_P!)O-"NFN[*]M)5>8.Z,D@(?$>G& M;6UU]_)O(Y0;M#F-MLT4@ 4CL,MQO+8&+FJ? :TU:Y\;2S>*O$0'BV%;>_B1 MK0(D:C:JQ#[/\N$RG.20Q)RV& !E6'BOQ%K'Q:TS2AKMQ:Z5K7@Y]4%K%;VY M^QW7F1()(F:,LKVWP=L;2]\-WR:YK/]H:+8/I0N_,A$EY:L5/E3$1 <%%PT M81AC.[))K'TC]G'0-#D\,?9-8UY8/#]Q)I]7LO$4>HP75W9V,$>G031(71M/D:)99 MN,;I!(C9X)((KGOAUKGB?P7\'?">HV7B>[NQJOC)=.NHM0@@E*Q/J4R2F-PB ML&DZLSE^IV[.WK^B? /2-"F\*/%KFNS+X8:9=-CFN(ML<,B;# <1#<@7@,?G M'3>1Q5:3]G?2/[$LM(@\0:_::?8ZR-;M88I;X^6)E @PQ$HD1RX(VH" MN2:S?%7C;XB:KJGB73?!,.L:AJ'AF>"RB=4TO[+?2^3%*YN_-DCE7<'('D*@ M'49^ZOK>I?#S2-5\>:/XOF$RZOI=M-:Q;'Q&Z28^^N/F*_-MYXWMUXQR_BW] MG[0?%7C1O%$6K>(/#NI3HD=^/#^IO9)J*)]T3[1EL#C*E3COTH ]'L99I[*W MDN(?LUP\:M)"6#>6Q'*Y'!P>,BO'/B[J5QH_QR^%-W::1>:W.L&KJ+2P:%97 M'DQ<@S21I@9SRP]LU[+:VT5E;16\""*&)!&B+T50, #\*XCQ/\)E\3^.]'\5 M/XIUS3[S2!(MG:VGV3R(A(H648>W9FWA1GSU1UM)-"B8_:8)K7>LKW2X"I.2?NC/&#N.^%==L[+5XO#6 MN0L^H?:!I0MK**2/,4MHR2M.61L B96W#_V=_#O@?Q*VIZ7JGB"/3A, MUQ!X<;4W_LJVE8[BZ6XP,@Y(#$@'D 8& #Q[X?ZEXG\(_";P9K%EXRU64:AX MR_L^ZLKN"TEBDBDU*9)?G,'F[G^\6W]2<8& .G^(_C_QOX6TWXRR:;XF!?P\ MUE=:>UWI\,AMXIHRSQ+M"@X)&&<.0!R"3FO08_@)HD/A*;P]'JFKQV2ZF-5L MI!-$9-.F$YG7R)OV<=#\5#Q(USKWB*"?Q%%!!J4L M%Y'^^2(# V-&4&2,DA(/".LW7B;6_MGAK+6^P6H2X=EV2/,/( MY+H2IV;0 ?_ M ! _Y#,/_7NO_H35Z!7G_P 0/^0S#_U[K_Z$U '9Z+_R!K#_ *]X_P#T$5=J MEHO_ "!K#_KWC_\ 017'?&/Q9K/@_P .VMUI#P6227(CN]5N[1KJ&QBVL?,D MC5T(4D!2Y8*@;&&_NU>XEO;JTGNH+"UCQYD\D4 WL!N W( MOWF9U"F@#T:BO,I_B;J%EJ2)#<*_F%?+W$((] MI/\ %OQ\IT_ 7C#6-8OX[76TLUDOM/CU>S%E$R"&%VP89"SMO=,I^\&T-N.% M7;R =U17DUS\7M3TFVFUB\M;6XTB^2\_LJU@C9)T>W;:HFD+E6$N"W"+LP = M^Z_^A-7H%>?_ ! _Y#,/_7NO_H34 =GHO_(& ML/\ KWC_ /0163X\T/6/$&@O::)J5IIUVS#<;^T-S#(N>0RJZ-GN"&'N#6MH MO_(&L/\ KWC_ /015V@#@-.^&E]HTG@>*QUJW&G^&X&@DBN+ O+=;H_+.UUE M58ACH-C <#H,5!JO@CQ%XK:9,#I_FK/I\CC;\GGD+* @*ON9 M?F.Z/G8OHU% 'GD/PBAM]3CA6_4^%UE6\.CO 3(URL(A#>=O_P!7M ;9LSO& M=V/EJSX8^'^J>&W,[:Y;WUU!!!IUE)-8,!#8QODHX$OSRL.#+E1E4/E\$-W5 M% 'F[_!M+UKRTOM5,^B+'=)IMG#!Y?_$#_ )#,/_7NO_H35Z!7G_Q _P"0S#_U[K_Z$U '9Z+_ M ,@:P_Z]X_\ T$5=JEHO_(&L/^O>/_T$5=H **** "BBB@ HHHH **** "BB MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBO /B[^T9&R/1B3]UF7OGY5_B/!%=>&PM7%SY*:]7T2[M]$85:T*,>:?_ M 7Z'6_&KX_Z)\(+-+8J=6\2W( M-(MSEV)X#/C.U<_B>P/)'CWAG]ES7OBY MX@'CCXH7WV.]O9DF?1;6$*QA5<+&[ _N^B#'+ @G<,A@$Z6!?O/>?5^4>R\]V M<:H2Q+4\2M.D?U?=_@0V5G!IUG!:6L26]M!&L4448PJ(HPJ@=@ *FHHKP6[ MZL],****0!1110 5Y_\ $#_D,P_]>Z_^A-7H%>?_ ! _Y#,/_7NO_H34 =GH MO_(&L/\ KWC_ /017'?&/Q9K/@_P[:W6D/!9))0RJZ-GN"&'N#0!3N_$NLV?BGPEISP:<]EJD,YNYXI79Q*D8=1$, ;# MS\Q.>@QWI?B9XSN/!?AV2ZL+>*[U$D&.&9L(L891)(V#G"A@..K,@X!R,[3O MAI?:-)X'BL=:MQI_AN!H)(KBP+RW6Z/RSM=956(8Z#8P' Z#%4_$WPM?XF:1 M>_\ "07-YIVIL\EO;S:=>W5K&+<2EH_,@BN2CL0.I.3D'"'Y5 'ZC\2=0TW7 M+N\E2U'A>UU#^R)(Q"QNS-Y6\S!]^W9N(C\O9GJV['RU>\!>,-8UB_CM=;2S M62^T^/5[,643((87;!AD+.V]TRG[P;0VXX5=O,5[H1>5N,YDR4P Q0J6+C=OQE:D\,?#_5/#;F=M6MK<:1?)>?V5:P1LDZ/;MM43 M2%RK"7!;A%V8 ._.1V/@S7-4N[K5M(UQ[2?5M->+S+FP@:&"9)$W*51GM>6E]JIGT18[I--LX8/+ELVN&W2.TI:$=0O-6U&+5M9U"17N+JWMC;1;44(B)&7"0;ZV!'_39?\:NT4 4O[:T[_G_ +7_ +_+_C1_;6G?\_\ :_\ ?Y?\ M:NT4 4O[:T[_ )_[7_O\O^-']M:=_P _]K_W^7_&KM% %+^VM._Y_P"U_P"_ MR_XT?VUIW_/_ &O_ '^7_&KM% %+^VM._P"?^U_[_+_C1_;6G?\ /_:_]_E_ MQJ[10!2_MK3O^?\ M?\ O\O^-']M:=_S_P!K_P!_E_QJ[10!2_MK3O\ G_M? M^_R_XT?VUIW_ #_VO_?Y?\:NT4 4O[:T[_G_ +7_ +_+_C1_;6G?\_\ :_\ M?Y?\:NT4 4O[:T[_ )_[7_O\O^-']M:=_P _]K_W^7_&KM% %+^VM._Y_P"U M_P"_R_XT?VUIW_/_ &O_ '^7_&KM% %+^VM._P"?^U_[_+_C1_;6G?\ /_:_ M]_E_QJ[10!2_MK3O^?\ M?\ O\O^-']M:=_S_P!K_P!_E_QJ[10!2_MK3O\ MG_M?^_R_XT?VUIW_ #_VO_?Y?\:NT4 4O[:T[_G_ +7_ +_+_C1_;6G?\_\ M:_\ ?Y?\:NT4 4O[:T[_ )_[7_O\O^-']M:=_P _]K_W^7_&KM% %+^VM._Y M_P"U_P"_R_XT?VUIW_/_ &O_ '^7_&KM% %+^VM._P"?^U_[_+_C1_;6G?\ M/_:_]_E_QJ[10!2_MK3O^?\ M?\ O\O^-']M:=_S_P!K_P!_E_QJ[10!2_MK M3O\ G_M?^_R_XT?VUIW_ #_VO_?Y?\:NT4 4O[:T[_G_ +7_ +_+_C1_;6G? M\_\ :_\ ?Y?\:NT4 4O[:T[_ )_[7_O\O^-']M:=_P _]K_W^7_&KM% %+^V MM._Y_P"U_P"_R_XT?VUIW_/_ &O_ '^7_&KM% %+^VM._P"?^U_[_+_C1_;6 MG?\ /_:_]_E_QJ[10!2_MK3O^?\ M?\ O\O^-']M:=_S_P!K_P!_E_QJ[10! M2_MK3O\ G_M?^_R_XT?VUIW_ #_VO_?Y?\:NT4 4O[:T[_G_ +7_ +_+_C1_ M;6G?\_\ :_\ ?Y?\:NT4 4O[:T[_ )_[7_O\O^-']M:=_P _]K_W^7_&KM% M%+^VM._Y_P"U_P"_R_XT?VUIW_/_ &O_ '^7_&KM% %+^VM._P"?^U_[_+_C M1_;6G?\ /_:_]_E_QJ[10!2_MK3O^?\ M?\ O\O^-']M:=_S_P!K_P!_E_QJ M[10!2_MK3O\ G_M?^_R_XU%=^)=(L;:6XN=4LH+>)2\DLEPBJBCJ22>!5+QQ MX[T3X=>'Y]9U^^2RLHN!GEY&[(B]68^@^O0$U\V0V/C/]L#4TN+W[1X3^%T$ MN8X5.)K_ >OHQR.I^1>VX@UZ6%P3KQ=6H^6FMY/\DNK\CDK8A4WR07--[+] M7V1/XT^-/B'X]Z_/X-^&LXTGP^IV:CXFN&,09.X0G!4'G 'S-_LC)KV#X1?# M'P;\&]#^QZ1\?_H(J[0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1 M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%% M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 M %%%% !7F_QE^.N@?!O2PUZWV_69U_T328&_>RGH"W]Q,_Q'WP">*Y+XR_M& M_P#".ZJ/!W@6T_X23QQ.+EO.,T[>9%:-Z)GJPZ;N@P H&,GVJ.$IT(+$8W1/:/67^4?/[ MCSZE>523I8??J^B_S?E]YRW@?X)>)/C1X@@\;_%QG%NOSZ=X9&4CB0\CS%_A M'3Y?O-@;SQ@_3-O;Q6D$<$$:0PQJ$2.-0JJH& !T ]*DHKCQ6+J8J2YM(K9 M+9+R.BC0C16FK>[>["BBBN$Z HHHH **** "BBB@ HHHH *\_P#B!_R&8?\ MKW7_ -":O0*\_P#B!_R&8?\ KW7_ -":@#L]%_Y UA_U[Q_^@BKM4M%_Y UA M_P!>\?\ Z"*X[XQ^+-9\'^';6ZTAX+))+D1W>JW=HUU#8Q;6/F21JZ$*2 I< ML%0-N;@9H [ZBN0N_$NLV?BGPEISP:<]EJD,YNYXI79Q*D8=1$, ;#S\Q.>@ MQWIGQ,UGQ-X;T*YUG0ETV>WTV%KNYL[N&22:\5>6BB9741,5!PQ$F6(&WU . MRHKS:^^)>H:?K5S?31VR^%[;4/[)DB\EC=^=Y6\S!]^W8&(C\O9GJV[^&K_@ M+QAK&L7\=KK:6:R7VGQZO9BRB9!#"[8,,A9VWNF4_>#:&W'"KMY .ZHKR:Y^ M+VIZ3;3:Q>6MK<:1?)>?V5:P1LDZ/;MM432%RK"7!;A%V8 ._.1V/@S7-4N[ MK5M(UQ[2?5M->+S+FP@:&"9)$W*51GP R:J,93DHQ5VQ-J*N]C>N+B*T@D MGGD2&&-2[R2,%55 R22>@'K7S-XW^-GB3XU^(+CP1\)%9;5?DU'Q.V4CB0\' MRV_A'7YOO-SM'&XX-[KWB?\ :WUA[6&Z;P=\,8)<2/+(J7%_@^F?F/MRB]]Q M KZ/\$>'_"?P[T"#1M -E8V47)"S*7D;N[MG+,?4_3H!7NJG2RSWJR4ZW2.Z MC_B[ORZ=3S>:>,TA[L._5^G9>9A_!KX%Z!\&M),=BGV[6)U_TS5IU'FS'J0/ M[B9_A'MDD\UZ15+^VM._Y_[7_O\ +_C1_;6G?\_]K_W^7_&O&K5JF(FZE5WD MSOITXTHJ$%9(NT52_MK3O^?^U_[_ "_XT?VUIW_/_:_]_E_QK$T+M%4O[:T[ M_G_M?^_R_P"-']M:=_S_ -K_ -_E_P : +M%4O[:T[_G_M?^_P O^-']M:=_ MS_VO_?Y?\: +M%4O[:T[_G_M?^_R_P"-']M:=_S_ -K_ -_E_P : +M%4O[: MT[_G_M?^_P O^-']M:=_S_VO_?Y?\: +M%4O[:T[_G_M?^_R_P"-2V^H6MVQ M6"YAF8#)$<@8@?A0!8KS_P"('_(9A_Z]U_\ 0FKT"O/_ (@?\AF'_KW7_P!" M:@#L]%_Y UA_U[Q_^@BLGQYH>L>(-!>TT34K33KMF&XW]H;F&1<\AE5T;/<$ M,/<&M;1?^0-8?]>\?_H(J[0!P&G?#2^T:3P/%8ZU;C3_ W T$D5Q8%Y;K=' MY9VNLJK$,=!L8#@=!BH]5\/^._$AM95UW2-'BM;R63[)<:-).+A5<^0S[+Q< M8 #8W&W,[:Y;WUU!!!IUE)-8,!#8QODHX$OSRL.#+E1E4/E M\$-W5% 'F[_!M+UKRTOM5,^B+'=)IMG#!Y5Z\+AIXRM&A3W9C6JQH4W4GLCO\ XN_&GP]\'-$^V:O-YU]* MI^R:;"P\ZX;V'\*YZL>![G /C/A+X2>*OVA=I4K4\MO1PKO4V<^WE'_ #W?0XHTYXNTZRM'I']7_D06-C;Z99PV MEI!':VL"".*&% B(H& J@< #TJ>BBO!;OJSTPHHHI %%%% !1110 4444 %% M%% !1110 4444 %>?_$#_D,P_P#7NO\ Z$U>@5Y_\0/^0S#_ ->Z_P#H34 = MGHO_ "!K#_KWC_\ 015VJ6B_\@:P_P"O>/\ ]!%7: "BBB@ HHHH **** "B MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *** M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M **** "BBB@ HHIKNL:,[L%11DLQP /6@##\<^--,^'OA;4-?U>;R;*SCWD# M[TC=%11W9C@ >]>"? #P7JOQ6\:7'QA\9PX>4E-"T]^4@B&0) #V'(4]R6?J M0:Q]3FN/VN?BV--MI)%^&7AJ4/<3(2HOIN1Q_O8(']U-QX+ 5]66MK#8VL-M M;Q)!;PH(XXHUVJB@8 '0 #%>_4_X3:'LE_%FO>_NQ?V?5]?+0\R/^UU.=_! M';S??T70EHHHKP#TPHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** " MO/\ X@?\AF'_ *]U_P#0FKT"O/\ X@?\AF'_ *]U_P#0FH [/1?^0-8?]>\? M_H(KCOC'XLUGP?X=M;K2'@LDDN1'=ZK=VC74-C%M8^9)&KH0I("ERP5 VYN! MFNQT7_D#6'_7O'_Z"*R?'FAZQX@T%[31-2M-.NV8;C?VAN89%SR&571L]P0P M]P: *=WXEUFS\4^$M.>#3GLM4AG-W/%*[.)4C#J(A@#8>?F)ST&.]5_'7BS6 M-+U-+#0TLO/M[";5KHWT3.LD,94"%-KKM=R3^\.X+MY5LU7T[X:7VC2>!XK' M6K<:?X;@:"2*XL"\MUNC\L[7655B&.@V,!P.@Q46J>"O$'BL->3:G!HFH-]J MTV5X[+?YNGR2# "^>P2;"@K)N8#<28QG8H!13XLW$?M::=Y1A M;[89&@$OG;]^W9N81^7LSU;?CY:V/ 7C#6-8OX[76TLUDOM/CU>S%E$R"&%V MP89"SMO=,I^\&T-N.%7;S"OPEA35PBWJ#PMYZWIT;[.2QN1"(@?.W_ZO: VS M9G>,[\?+4WACX?ZIX;U/2;:;6+RUM;C2+Y+S^RK6"-DG1[=MJB:0N582X+<(NS !WYR.Q\ M&:YJEW=:MI&N/:3ZMIKQ>97:P'D MH6'3*\M_L\ +<^(+\F#3+3&XM)W5GUS\S>K<<[17MX.$<+3^O5E M?I!=Y=_2/YZ'G5Y.M/ZO3?\ B?9=O5_D=C\,_"OAOX6^#K'P_I5Y:^3 NZ6= MI5#SRG[\C<]2?R Z 5U/]M:=_S_ -K_ -_E_P :NT5X]2\?_H(J[5+1?^0-8?\ 7O'_ .@BKM !1110 4444 %%%% ! M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %% M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444 M4 %%%% !61XM\5:;X(\.7^N:O<"VT^RB,LKGJ?10.[$X '0G NY^<,J>V]N>!7HX+"K$3\?_H(J[0 45RGQ1DUZ+P3 MJ#^'#*NI+L)-N8A.(MP\TQ&7]WYFS=MW\9KS'Q3\0]6TOP1X4U"P\67#65Q# M/&=8-E"'FO056W@O!(F(4+[TE8+&0X +19H ]YHKR?5/'6L:5JM]KDEX[Z3: M:M_8QT9(XQ&ZB$,9]Y3S/,\PX W;-@QMW'=6K\.]>UF75+:SUC46U1M3TF+6 M49HHXQ:LS8>!-BKF,;DVE]S\-ECD8 /0Z*\3OOB7K^B:9_;[7GVR'6%ODM-- MFCC$-B\+E8"K*H=@P!,F]FR2-NT#![WP/>ZC!J>N:#J>I3:U-IC0NFHW,<4< MLJ2INPZQ(B95E<#"CY=N"I]2CGM[[5I\PV%FD@8R2D=6 .=B]2?H.I%;4:,Z]2-*FKM[&=2<:47.; MLD<-^TK\3]2O[^T^%?@LF?Q3KF([N2-O^/2W89()'W2RY)/\*9/\0->J?";X M8Z9\)?!=GH.F@.R#S+JZ*X:XF(&YS^6 .P ':O,_V:OAU'X4L;SQCXKOX+GQ MMKY,]Q)/*N^VC8[A'UX8\%AVP%Q\O/N/]M:=_P _]K_W^7_&O3QM:%*"P5!W MC'=_S2[^BV7WG)AX2G)XBJM7LNR_S?4NT52_MK3O^?\ M?\ O\O^-']M:=_S M_P!K_P!_E_QKQCO+M%4O[:T[_G_M?^_R_P"-']M:=_S_ -K_ -_E_P : +M% M4O[:T[_G_M?^_P O^-']M:=_S_VO_?Y?\: +M%4O[:T[_G_M?^_R_P"-']M: M=_S_ -K_ -_E_P : +M%4O[:T[_G_M?^_P O^-']M:=_S_VO_?Y?\: +M%4O M[:T[_G_M?^_R_P"-']M:=_S_ -K_ -_E_P : +M%4O[:T[_G_M?^_P O^-'] MM:=_S_VO_?Y?\: +M%4O[:T[_G_M?^_R_P"-']M:=_S_ -K_ -_E_P : +M% M4O[:T[_G_M?^_P O^-']M:=_S_VO_?Y?\: +M%4O[:T[_G_M?^_R_P"-']M: M=_S_ -K_ -_E_P : +M%4O[:T[_G_M?^_P O^-2V^H6MVQ6"YAF8#)$<@8@? MA0!8KS_X@?\ (9A_Z]U_]":O0*\_^('_ "&8?^O=?_0FH [/1?\ D#6'_7O' M_P"@BKM4M%_Y UA_U[Q_^@BKM &7XET5_$.BW-A'J%UISLEUO6(9XXKF"[O8GA,E_'<,K3I*&B9 &*+_JU0J I M45Z310!R(^&6ECQ&NIB>[^S!Q.=)+(;1K@1>4)R"N\OY>%QOV\ [=WS4WP]\ M-;?PRLWV/6-3,I$,$$TQA=K6UB;(=/\ ">A7VL:K MTJTTS3K9+2QM(EAA@C&%1 , "O??\ PFT+?\O:B_\ 8O] M9?@O4\Q?[74O]B+^]_Y+\R[1117@'IA1110 4444 %%%% !1110 4444 %%% M% !1110 4444 %%%% !1110 4444 %>?_$#_ )#,/_7NO_H35Z!7G_Q _P"0 MS#_U[K_Z$U '9Z+_ ,@:P_Z]X_\ T$5=JEHO_(&L/^O>/_T$5=H **** "BB MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH M**** "O OVE_BQJ%A]C^'7@\-=>,=? A;R#\UK"V03G^%F&>?X5#-QP:]!^- M'Q8T_P"#W@BYUJ[VS7C?N;&S)P9YB.!_NCJQ[ >I / ?LT?"?4=.%[\0_&.Z MY\9:_F4>>/FM86P0N/X688X_A4*O'(KVL%2A0@\;75TM(K^:7^2W?W'GXB\$VVBV>V:[;][>W@&#<3$[ MHHKRJM6=:;J5'=O<[80C3BH15D@HHHK(L**** "BBB@ HHHH **** "BBB@ MHHHH **** "BBB@ HHHH **** "BBB@ KS_X@?\ (9A_Z]U_]":O0*\_^('_ M "&8?^O=?_0FH [/1?\ D#6'_7O'_P"@BKM4M%_Y UA_U[Q_^@BKM '*?%&3 M7HO!.H/X<,JZDNPDVYB$XBW#S3$9?W?F;-VW?QFO-=;^*.IV_A#P_;:)J6J: MUOLI=0U/7;&P@:]M[6%@L@\J8I&)]V5;H8$'TKCHO@II\&EV%M%K>L6]W"MPEUJ$,D0FODG8- M/'+F,J%8JN/+",FT;&7G(!BR_$/4K:>7Q)%J,P!_M)? M8'$ID8UF75+:SUC46U1M3TF+649HHXQ:LS8>!-BKF,;DV ME]S\-ECD8TXOA=I$&OQZA'+(O)$^W9OWB,!<;]G .W=\U' MA[X:V_AE9OL>L:F92(8()IC"[6MK$VY+6/,6/+Y8$L&D(/W\A2 #@[[XEZ_H MFF?V^UY]LAUA;Y+339HXQ#8O"Y6 JRJ'8, 3)O9LDC;M P>]\#WNHP:GKF@Z MGJ4VM3:8T+IJ-S'%'+*DJ;L.L2(F597 PH^7;G)!)A7X2Z,UWJ37,MW>V-W' M<11:;.Z?9[,3MNG,.U0X+MSEF;;T3:"16QX3\)Q^%;>Y!O[S5[VZD$MSJ&H& M,SS$*%4'RT10%50 HZ9.222 ;M4CK6G@D&^M@1_TV7_ !J[10!2_MK3O^?^ MU_[_ "_XT?VUIW_/_:_]_E_QJ[10!2_MK3O^?^U_[_+_ (T?VUIW_/\ VO\ MW^7_ !J[10!2_MK3O^?^U_[_ "_XT?VUIW_/_:_]_E_QJ[10!2_MK3O^?^U_ M[_+_ (T?VUIW_/\ VO\ W^7_ !J[10!2_MK3O^?^U_[_ "_XT?VUIW_/_:_] M_E_QJ[10!2_MK3O^?^U_[_+_ (T?VUIW_/\ VO\ W^7_ !J[10!2_MK3O^?^ MU_[_ "_XT?VUIW_/_:_]_E_QJ[10!2_MK3O^?^U_[_+_ (T?VUIW_/\ VO\ MW^7_ !J[10!2_MK3O^?^U_[_ "_XT?VUIW_/_:_]_E_QJ[10!2_MK3O^?^U_ M[_+_ (T?VUIW_/\ VO\ W^7_ !J[10!2_MK3O^?^U_[_ "_XT?VUIW_/_:_] M_E_QJ[10!2_MK3O^?^U_[_+_ (T?VUIW_/\ VO\ W^7_ !J[10!2_MK3O^?^ MU_[_ "_XT?VUIW_/_:_]_E_QJ[10!2_MK3O^?^U_[_+_ (T?VUIW_/\ VO\ MW^7_ !J[10!2_MK3O^?^U_[_ "_XT?VUIW_/_:_]_E_QJ[10!2_MK3O^?^U_ M[_+_ (T?VUIW_/\ VO\ W^7_ !J[10!2_MK3O^?^U_[_ "_XT?VUIW_/_:_] M_E_QJ[10!2_MK3O^?^U_[_+_ (T?VUIW_/\ VO\ W^7_ !J[10!2_MK3O^?^ MU_[_ "_XT?VUIW_/_:_]_E_QJ[10!2_MK3O^?^U_[_+_ (T?VUIW_/\ VO\ MW^7_ !J[10!2_MK3O^?^U_[_ "_XU5U3Q=HFB:;9S8BM[&.BO)Z)=V4?A_"W[2OQ6D\>^)72U\':)* M8M&TRY=5$S Y#,I//.&8]"VU>0I%?4_]M:=_S_VO_?Y?\:B\.^'M/\)Z%8Z/ MI5LMII]E$(884Z*H_F3U)ZDDFM*GC<5]9FN16A'2*[+_ #>[\Q8>C[&/O.\G MJWY_UL4O[:T[_G_M?^_R_P"-']M:=_S_ -K_ -_E_P :NT5YYU%+^VM._P"? M^U_[_+_C1_;6G?\ /_:_]_E_QJ[10!2_MK3O^?\ M?\ O\O^-']M:=_S_P!K M_P!_E_QJ[10!2_MK3O\ G_M?^_R_XT?VUIW_ #_VO_?Y?\:NT4 4O[:T[_G_ M +7_ +_+_C1_;6G?\_\ :_\ ?Y?\:NT4 4O[:T[_ )_[7_O\O^-']M:=_P _ M]K_W^7_&KM% %+^VM._Y_P"U_P"_R_XT?VUIW_/_ &O_ '^7_&KM% %+^VM. M_P"?^U_[_+_C1_;6G?\ /_:_]_E_QJ[10!2_MK3O^?\ M?\ O\O^-']M:=_S M_P!K_P!_E_QJ[10!2_MK3O\ G_M?^_R_XT?VUIW_ #_VO_?Y?\:NT4 4O[:T M[_G_ +7_ +_+_C1_;6G?\_\ :_\ ?Y?\:NT4 4O[:T[_ )_[7_O\O^-']M:= M_P _]K_W^7_&KM% %+^VM._Y_P"U_P"_R_XU+;ZA:W;%8+F&9@,D1R!B!^%6 M** "O/\ X@?\AF'_ *]U_P#0FKT"O/\ X@?\AF'_ *]U_P#0FH [/1?^0-8? M]>\?_H(J[5+1?^0-8?\ 7O'_ .@BKM !1110 4444 %%%% !1110 4444 %% M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444 M4 %%%% !1110 4444 %%%% !1110 4444 %%%>,?M"?'JV^&^D2Z)H<_VSQS M?*L5C96\7GO"6( =USP<9V@Y))'RD9KIP^'J8JHJ5)7;_J[\C*K5C1@YS>B* M?[2WQ@O?"ME:>#/"@>Z\:Z_B&!(/OVT3';O]F/(4]L%N-O/7? SX067P;\$P MZ9%LGU2XQ-J-X!S-+CH#_=7.%'U/4FO'OV3/@UXFT;Q)J_C7QK9O'J4P>"V_ MM(,UX'+?O)ICYPPL/J.'E=+637VG_ )+\SBPT95I? M6:JL^B[+_-A1117A'I!1110 4444 %%%% !1110 4444 %%%% !1110 4444 M %%%% !1110 4444 %%%% !1110 5Y_\0/\ D,P_]>Z_^A-7H%>?_$#_ )#, M/_7NO_H34 =GHO\ R!K#_KWC_P#015VJ6B_\@:P_Z]X__015V@ HKE/BC)KT M7@G4'\.&5=2782;M'6-2:$ M2-JES;!9$C24))YL>T 2Y/EE2J_-N.T;"M 'KE%>4:OXZU?2M7O]<:\=]'M- M6_L;^QECC".HBW&??LW^9YA QNV;!C;N.ZM3X=Z]K,NJ6UGK&HMJC:GI,6LH MS11QBU9FP\";%7,8W)M+[GX;+'(P >AT5XG??$O7]$TS^WVO/MD.L+?)::;- M'&(;%X7*P%650[!@"9-[-DD;=H&#WO@>]U]=U_X"2__ !-']K0?\\[K_P !)?\ XF@"[15+^UH/^>=U_P" DO\ M\31_:T'_ #SNO_ 27_XF@"[15+^UH/\ GG=?^ DO_P 31_:T'_/.Z_\ 27_ M .)H NT52_M:#_GG=?\ @)+_ /$T?VM!_P \[K_P$E_^)H NT52_M:#_ )YW M7_@)+_\ $T?VM!_SSNO_ $E_P#B: +M%4O[6@_YYW7_ ("2_P#Q-']K0?\ M/.Z_\!)?_B: +M%4O[6@_P">=U_X"2__ !-']K0?\\[K_P !)?\ XF@"[15+ M^UH/^>=U_P" DO\ \31_:T'_ #SNO_ 27_XF@"[15+^UH/\ GG=?^ DO_P 3 M1_:T'_/.Z_\ 27_ .)H NT52_M:#_GG=?\ @)+_ /$T?VM!_P \[K_P$E_^ M)H NT52_M:#_ )YW7_@)+_\ $T?VM!_SSNO_ $E_P#B: +M%4O[6@_YYW7_ M ("2_P#Q-']K0?\ /.Z_\!)?_B: +M%4O[6@_P">=U_X"2__ !-']K0?\\[K M_P !)?\ XF@"[15+^UH/^>=U_P" DO\ \31_:T'_ #SNO_ 27_XF@"[15+^U MH/\ GG=?^ DO_P 31_:T'_/.Z_\ 27_ .)H NT=*QM8\7Z5X?TRXU'4[A[" MQMUWRW%Q!(B(/4DK7S3XD^(WBS]IW59_#O@A;O0/ 4;F*_U]H)"]R.Z@*,@$ M=$&"01N*@XKOPN#GB;R;Y8+>3V7^;[):G-6KQHV5KR>R6[_X'F=-\3OVB=2U M_P 0-X%^%%N-<\1R92XU6,!K>S&<,5)^4D=W/RC@?,3@=5\%?V>-.^&3OK>K M7!\0^,[K+W.K7!+[&;[PBWY8?Q.VSZX P!G@5V/]K0?\\[K_P$E_\ B:Z:^,A"F\/A%RPZO[4O7LO+ M[S&G0E*7M:[O+HNB]//S+M%4O[6@_P">=U_X"2__ !-']K0?\\[K_P !)?\ MXFO'.\NT52_M:#_GG=?^ DO_ ,31_:T'_/.Z_P# 27_XF@"[15+^UH/^>=U_ MX"2__$T?VM!_SSNO_ 27_P")H NT52_M:#_GG=?^ DO_ ,31_:T'_/.Z_P# M27_XF@"[15+^UH/^>=U_X"2__$T?VM!_SSNO_ 27_P")H NT52_M:#_GG=?^ M DO_ ,31_:T'_/.Z_P# 27_XF@"[15+^UH/^>=U_X"2__$T?VM!_SSNO_ 27 M_P")H NT52_M:#_GG=?^ DO_ ,31_:T'_/.Z_P# 27_XF@"[15+^UH/^>=U_ MX"2__$T?VM!_SSNO_ 27_P")H NT52_M:#_GG=?^ DO_ ,31_:T'_/.Z_P# M27_XF@"[15+^UH/^>=U_X"2__$T?VM!_SSNO_ 27_P")H NT52_M:#_GG=?^ M DO_ ,31_:T'_/.Z_P# 27_XF@"[15+^UH/^>=U_X"2__$T?VM!_SSNO_ 27 M_P")H NT52_M:#_GG=?^ DO_ ,31_:T'_/.Z_P# 27_XF@"[15+^UH/^>=U_ MX"2__$U+;WL=TQ5%F4@9_>0N@_-@* +%>?\ Q _Y#,/_ %[K_P"A-7H%>?\ MQ _Y#,/_ %[K_P"A-0!V>B_\@:P_Z]X__015VJ6B_P#(&L/^O>/_ -!%7: , MOQ+HK^(=%N;"/4+K2Y95PEW9E?,C/J P96'J&!!]*XF?]GSP;JGAA-*UC3+? M7+O#%]8U"U@EO2[OYCL',>$RQ/RJ H' KTJB@#D%^&.DIXB74DDN([17$XT M9/+%EYXB\H3[-F[<(\+C=LX!V[ANI/#WPUM_#*S?8]8U,RD0P033&%VM;6)M MR6L>8L>7RP)8-(0?OY"D=A10!Q2_"71FN]2:YEN[VQNX[B*+39W3[/9B=MTY MAVJ'!=NB;02*V/"?A./PK;W(-_>:O>W4@EN=0U QF>8A0J@^6B* JJ M %'3)R22=VB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ KD?B7\4O#WP MHT!]5U^\$*G(@MH\--<./X47OVYX SR17(_&K]H72_A;LTC3H#K_ (PNL):Z M1;Y8JS?=,FWD9SPH^9NV!R./^&G[/.J^*?$">.OBU.-8UV3#VVC/AK>T7JH9 M1\IQV0?*.IW$\>O0P<(TUB,6^6'1?:EZ>7GL<-3$275]%Z_P"1@:/X M+\8?M6:K;Z_XS\_PW\/HG\VPT.%BLEV.S,>#@C_EH1T/R YKZ35X 8' I:PQ6,GB;02Y8+:*V7^;[MFE M&A&E>3=Y/=O^MO(****\\Z@HHHH **** "BBB@ HHHH **** "BBB@ HHHH M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ KS_X@?\AF'_KW7_T) MJ] KS_X@?\AF'_KW7_T)J .ST7_D#6'_ %[Q_P#H(J[5+1?^0-8?]>\?_H(J M[0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%4-0V&GVR;Y;B=MJH/\ / '4G@4TG)V6XFTE=EXD 9/ KYV^)G[0NJ>)_$#^ M!/A- -9U^3*7.L)AK>S7HQ5C\I([N?E'0;B>.=UGQQXQ_:KU>XT#P5Y_ASP! M$YBO]ZU>XRQ5F^\(]W(SGEC\S=\#@>N445Y->O4Q-1 MU*KNV=M.E"C'D@K(***@N[VWL(3+=3Q6T0X+S.$7\S7.:D]%MT5X/X;_:90.T>NZ7)L+.RSV;AB 6RJE#C@ XW;LG'2NYT[XZ>#=0P#J; M6CG^&Y@=?U (_6A.X-6._HK)TWQ9HFL8%CJ]C=L?X8KA&;\@ MJZQ]EOX-OF0_9IGV[E##E4(Z$'KWK"M7HX>//6FHKNVE^9T4] MDFW^!VE%5].U"WU;3[6^M)/.M;F)9HI "-R, 5.#SR".M6*V34E=;B[/< M****8@HHHH *\_\ B!_R&8?^O=?_ $)J] KS_P"('_(9A_Z]U_\ 0FH [/1? M^0-8?]>\?_H(J[5+1?\ D#6'_7O'_P"@BKM '*?%&37HO!.H/X<,JZDNPDVY MB$XBW#S3$9?W?F;-VW?QFN0NM0\0:C\*K/7_ WXQGOKRRMC)"CV,(;4IU? MM[E73H76ERRKA+NS*^9&?4!@RL/4," M#Z5Q:?!<6]AI-O:>,/$%@]C+)L:BVJ-J>DQ:RC-%'&+5F;#P)L59/+^7[^T_>V[OFI/#WPUM_#*S?8]8U,RD0P M033&%VM;6)MR6L>8L>7RP)8-(0?OY"D '!WWQ+U_1-,_M]KS[9#K"WR6FFS1 MQB&Q>%RL!5E4.P8 F3>S9)&W:!@][X'O=1@U/7-!U/4IM:FTQH734;F.*.65 M)4W8=8D1,JRN!A1\NW.2"3"OPET9KO4FN9;N]L;N.XBBTV=T^SV8G;=.8=JA MP7;G+,VWHFT$BMCPGX3C\*V]R#?WFKWMU();G4-0,9GF(4*H/EHB@*J@ !1T MR=U_ MX"2__$U=HH I?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ ,35VB@"E_:T'_/. MZ_\ 27_ .)H_M:#_GG=?^ DO_Q-7:* *7]K0?\ /.Z_\!)?_B:/[6@_YYW7 M_@)+_P#$U=HH I?VM!_SSNO_ $E_P#B:/[6@_YYW7_@)+_\35VB@"E_:T'_ M #SNO_ 27_XFC^UH/^>=U_X"2_\ Q-7:* *7]K0?\\[K_P !)?\ XFC^UH/^ M>=U_X"2__$U=HH I?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ ,35VB@"E_:T M'_/.Z_\ 27_ .)H_M:#_GG=?^ DO_Q-6GFCC:-7=5:0[4#'!8X)P/4X!/X& MGT 4O[6@_P">=U_X"2__ !-']K0?\\[K_P !)?\ XFKA( ))P!6/?^,M TK/ MVS7-.M<=1-=QH?U-1.<*:O-I>II"G.H[03?H7/[6@_YYW7_@)+_\31_:T'_/ M.Z_\!)?_ (FN0O\ XY^!M/SYGB&"4CM;QR39_P"^5-<]??M/>$;;(MX-4OVZ M+Y-L%!/_ )@?TK@GF6"AO5C\G?\CT(97CI[49?--?F>H?VM!_SSNO\ P$E_ M^)H_M:#_ )YW7_@)+_\ $UXC??M3[?\ CQ\)7F<*1Z=ZSY?C M_P"--1.+'2_#]BC?Q75_&Q4?]_5Y_#\*YGG&&>E-2D_*$G^AU+)<4E>HX07] MZ<5^I[]_:T'_ #SNO_ 27_XFC^UH/^>=U_X"2_\ Q-?.TGQ!\=ZF&,WCKPYH M\8^\L*AV_#$3_H:J2RM?@'5OC-=JIZQV-M<$'_ODJ/TI?VC7G_"PLWZ\L?S? MZ#_LRA#^-BX+TYI?E']3Z2DUNUA0O(+A$'5FM90!_P".UAWOQ3\)Z:<76NVE MNW]V1B#^6,]Z\!_X1CX7S2[M3\8:[JSC^+RV53_WU&3Z=^U:-HGP5TY=QTO4 M+YQT\XRD_EO _P#U4>VS.I\-&,?\4V_RC^H>PRJG\=>&VM+1Y566X%[YAC0GEM@BYP.<9KJKK]IWP3;D^7+?7/O%:D?^A$ M5XMIEAX"T_Q1#/8V7B'58K=XIK>"5X#YTBMN973R^4X P.>OK74:W^T3!X=U M>+2;'PCI^EZI(RI%8O TMPQ;!4>5&JMDY! [YXKBR_"Y_54HU:D;_P"'F=O^ MW>7\3OS#$\/4W&5"E*W^+E7_ )-S/[CI]0_:U\.6L(DBTC4V5N%:X\N)2>XS MN:O&?&I\;_''Q'9ZEK.AZO?^$HG\VVT33(98X&&,@M,%.XD=6P#@G;MS7<'] MG7Q7XY\21^*/$=Q VJ$AD.IR^:81V58E!C &$=-@TO3O!.F>'[.V41PVL\GEA!V&TLG/<_K67<_M#^.9P< M'1;)O[L<+M^NYA^M>PZ9\ _!VG[3)937S#^*YG;^2[1^E=7IO@O0-'Q]BT:Q MMV'\:6Z[O^^L9-2!'=W)_P#']M:]G^S[X;6/_3-1UNXE[M%:M&/R,;']:]MHKMC2IP^&*7IH M<,JU2?QR;]=3RFW^"7@6+'FV&IW6/^>GVA<_]\!:EU'X,>!+W39;2'2;RP=P MH%W;13F9,$'Y6=6ZXP>.037J-%93PM"K\<$_7?[]S6GB\12_AS:]-%]VQXSI MO[/G@BRED:Y_MS54="HBO!(%0Y!W#RXU.1C'7')XJMJ/[.OA.XRUC>:[I[=E M6)Y$'X-'G]:]OHKF_LS"=*:OWUO]^_XG5_:F,ZU';MI;[MOP/F?4?V _B;X7(&G"\F1>/^);<2QC'^ZX7(]L5]6T4?4>7 M^%5G'_M[F_\ 2N8/K_-_%HPE_P!N\O\ Z0XGRXGQ(^*?AEFOR#VN!G\5*4?\,M/N:?YGE6E_M.:%= ?:]-O M;8GJ86251^.5/Z5U%E\G! /ZT>UQD/BI)_X9?I)+\P M]C@I_!6Y?PJL)?]O=U_X"2__ !-?-?\ PM;XF^%OEU*RO_+7C-]IV5_[[51G\ZNP M_M1:M=6,\0T^R^U,A"3Q%U"'LVULYQZ9K6GCL-5DH0J+F?39_<]3*KE^*HQ= M2=-\JZ[K[UH?0_\ :T'_ #SNO_ 27_XFC^UH/^>=U_X"2_\ Q->%2_M4M$B* MV@PI*!\Q:]."?8;./UJ>T^/7B_60O]F>$3<@_P 4=O/*/S4"M7B:"ER.:OVN MC%86NXJ:INW>SL>W?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ ,37DB>*?B]J M\0-OX=L[(?WV41L/PDE_I4;^'OC#J\>)];MK%2<;5:-"/?,:$_K6G/?X5?\ M(R4+?&[?F>O_ -K0?\\[K_P$E_\ B:S]1\O%5[?]E*0D>=K5LG/.RU+\?BPKFG+%[0C M'YR?YK&N?BO\2=0)#+H/AU,9#S,"0/4Y9_ MY=J[>#]G'PI#C?+J,^/^>DZC/Y**OP? /P9#MWZ?-/CKYEU(,_D16?\ 9U>I M_&Q4WZJ_\A;XO6-D#U&F(YP/; M8D?:O/\ Q-X(CO\ Q-&MIXPM=>:\D2,7ET)Q+NV@9DRC8&>!AF.,=.WU)!\& M?!EOMV:%"<=/,DD?^;'-8^L?L^>%]6OVN4:\T]2 !!9M&L:X';*$\]>2:QK9 M!@\1&U;FEYN4G^;L;T>(L=AY7H\L5V4(I?@K_B=3X2QH'A31M,N!,\]E90VT MC1VLQ4LD84D90'&1Z5K?VM!_SSNO_ 27_P")JQ:0&UM883+).8T5/-E(+O@8 MRV !D]^*EKZ"$%3BH1V6A\Y.;J3]CNF*HLRD#/[R%T'YL!5BB@ MKS_X@?\ (9A_Z]U_]":O0*\_^('_ "&8?^O=?_0FH [/1?\ D#6'_7O'_P"@ MBKM4M%_Y UA_U[Q_^@BKM !1110 4444 %%%% !1110 4444 %%%% &=J_B+ M2= \G^U-3L]-\XD1_:[A(MY&,[=Q&<9'3UJ32M:T_7;8W&F7]MJ-N&*&6TF6 M5 PP2,J2,\CCWKRWX_?#_6_'$_AZ31['[;]C%QYH\U$VE_*V_>89^ZW3TKE/ M"?[/GB*YT>=+[6'\-L9VQ9)&)T<;5_>'9*!D],=?E'M7(I5W4DFERWT[O1:_ M?=?([''#^RBTWS-:]EJU;OM9_,^B68(I9B%4#)). *R[GQ7HEDQ6XUC3X&!P M1+=(I!_$UXJ?V6[R1F,GBZ)R3P?[+.?_ $?43?LI73L,^,RBYY$>EJ#CV)D- M=RBGO)+[_P#(XV[/8]=NOB;X3LP3)XAT]L?\\IUD_P#0:R?LCF0_P#(]:FOLME /Z4Q?V-K"5/])\<>()'SUA,48Q]- MIK=48=:L?_)O_D3/G_N/\/\ Y([JZ_:*\)6_^K-]<]?]5;@?^A,*RKK]I[08 MS^YTR_<9_P"6IC3^3&N6_P"&)?#\C 3^,/$\L9^\OVF,$C\4/\J23]A+P)+] M_6_$S_[UW ?_ &A6RH8=_%7M_P!NM_Y$.I-;4V_FE_F;,G[34DP(M/##R'C# M&Z)_01_UJG<_M!^*61G@\,QP1@X\R>&9D'ID_**KP_L+?#N*,*UYKTQ_OO=Q M _I$!4\7[#WPXCD#,^LR@?P/>+@_D@/ZT_J^$7_,0_\ P7_]N+VU3_GS_P"3 M_P#VA3;XT^/=0Y@ATNWR,X#1I_Z,DJG/\1/B!<2M%-XFT6P((!1]2TY2/?AB M:Z'_ (8H^&?_ #ZZE_X&M_A5F']C3X71QA6TB[E8?QO?RY/Y,!^E+ZO@>N(G M\H1_5LKV]=;48_.4OTL> >-/$D$?B.[.NZU87NHN$\RXCNDF20;1MPZ\$ 8' M'0@BO2/#K:?J6B:>]W\:M(TR%K>-DLAK"L8 5&$*F9=I4<8[8KI=6_8D^'U[ MJ.F3V2WNG6UO-ONK5;AY!=QX^YN8Y3G'*]LCJ01T/_#(OPF_Z%/_ ,J-W_\ M':(87+:;3=6;OVA%/?J^;YZ=RIXG%U%94TO63:VZ*VG;6YYY+H/PTGE(U'XM M:;>N#AB+B(Y^A+M3WT;X*V@#S?$:%TZ 07<);/X(?Y5Z5'^RO\*XD5%\(P$ M8&ZYG8_F9,FIH/V8OA?;.63P?9DXQ^\DEK7(_I&*1=>_9]A8*WBDR%3@Y:XC_E7JW_#-_P , M_P#H3=-_[X;_ !JVGP#^'*(JCP5HI &!FS0G\R.:O_A,_P"GG_DIG_MG]W\3 MR)_&O[.EEAI=968-P %OGQ_WPM/C^*'[.,2[5OXR/]JTU!C^92O8+?X'?#RV M8E/!&@$D8_>:=$X_\>4U/_PIKP!_T(WAO_P46_\ \11?+/Y:GWQ_R"V,[Q^Y M_P"9XPGQQ_9]B8%8T..F[39R/U6GO^T5\!K+'E:?#<[NNW1B=O\ WVH_2O%-# '0#3H?\ XFIK?P!X7M-WD>&](AW=?+L8ES^2T>TRU?\ +N?_ M ($O_D0Y<7_-'[G_ )GAB?M2_!2% L>F;5'15T9!1'^V5\*(F#)I.I(P[KIL M0/\ Z'7O7_"&^'Q_S ]-_P# 2/\ PJY_8VG_ //C;?\ ?E?\*/;9ZU>YRS!F^\(\\@ M')RQ^9N7-+IV7R[A1117BGH!1110 44 M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !7$_$#X2:-\1I;.2_FO+ M*2VWX>P=(VDW;?ODHV<;>/J?6NVHK*K2A6CR5%=&U*M.A-3INS.3\!_#32/A M[I\EK8&:[9YC-]HO2CR@D*-H8*/E^4''J376444Z=.%**A!62%5JSK2?_ ! _Y#,/_7NO M_H35Z!7G_P 0/^0S#_U[K_Z$U '9Z+_R!K#_ *]X_P#T$5=JEHO_ "!K#_KW MC_\ 015V@ HHHH ***\^^-=YK]AX7M[C1;J]L;6.Y#:E=:6D3WD5OM/S1K(K M!L-MW*%+EGW4=]%J<P !)P5!$B@$@!NO![U M?H ***I'5H 2-ES_ . LO_Q- %VBJ7]K0?\ /.Z_\!)?_B:/[6@_YYW7_@)+ M_P#$T 7:*I?VM!_SSNO_ $E_P#B:/[6@_YYW7_@)+_\30!=HJE_:T'_ #SN MO_ 27_XFC^UH/^>=U_X"2_\ Q- %VBJ7]K0?\\[K_P !)?\ XFC^UH/^>=U_ MX"2__$T 7:*I?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ ,30!=HJE_:T'_/. MZ_\ 27_ .)H_M:#_GG=?^ DO_Q- %VBJ7]K0?\ /.Z_\!)?_B:/[6@_YYW7 M_@)+_P#$T 7:*I?VM!_SSNO_ $E_P#B:/[6@_YYW7_@)+_\30!=HJE_:T'_ M #SNO_ 27_XFC^UH/^>=U_X"2_\ Q- %VBJ7]K0?\\[K_P !)?\ XFC^UH/^ M>=U_X"2__$T 7:*I?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ ,30!=HJE_:T M'_/.Z_\ 27_ .)H_M:#_GG=?^ DO_Q- %VBJ7]K0?\ /.Z_\!)?_B:/[6@_ MYYW7_@)+_P#$T 7:*I?VM!_SSNO_ $E_P#B:/[6@_YYW7_@)+_\30!=HJE_ M:T'_ #SNO_ 27_XFC^UH/^>=U_X"2_\ Q- %VBJ7]K0?\\[K_P !)?\ XFC^ MUH/^>=U_X"2__$T 7:*I?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ ,30!=HJ ME_:T'_/.Z_\ 27_ .)H_M:#_GG=?^ DO_Q- %VBJ7]K0?\ /.Z_\!)?_B:/ M[6@_YYW7_@)+_P#$T 7:*I?VM!_SSNO_ $E_P#B:/[6@_YYW7_@)+_\30!= MHJE_:T'_ #SNO_ 27_XFC^UH/^>=U_X"2_\ Q- %VBJ7]K0?\\[K_P !)?\ MXFC^UH/^>=U_X"2__$T 7:*I?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ ,30 M!=HJE_:T'_/.Z_\ 27_ .)H_M:#_GG=?^ DO_Q- %VBJ7]K0?\ /.Z_\!)? M_B:/[6@_YYW7_@)+_P#$T 7:*I?VM!_SSNO_ $E_P#B:/[6@_YYW7_@)+_\ M30!=HJE_:T'_ #SNO_ 27_XFC^UH/^>=U_X"2_\ Q- %VBJ7]K0?\\[K_P ! M)?\ XFC^UH/^>=U_X"2__$T 7:*I?VM!_P \[K_P$E_^)H_M:#_GG=?^ DO_ M ,30!=HJE_:T'_/.Z_\ 27_ .)H_M:#_GG=?^ DO_Q- %VBJ7]K0?\ /.Z_ M\!)?_B:/[6@_YYW7_@)+_P#$T 7:*I?VM!_SSNO_ $E_P#B:/[6@_YYW7_@ M)+_\30!=HJE_:T'_ #SNO_ 27_XFC^UH/^>=U_X"2_\ Q- %VBJ7]K0?\\[K M_P !)?\ XFC^UH/^>=U_X"2__$T 7:*I?VM!_P \[K_P$E_^)J6WO8[IBJ+, MI S^\A=!^; 4 6*\_P#B!_R&8?\ KW7_ -":O0*\_P#B!_R&8?\ KW7_ -": M@#L]%_Y UA_U[Q_^@BKM4M%_Y UA_P!>\?\ Z"*NT %%%% !6!XT\+3>+M'- ME;ZS?:%-O#"ZL/+9L=U*R(Z,#[KD=016_10!S7AWX;^&_##Z?/9:/9G4K*U6 MSBU2:!'O#$!C#3$;SGDGG&2:Z6BB@ HHHH ***P?'EA%J?@C7[6)L;#T9"&'X&@#>HKR+Q)X0T;Q;\,?#EK@K4\;:#%XY\*>()H],TWQ1\HBM+;59_+LI?+0YD)"N"0TDA M!*XRB\K@, #TFBO*K&&"^UOX3:HJ7D4CZ=,B1W=RSNJ-:JV'&=K/P,OC)Y[' M%:GB31?#?B;PI=7'B:PBUBSOKF1K>TN4\P2LW[J'RT.07*JI4]06)&,F@#T& MBOGZ_P!,DL(;@ZG>IK'B?P[I^D6^E:B_SR^>93'*T3')W2RH8WYRP&UN*Z75 M[2STV[^,$DFH7&E0SZ?#-/?B221K9? BS M&E:/K>G2:1;>';NVU +-H]@5-G;'R(L- 5X*2 >;T4[I&##.2WIM !1110 4 M45POQ2L(KF3PA<.9/,MM?M&C"RNJY)*GF45XMX'M83XET6\C0)K>L2:LFN2Q_)/ M*D4I5?,88;]TWEHAS\H;"\&LIM*@M/@]X5EO-&3Q%X3TN>[?5-+NKF$!X 9@ MDC&Y=8Y-C;6/F./[V2RB@#WZBN5^%<6H0?#KP]'J<4]O>+:)F&Z;=-&O\"R' MG+A-H8Y/(-=50 4444 %%%<&^F0?\+HFFS-YEUX>,45Y/X?\ #FBZ)J6OCPT8-.T;7&M[.&PL5$<,9;LK*F\W*[%8.#(!&P=L*' M(Z* >G45YE\,;>.'X?>%-(A:01?:)F(+EW\J&:1@2S')^81@DY)W<]#@ ]OHKQ@ M>$_!QB\6:%>:-8W7A.UGMTL-*CA5H%NI8!N2&,?+YARC @9#2,V068UBW^F2 M6$-P=3O4UCQ/X=T_2+?2M1?YY?/,ICE:)CD[I94,;\Y8#:W% 'T#1110 444 M4 %%,FB$\3QL6"NI4E&*M@^A'(/N.:\@\/>&?"]_\$]*L/$.G1:KIT33V]M9 MW>9S)(9I$0*&)+2_W6.6!).1R: /8J*\YTWPT^J^&(]%U%K?Q9/I>DQ6$ZWL MS"VO;H &19FPY()CCW95N&.0V2*Y;2]-B?X>?#KS+*339M-\0QPK:17;20Q. ML\L;*FW:KQ#!\L%?E7;C!% 'M]%J G;UH ^@J*\JLO#6G7/C'PMKB)#I_BJWB6;7+P#;+.DT!C6VE;OF M4QLD9.!Y7 '&=OX4V$6FQ^*[> R&,:_=-F:5Y6RP1CEF))Y)[\=!Q0!W5%%% M !1110 45POQML(K_P"&NK+,9,1&*9?+E>/YEE0C.TC<,_PG(/<&JGQ#\*Z) MJWB+1KQ1!:^*;6Z@O8]4/^NM;2)P9QOZI$Z;XRN0K&3D'DT >BT5X_\ %318 MM8\"W/B Z);:])#=-?*US=&"6V@5E FM#L<"?9&A0_*%)VKU.=H&>^: ._HKRWQ[X)TKQ-X.L[;4(4_X2J[ M1CI5S*"T]C>.?-,T7),9C8[BRX.U ,G@5B>5;7GBU]65DF\0R>)(],2[C.)F MT]K4.8E82:/X+\%6$WBF<6^G0^"KQ(6?2C&!9SSP M%UGN/*^[(&WPH3@[FB!.3@UU_P +]#_X1GP=;:6)B\=M+-Y-N[$M:0O(TD-N M03D&.)XTQV"C'&* .LHHHH **** "BN%\5V$1^*'@6])D\]1?0@>:^S:8V<5C#0M&\-^.-3USPZ(+"464MC?K"/^0C?NZ/!O.?WLJ 29))8" M;&>N #U.BO+;WPQ!X=^+'A&[AT.W=9X9K)M;CNS]M9U@)$>)+BW4O*\LA$FPR$,Q)R%,C=>,<= * /4**\N\ M5^&-+B\SN/#MYX=M=5UE+A T-S=,YQ-.N,222?O,[@2QC7(RJX /=**\)\3 M^!XM(^#T"?V1;:\=$N)+B&"ZO##<:5:F8S1I;Y1PMQ%$8XTSM(Q@-CAO=0<@ M'&,^M "T444 %>?_ ! _Y#,/_7NO_H35Z!7G_P 0/^0S#_U[K_Z$U '9Z+_R M!K#_ *]X_P#T$5=JEHO_ "!K#_KWC_\ 015V@ HHHH **** "BBB@ HHHH * MJZGI=EK>GSV&HVD%_8W"&.:VNHEDCD4]596!!'L:M44 M^#M O+>QC\FUBN-+@=;=,YV1@KA5SS@8%:&K^"?#OB"UMK;5-!TS4K>VE,T$ M-W9QRI%(2274,I"MDGD<\UM44 9>H>%=%U?5;'5+[1["]U.QR;2]N+5))K?/ M7RW()7\"*KZ]X&\-^*K.UM-:\/Z5K%K:_P#'O!?V4 !Q6Y10! MCQ^#= BDTF1-#TU)-(0QZIZAJ-OHFG M0:AJ*[+V[CM(UENE])' RX]F)K7HH S= \-Z1X4T\6&B:79:/8ABXM;"W2"( M,>IVH ,GUK2HHH **** "LO7?"NB^*%MEUG1[#5Q:RB: 7ULDWDR#HZ;@=K> MXYK4HH YMOAIX0?7)-:;PKHC:S(69]1.G0_:&+ JQ,FW<202#SR#BKS>$]#? MQ"FOMHVGMKJ1^4NIFU0W*I@C:)<;@,$\9[UK44 9%MX/T&SU:\U2WT33H-3O M2K7-[%:1K-.5(*EW RV" 1DG! JKJ?P[\*:UK<>LZAX8T:_UB(HR:AWU#4;Z+2;&*^U%52]N4MD$ETJC"B5L9< < M -G JE:?#WPKI]E96=KX:T>VM+&X^V6D$-A$D=O/_P ]8U"X5_\ :&#[UT%% M !1110 4444 %8]SX-T"\UE]7N-#TV?59(#:O?26D;3M"008S(1N*D$C;G'- M;%% '/\ A[X>>%?",KRZ%X9T?199""[Z=816[,0& )**,X#,/^!'UJQI/@W0 M- %^-,T/3=-&H,7O!:6D<7VECG)DV@;SR>3GJ?6MBB@#*T'PKHGA:UCM=%T> MPTBVCW;(;"U2!%W$%L!0 ,E5)]<#TJEHWPY\)^'=3FU'2?"^C:9J$RLDMW9Z M?%#+(K'+!G502"0"Y^%O@R]TBUTJX\(Z#/I=J[26]C+ID+00LQ MRS(A7:I/<@94V[03W(&37544 8=SX%\-WNA#1+CP]I4^C#9C3I;*)K<; MG[LKM^4*H'' QTI^I^"_#^M6EA:ZAH6F7]KI[*UG#TGG&TO;5)HB^2=VQ@1G))SC.2:JQ?#_ M ,+P:98Z;'X;TB/3K"<75I:)81"&WF!)$D:;<(^23N !Y-;]% '/1_#OPI#X MB.OQ^&-&37BYD.J+I\0NMY&"WF[=V2"1G/>KNB>%=%\,M=MH^CV&E&\E,UR; M&V2'SY#U=]H&YN3R>:U** "BBB@ HHHH SM>\.Z3XITY]/UK3+/5[!V#-:W] MND\1(.02K C(-9=Y\,_!^H:I;ZG=>%-$N=2MA&(+R;3H7FB"8\O:Y7*[<#&# MQCBNEHH Q[SP;X?U&_TV^N]#TVZO=- %C%=D4NI6$5PT:YSA2ZD@9["KU0RFW/6 M'?C.S_9SCVK5HH Y"'X/> K>RN+.+P1XG:-IMII.GQDE+2Q@6&)23DX10 ,DD]*T** "BBB@ HHHH MR]0\*Z+JVK6.J7VCV%[J=B2;2]N+9))K?/7RW(RGX$5GZ5\-/"&@ZE)J.F>% M=$T[4).7N[33H8I6^8-RZJ"?F4-UZ@'M7244 9-CX3T/3-:O-8L]&T^TU>]& MVYOX+5$N)QQP\@&YN@ZD]!2:/X/T'P])/)I6B:=IDD\QN97L[2.(R2D$&1BH M&6(9AN//)]:UZ* .>C^'?A2'Q$=?C\,:,FO%S(=473XA=;R,%O-V[LD$C.>] M)<_#KPG>V%Y8W'AC1I[*]N3>75M+I\31SSGK*ZE<,_\ M')]ZZ*B@#FK7X9^ M#[%]->V\*:);MIC%[%HM.A4VC%MQ,6%^0EN25QSS72T44 %%%% !7G_Q _Y# M,/\ U[K_ .A-7H%>?_$#_D,P_P#7NO\ Z$U '9Z+_P @:P_Z]X__ $$5=JEH MO_(&L/\ KWC_ /015V@ HHHH **** "BBB@ HHHH **** /"?&O[8_@KP+XJ MU+0+W3M>N+RPE,$SV]K%Y98==N^521[XP>HR.:Y37_V]O"L>CW1T30M8GU79 MBW34(XHX-WJ[)*S8'7 '.,9&0R*DJ%&,4C1N 1@[64AE/N"".QK*M7P4XM4J+B^CYK_A M;]2J=/$1:W\UI=7&O7=S BP,62.2 M":5HG0@;2&7.#P0<&O2?^%.^&?[!TW1@FJII^G7'VFU1-.3.0?,$V\@' MH"2!S@#-5X/@=X0AN!+):ZE>I]I^V-:W^M7UU;/-NW>8\$LS1LV[# LIP0#U M KRSM..^&%YJ&I:W):>)+O6H;K6;2ZN87BU"26QO8G9&!@=6#6LT"L(C&-G. M64L)-5U:X@O[FVO-$U>+4KBWGF0RH)K.6:.17=T5V(W$[ MT(/+1L:]/T[X9>'=)U2?4+2UN(;F6.6,?Z?<%(1*093"A?;"SD99HPK$\DYJ MU8^!=%L-$L-)6WFN;*PG2ZMA?7TT5P M8FEBJC7U>JH=[QYK_BCT<+5PE)/ZS2<^UI;OWY;?B M?08O'Y)4C!4<+*ZW][E[=N:_X?CIY'K&N-\7/#.CZSX0U34M U.'4&BM9)I) M(XFD6,N4GA1]DT;;54YW$ MM*M5OP=XJL]4O_$?B>5-4M+^RL(X]0T::^GF2 MSN4,HEC6#>8PQ\M-K(HW@AA]\Y[O7?"]CXCFT^6\:\5["<7$'V6^GMAO''SB M)U#C&1M?(P3QR:IZWX!T37Y;J6YM[B&>[:!KB:QO9[224PEC%N:%U)V[CU// M&<[1CZBDIQ@E4=Y=7:U_EK8^3JRA*;=./+'HKWM\[*_W'DND:YK>N^!_$6@V MM_JUQK%I>VUU"-3-UH]WJ%O*5DE@BDG5)(]TBW,2,N H"*&4)H\Z^]E'4HK:Q MN'NX6M]9O(9C.Y):5Y4E#R.23\SLQY/-:F1S6@:C+\/O'GBG0AJFHZSH5KH\ M6LQP7]Q)>W%FY>1&B65RTCJX0,JN200P7@X'(VWQ&UC3_!NI:1%J.JQZDVM6 M%JNJ:K87%M<16U[+&LDJ)JP?"3PS:Z3<:?#;WT,=S M7%S'JMVMW<2K]UI;D2^;)C #.0 ,<"K/B#X:>'?%6JMJ&K64M],]HUB M\,MW-]GDA))*O '\MN3G+*2"%.JX V@!?%5[J%GKESJ>GWB;7CU MQIKZ]@ )*Q0W3RY2 'GRV1B222_(QL:U\-/#VOZRVJW=K<"\D1(Y_LU]/;QW M:+G:MQ'&ZI.H!(VR*PP2.A(H YJ3XJWVGZA'!!HHUK1HKQ=';4K:^47$EYY( MD'[EEVB-B57>9<[F!V[?FK$TWX^ZQ>6MC>W'@^&STZYM-/U%ICJP=X[>ZE\H M900\R!^0@.TKR75ODKT&;X;^'I_$-QK9LY4U"X'[QHKR9(R_E^6)?*5P@E"? M*)0N\#@-BL8? GP:MFMH+/4?LZ6T%FL?]MWV%AAD\R)!^^XVMR._;IQ0!S.I M?M :AH6AR>(=5\'M8^'EU&XTGS3J<;W0N$FDACW1!=@C=T52PD)5F/RE1O-[ M5_C3JOAVTODU;PQ!::CI]Y%!>%-0>2QB@DB,BS_:?(^5>"F94C0-]YU7#4_P M5\%;1+75I/%NG07MW>ZA?W'V5=6NKVR$=Q)(V5@E"1QR!)60LD8.-QW?.PKH M_P#A4GAL:.--6+4HX?,,K3QZS>+YBU&Y0)+"GEQF,+(!& GRE4PK+P016CH?@G1_#FI7E]86\T4]T M69EDNI98X]S;W$4;L4A#-\S",*&(!.2!0!YII/B?4/!%[>66F:;J/B6YU;Q- MJ7"ZBL<,9WG=%P5P6RRCOX/@_X9M[F.=(]4,T=\VI*[ZW M>L1<,A1GYF/569<=,$\51N/@#X'NK*VLYM+NI+2"&.V,#:K=[)XHW,D<+M1TWX8S^('M+2'4_L8F2WAN3<0)(^ G[S:N]06!) M&><>M/C^%7AJ*\:Y2SN5.>.,8P* .,E\&QS?$4:9/K7 MB&6*;07:5UUNZBW2^I75H)H,]#%#*L:L0!N**NXY. #@6=0^%/AS4[G0KF>+4?M&AP&WT^6+5 M[R)HD*A3DK*"Y( !9\DCJ30!YEX-CNM,@]N]O>>!KO1I4\07VMQ3:I_9UQ%>S"3]W,2 M8P>.'B;: PP60D,&.UAI)\(/"\>A66DI;7RV]C,]Q:SKJUV+JW=\[]ESYOG* M&R<@/@Y.15^'P/9V]QI"1NRZ9I1::WLVR[/<'<#/+*Q+2-AV.2W<=A9SW,N[RH8VD?8I8X R< =3QTKRL_M+>& 3_ *#JQ]_)B_\ MCE>M44 >-R?M,Z*-1A":;?FP\MO-=D02A\C;M7?@C&PG%Q!]EOI[8;QQ\XB=0XQD;7R,$\6;I< M730O+%U*7PX]SHZZ=8:OIJ7 MWVBYN70B0JS/%#OA59F0()K#Q'KFMWVG0PV5SI.FSZ9 MI=UK0$"K--,H9BL&Y9B-H,:+.S-M5"W&/0]*^$'A;17L#:VEZ(K$8AMIM4NY M;?JQ!:)Y2CE=QVEU.WC;C QFP_L_>!K>021:9>)/'$D%O.-7O/-M(D;G?'*YUC1=,U:Q\/QR63P6,FH^;?-');/=.(XTB4Q?O M=K'+%O+P,8#'*C9\=P/%X]\'W<**X\_9+M\SS0"7"B16"[^, 5W M6N>!M*\2:OI^J7XOOMUBCK UKJ5S;HF\$-\D$UL[S4;/3[K2[4ZD'$QNG=%69Q'B(*4+$J')0@XW?NZQ?"7Q0\4^&]#U*' M5],BU6^ABUO4?,N=8+-NM+L*T&Y;8#9LE78X4=,%%ZUWD7P/\'16:6JV%X8( M[2&RC5]5NV,44,GF0["9
PMM(AM;RQTF6_LFN[MHI+@ MK"'+JCQ /&"P&Z-I,%2'"$J#0'Q8\0W^F7JZEX.:*'3=2L-/NY[77?+%K1Y/*T^5('M6LA9?;9_LL43((V$<&_RX MR4&W7:7ZKJ-K)8W"?VO>%/(=MS1HIEQ&N2+X?6VM^*/&\#>(?$^FFS>W^R7$'B.]"VI:!7+ M"-IC&PWD&(M*U2\U!G22>6-+:%8XA'';6R9\N%%'8%B2>Y/8!5 !MT444 %%%% !11 M10 4444 %%%% !7G_P 0/^0S#_U[K_Z$U>@5Y_\ $#_D,P_]>Z_^A-0!V>B_ M\@:P_P"O>/\ ]!%7:\:/4TE 'LU%>,T4 >S45XS10![-17C-% 'LU%>,T4 > MS45XS10![-17C-% 'LU%>,T4 >S45XS10![-17C-% 'LU%>,T4 >S45XS10! M[-17C-% 'LU%>,T4 >S45XS10![-17C-% 'LU%>,T4 >S45XS10![-17C-% M'LU%>,T4 >S45XS10![-17C-% 'LU%>,T4 >S45XS10![-17C-% 'LU%>,T4 M >S45XS10![-17C-% 'LU%>,T4 >S45XS10![-17C-% 'LU%>,T4 >S45XS1 M0![-17C-% 'LU%>,T4 >S45XS10![-17C-% 'LU%>,T4 >S45XS10![-17C- :% 'LU>?_ ! _Y#,/_7NO_H35S-2)TH __]D! end
EX-101.SCH 10 hdsn-20231231.xsd EX-101.SCH 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink 00100 - Statement - Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - Consolidated Income Statements link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - Inventories (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - Property, plant and equipment - Summary of elements of property, plant and equipment (Details) link:presentationLink link:calculationLink link:definitionLink 40502 - Disclosure - Leases - Maturity of lease payments (Details) - calc 2 link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - Leases - Maturity of lease payments (Details) link:presentationLink link:calculationLink link:definitionLink 40602 - Disclosure - Leases - Balance Sheet Classification and Other Information (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - Income taxes - Provision for income taxes (Details) link:presentationLink link:calculationLink link:definitionLink 40702 - Disclosure - Income taxes - Reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate (Details) link:presentationLink link:calculationLink link:definitionLink 40703 - Disclosure - Income taxes - Deferred income tax assets (liabilities) (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - Goodwill and intangible assets - Company's other intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - Accrued expenses and other current liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - Short-term and Long-term debt (Details) link:presentationLink link:calculationLink link:definitionLink 00105 - Statement - Consolidated Balance Sheets (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - Consolidated Statements of Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - Summary of Significant Accounting Policies (Details) link:presentationLink link:calculationLink link:definitionLink 40102 - Disclosure - Summary of Significant Accounting Policies - Reconciliation of shares used to determine net income per share (Details) link:presentationLink link:calculationLink link:definitionLink 40103 - Disclosure - Summary of Significant Accounting Policies - Summary of company's revenues (Details) link:presentationLink link:calculationLink link:definitionLink 40302 - Disclosure - Trade accounts receivable - net - Reserves for doubtful accounts (Details) link:presentationLink link:calculationLink link:definitionLink 40303 - Disclosure - Trade accounts receivable - net - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40502 - Disclosure - Property, plant and equipment - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40603 - Disclosure - Leases - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40802 - Disclosure - Goodwill and intangible assets - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41002 - Disclosure - Short-term and Long-term debt - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - Commitments and contingencies - Non-cancelable operating leases (Details) link:presentationLink link:calculationLink link:definitionLink 41102 - Disclosure - Commitments and contingencies (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - Share-based compensation (Details) link:presentationLink link:calculationLink link:definitionLink 41202 - Disclosure - Share-Based Compensation - Weighted Average Assumptions Used in Determining Fair Value of Share Based Awards at Grant Date by Using Black-Scholes Option Pricing Model (Details) link:presentationLink link:calculationLink link:definitionLink 41203 - Disclosure - Share-based compensation - Summary of the activity for stock options issued under the Company's Plans (Details) link:presentationLink link:calculationLink link:definitionLink 41204 - Disclosure - Share-based compensation - Weighted average contractual life in years and the weighted average exercise price (Details) link:presentationLink link:calculationLink link:definitionLink 41205 - Disclosure - Share-Based Compensation - Intrinsic Value (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - Fair Value link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - Trade accounts receivable - net link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - Inventories link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - Property, plant and equipment link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - Income taxes link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - Goodwill and intangible assets link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - Accrued expenses and other current liabilities link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - Short-term and Long-term debt link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - Commitments and contingencies link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - Share-based compensation link:presentationLink link:calculationLink link:definitionLink 11301 - Disclosure - Retirement benefits plan link:presentationLink link:calculationLink link:definitionLink 20102 - Disclosure - Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 30103 - Disclosure - Summary of Significant Accounting Policies (Tables) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - Trade accounts receivable - net (Tables) link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - Inventories (Tables) link:presentationLink link:calculationLink link:definitionLink 30503 - Disclosure - Property, plant and equipment (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - Income taxes (Tables) link:presentationLink link:calculationLink link:definitionLink 30803 - Disclosure - Goodwill and intangible assets (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - Accrued expenses and other current liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 31003 - Disclosure - Short-term and Long-term debt (Tables) link:presentationLink link:calculationLink link:definitionLink 31103 - Disclosure - Commitments and contingencies (Tables) link:presentationLink link:calculationLink link:definitionLink 31203 - Disclosure - Share-based compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - Trade accounts receivable - net - Changes in accounts receivable (Details) link:presentationLink link:calculationLink link:definitionLink 40604 - Disclosure - Leases - Supplemental cash flow and non-cash information related to leases (Details) link:presentationLink link:calculationLink link:definitionLink 41301 - Disclosure - Retirement benefits plan (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 11 hdsn-20231231_cal.xml EX-101.CAL EX-101.DEF 12 hdsn-20231231_def.xml EX-101.DEF EX-101.LAB 13 hdsn-20231231_lab.xml EX-101.LAB Document Entity Information Document Type Document Annual Report Document Transition Report Document Period End Date Entity File Number Entity Registrant Name Entity Incorporation, State or Country Code Entity Tax Identification Number Entity Address, Address Line One Entity Address, Address Line Two Entity Address, City or Town Entity Address, State or Province Entity Address, Postal Zip Code City Area Code Local Phone Number Title of 12(b) Security Trading Symbol Security Exchange Name Entity Well-known Seasoned Issuer Entity Voluntary Filers Entity Current Reporting Status Entity Interactive Data Current Entity Filer Category Entity Small Business Entity Emerging Growth Company ICFR Auditor Attestation Flag Document Financial Statement Error Correction [Flag] Entity Shell Company Entity Public Float Entity Common Stock, Shares Outstanding Amendment Flag Auditor Name Auditor Firm ID Auditor Location Entity Central Index Key Current Fiscal Year End Date Document Fiscal Year Focus Document Fiscal Period Focus Consolidated Balance Sheets Statement [Table] Statement [Line Items] Statement Assets [Abstract] Assets Assets Current [Abstract] Current assets: Cash and Cash Equivalents, at Carrying Value Cash and cash equivalents Accounts Receivable, Net, Current, Total Ending Balance Beginning Balance Trade accounts receivable - net Inventory, Net Inventories Total Income Taxes Receivable Income tax receivable Prepaid Expense and Other Assets, Current Prepaid expenses and other current assets Assets, Current, Total Total current assets Property, Plant and Equipment, Net Property, plant and equipment, less accumulated depreciation Total Goodwill Goodwill Goodwill Intangible Assets, Net (Excluding Goodwill), Total Intangible assets, less accumulated amortization Operating Lease, Right-of-Use Asset Right of use asset Other Assets Noncurrent Other assets Assets, Total Total Assets Liabilities and Stockholders Equity [Abstract] Liabilities and Stockholders' Equity Liabilities Current [Abstract] Current liabilities: Accounts Payable, Trade, Current Trade accounts payable Accrued Liabilities and Other Liabilities, Total Accrued expenses and other current liabilities Total Employee-related Liabilities, Current Accrued payroll Long-term Debt, Current Maturities Current maturities of long-term debt Liabilities, Current, Total Total current liabilities Deferred Income Tax Liabilities, Net Net deferred income tax liabilities Deferred tax liability Operating Lease, Liability, Noncurrent Long-term lease liabilities Long-term lease liabilities Long-term Debt, Excluding Current Maturities, Total Subtotal Long-term debt, less current maturities, net of deferred financing costs Liabilities, Total Total Liabilities Commitments and Contingencies. Commitments and contingencies Consolidated Statements of Stockholders' Equity Stockholders' equity: Preferred Stock Value Preferred stock, shares authorized 5,000,000: Series A Convertible preferred stock, $0.01 par value ($100 liquidation preference value); shares authorized 150,000; none issued or outstanding Common Stock Value Common stock, $0.01 par value; shares authorized 100,000,000; issued and outstanding: 45,502,380 and 45,287,619 respectively Additional Paid In Capital Additional paid-in capital Retained Earnings Accumulated Deficit Retained earnings Stockholders' Equity Attributable to Parent Balance Balance Total Stockholders' Equity Liabilities and Stockholders Equity Total Liabilities and Stockholders' Equity Class of Stock [Axis] Class of Stock [Domain] Preferred Stock [Member] Preferred stock Series A Preferred Stock [Member] Series A Convertible Preferred Stock Preferred Stock Par Or Stated Value Per Share Preferred stock, par value Preferred Stock, Liquidation Preference, Value Preferred stock, liquidation preference value Preferred Stock Shares Authorized Preferred stock, shares authorized Preferred Stock Shares Issued Preferred stock, issued Preferred Stock Shares Outstanding Preferred stock, outstanding Common Stock, Par Or Stated Value Per Share Common stock, par value Common Stock Shares Authorized Common stock, shares authorized Common Stock, Shares, Issued Common stock, issued Common Stock Shares Outstanding Common stock, outstanding Consolidated Income Statements Revenues Revenues Cost of Revenue Cost of sales Gross Profit Gross profit Operating Expenses [Abstract] Operating expenses: Selling, General and Administrative Expense Selling, general and administrative Amortization Amortization Operating Expenses Total operating expenses Operating Income (Loss) Operating income Other Noncash Income (Expense) [Abstract] Other (expense) income: Interest Expense Interest expense Other Income Other income Other Nonoperating Income (Expense) Total other expense Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Income before income taxes Income Tax Expense (Benefit) Expense for income taxes Income tax expense Net income Net income Earnings Per Share, Basic Net income per common share - Basic Earnings Per Share, Diluted Net income per common share - Diluted Weighted Average Number of Shares Outstanding, Basic Weighted average number of shares outstanding - Basic Weighted average number of shares - basic Weighted Average Number of Shares Outstanding, Diluted Weighted average number of shares outstanding - Diluted Weighted average number of shares outstanding - diluted Equity Components [Axis] Equity Component [Domain] Common Stock [Member] Common Stock Additional Paid-in Capital [Member] Additional Paid-in Capital Retained Earnings [Member] Retained Earnings (Accumulated Deficit) Shares, Outstanding Balance (in shares) Balance (in shares) Stock Issued During Period, Value, Stock Options Exercised Issuance of common stock upon exercise of stock options Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Exercises In Period -Exercised Issuance of common stock upon exercise of stock options (in shares) Amount of increase (decrease) in additional paid in capital (APIC) resulting from a tax benefit (deficiency) associated with an share-based compensation plan other than an employee stock ownership plan (ESOP). Adjustments To Additional Paid In Capital Income Tax Effect From Share Based Compensation Net Excess tax benefits from exercise of stock options Stock Issued During Period, Value, Issued for Services Issuance of common stock for services Stock Issued During Period, Shares, Issued for Services Issuance of common stock for services (in shares) Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition Share-based compensation Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Net income Consolidated Statements of Cash Flows Net Cash Provided by (Used in) Operating Activities [Abstract] Cash flows from operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Adjustments to reconcile net income to cash provided by (used in) operating activities: Depreciation, Depletion and Amortization Depreciation Amortization of Intangible Assets Amortization of intangible assets Impairment, Long-Lived Asset, Held-for-Use Impairment of long lived assets Amount of forgiveness under payment protection program. Payment Protection Program Forgiveness Forgiveness of Payroll Protection Program loan Amount of expense related to lower of cost or net realizable value adjustment incurred during the year. Lower Of Cost Or Net Realizable Value Adjustment Lower of cost or net realizable value inventory adjustment Provision for Doubtful Accounts Net additions charged to Operations Allowance for doubtful accounts Amortization of Financing Costs Amortization of deferred finance cost Gain (Loss) on Extinguishment of Debt Loss on extinguishment of debt Share Based Compensation Share based compensation Deferred Income Tax Expense (Benefit) Total Deferred tax expense Increase Decrease In Operating Capital [Abstract] Changes in assets and liabilities: Increase Decrease In Accounts Receivable Trade accounts receivable Increase Decrease In Inventories Inventories Increase Decrease In Prepaid Deferred Expense and Other Assets Prepaid and other assets The increase (decrease) during the reporting period in the lease obligations. Increase (Decrease) in Lease Obligations Lease obligations Increase (Decrease) in Income Taxes Payable Income taxes receivable/payable Increase Decrease In Accounts Payable and Accrued Liabilities Accounts payable and accrued expenses Net Cash Provided by (Used in) Operating Activities Cash provided by (used in) operating activities Net Cash Provided by (Used in) Investing Activities [Abstract] Cash flows from investing activities: Payments To Acquire Property Plant and Equipment Additions to property, plant, and equipment Net Cash Provided by (Used in) Investing Activities Cash used in investing activities Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract] Cash flows from financing activities: Proceeds from Issuance of Common Stock Net proceeds from issuances of common stock and exercises of stock options Amount of cash inflow from realized tax benefit related to deductible compensation cost reported on the entity's tax return for equity instruments in excess of the compensation cost for those instruments recognized for financial reporting purposes. Excess Tax Benefits From Share Based Compensation Financing Activities Excess tax benefits from exercise of stock options Payments of Merger Related Costs, Financing Activities Payment of deferred financing cost Proceeds From Repayments Of Short Term Debt Borrowing of short-term debt - net Proceeds from Issuance of Long-term Debt Proceeds from long term debt Repayments Of Long Term Debt Repayment of long-term debt Repayment of debt Net Cash Provided by (Used in) Financing Activities Cash (used in) provided by financing activities Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect Increase in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents Cash and cash equivalents at end of period Cash and cash equivalents at beginning of period Supplemental Cash Flow Information [Abstract] Supplemental disclosure of cash flow information: Interest Paid, Net Cash paid during period for interest Income Taxes Paid, Net Cash paid for income taxes Capital Expenditures Incurred but Not yet Paid Property and equipment included in accrued expenses and other current liabilities Summary of Significant Accounting Policies Significant Accounting Policies [Text Block] Summary of Significant Accounting Policies Fair Value Fair Value Measurement and Measurement Inputs, Recurring and Nonrecurring [Text Block] Fair Value Trade accounts receivable - net Loans, Notes, Trade and Other Receivables Disclosure [Text Block] Trade accounts receivable - net Inventories Inventory Disclosure [Text Block] Inventories Property, plant and equipment Property, Plant and Equipment Disclosure [Text Block] Property, plant and equipment Leases Lessee, Operating Leases [Text Block] Leases Income taxes Income Tax Disclosure [Text Block] Income taxes Goodwill and intangible assets Goodwill and Intangible Assets Disclosure [Text Block] Goodwill and intangible assets NA Accrued expenses and other current liabilities Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block] Accrued expenses and other current liabilities Short-term and Long-term debt Debt Disclosure [Text Block] Short-term and Long-term debt Commitments and contingencies Commitments and Contingencies Disclosure [Text Block] Commitments and contingencies Share-based compensation Share-Based Payment Arrangement [Text Block] Share-based compensation Retirement benefits plan Retirement Benefits [Text Block] Retirement benefits plan Disclosure of accounting policy for nature of operations. Nature Of Operations, Policy [Policy Text Block] Business Consolidation, Policy [Policy Text Block] Consolidation Fair Value Of Financial Instruments, Policy [Policy Text Block] Fair Value of Financial Instruments Concentration Risk, Credit Risk, Policy [Policy Text Block] Credit Risk Cash and Cash Equivalents, Policy [Policy Text Block] Cash and Cash Equivalents Inventory, Policy [Policy Text Block] Inventories Property, Plant and Equipment, Policy [Policy Text Block] Property, Plant and Equipment Goodwill and Intangible Assets, Policy [Policy Text Block] Goodwill Lessee, Leases [Policy Text Block] Leases Disclosure of accounting policy for cylinder deposit liability. Cylinder Deposit Liability, Policy [Policy Text Block] Cylinder Deposit Liability Revenue from Contract with Customer [Policy Text Block] Revenues and Cost of Sales Income Tax, Policy [Policy Text Block] Income Taxes Earnings Per Share, Policy [Policy Text Block] Income per Common and Equivalent Shares Use Of Estimates, Policy [Policy Text Block] Estimates and Risks Impairment Or Disposal Of Long-Lived Assets, Policy [Policy Text Block] Impairment of Long-lived Assets Research, Development, and Computer Software, Policy [Policy Text Block] Capitalized Software Development Costs New Accounting Pronouncements, Policy [Policy Text Block] Recent Accounting Pronouncements Reconciliation of Revenue from Segments to Consolidated [Table Text Block] Schedule of Product and related sales and RefrigerantSide Services revenues Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Schedule of reconciliation of shares used to determine net income per share Tabular disclosure of the changes in the balance of accounts receivable during the year. Schedule of Changes in Accounts Receivable [Table Text Block] Schedule of changes in the balance of accounts receivable Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Schedule of activity occurring in the reserves for allowance for credit losses Schedule of Inventory, Noncurrent [Table Text Block] Schedule of inventories Property, Plant and Equipment [Table Text Block] Schedule of elements of property, plant and equipment Lessee, Operating Lease, Liability, Maturity [Table Text Block] Schedule of maturity of lease payments Tabular disclosure of operating lease in balance sheet classification. Schedule of Operating Lease in Balance Sheet Classification [Table Text Block] Schedule of balance sheet classification of lease liabilities Tabular disclosure of operating lease other information. Schedule of Operating Lease Other Information [Table Text Block] Schedule of other information of operating leases Tabular disclosure of Supplemental cash flow and non-cash information related to leases. Schedule of Supplemental Cash Flow And Non-Cash Information Related To Leases [Table Text Block] Schedule of Supplemental cash flow and non-cash information related to leases Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Schedule of provision for income taxes Schedule of Effective Income Tax Rate Reconciliation [Table Text Block] Schedule of reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Schedule of net deferred income tax assets (liabilities) Schedule of Finite-Lived Intangible Assets [Table Text Block] Schedule of company's other intangible assets Schedule of Accounts Payable and Accrued Liabilities [Table Text Block] Schedule of shirt accrued expenses and other current liabilities Schedule of Debt [Table Text Block] Schedule of short-term and long-term debt Tabular disclosure of Schedule of Operating Lease in annual rent. Schedule of Operating Lease in Annual Rent [Table Text Block] Schedule of rent expense Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] Schedule of weighted-average assumptions used in determining fair value of share based awards Share-Based Payment Arrangement, Option, Activity [Table Text Block] Schedule of the activity for stock options issued Share-Based Payment Arrangement, Activity [Table Text Block] Schedule of weighted average contractual life in years and the weighted average exercise price Schedule of Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Grant Date Intrinsic Value [Table Text Block] Schedule of intrinsic value Significant Accounting Policies [Table] Significant Accounting Policies [Table] Concentration Risk Type [Axis] Concentration Risk Type [Domain] Customer Concentration Risk [Member] Customer Concentration Risk Customer [Axis] Customer [Domain] Pertains to no customers. No Customer [Member] No Customer Pertains to one customer. One Customer [Member] One Customer Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] Revenue from Contract with Customer Benchmark [Member] Revenue from Contract with Customer Accounts Receivable [Member] Accounts Receivable Income Tax Authority [Axis] Income Tax Authority [Domain] Domestic Tax Authority [Member] Federal State State Statistical Measurement [Axis] Statistical Measurement [Domain] Minimum [Member] Minimum Minimum Product and Service [Axis] Product and Service [Domain] Management Service [Member] Management Service Significant Accounting Policies [Line Items] Significant Accounting Policies [Line Items] Significant accounting policies Number of Reportable Segments Number of reportable segments The percentage of stepdown from baseline levels mentioned as final rule. Percentage Of Stepdown From Baseline Levels, Final Rule Stepdown from baseline levels, final rule The percentage of cumulative reduction from baseline levels mentioned as subsequent allowance. Percentage Of Cumulative Reduction From Baseline Levels, Subsequent Allowance Cumulative reduction in baseline, subsequent allowance The quantity of allocation allowance received by the company. Allocation Allowance Received Allocation allowance received The quantity of allocation allowance received by the company, as a percentage of Hydrofluorocarbons (HFC) Consumption. Allocation Allowance Received By The Company, As A Percentage Of Hydrofluorocarbons Consumption Allocation allowance received as a percentage of total HFC consumption Concentration Risk, Percentage Concentration risk percentage Goodwill, Impairment Loss Goodwill impairment loss Amount of cylinder deposit value. Cylinder Deposit Value Cylinder deposit liability Represents the period of contract term. Contract Term Contract term Revenue from Contract with Customer, Including Assessed Tax Total Management services revenue Represents the period of renewal term. Renewal Term Renewal term Operating Loss Carryforwards Operating loss carryforwards Deferred Tax Assets, Valuation Allowance Deferred tax assets, valuation allowance Effective Income Tax Rate Reconciliation, Percent Effective tax rate Total Deferred Tax Assets, Operating Loss Carryforwards Current year utilization comprise of deferred tax Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Options excluded from the calculation of diluted shares Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements Shares underlying options Reconciliation of Revenue from Segments to Consolidated [Table] Product [Member] Product and related sales Refrigerant Side Services [Member] RefrigerantSide Services Segment Reporting Revenue Reconciling Item [Line Items] Revenue reconciling item The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business. Increase (Decrease) in Accounts Receivable, Net Increase (Decrease), Net Accounts, Notes, Loans and Financing Receivable Allowance for Doubtful Accounts Receivable Ending Balance Beginning Balance Amount of deductions and other in the allowance for doubtful accounts. Allowance For Doubtful Accounts Receivable Deductions And Other Deductions and Other Allowance for Doubtful Accounts Receivable, Current Trade accounts receivable are net of reserves for doubtful accounts Inventory, Current [Table] Inventory [Line Items] Inventories Inventory, Gross Refrigerants and cylinders Inventory Adjustments Less: net realizable value adjustments Property, Plant and Equipment [Table] Long-Lived Tangible Asset [Axis] Long-Lived Tangible Asset [Domain] Land [Member] Land Land Improvements [Member] Land improvements Building [Member] Buildings Building Improvements [Member] Building improvements Represents the information pertaining to cylinders. Cylinders [Member] Cylinders Equipment [Member] Equipment Assets Held Under Capital Leases [Member] Equipment under capital lease Vehicles [Member] Vehicles Computer Equipment [Member] Lab and computer equipment, software Furniture And Fixtures [Member] Furniture & fixtures Leasehold Improvements [Member] Leasehold improvements Construction in Progress [Member] Construction-in-progress Maximum [Member] Maximum Property, Plant and Equipment [Line Items] Property, plant and equipment Property, Plant and Equipment, Gross Subtotal Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Less: Accumulated depreciation Property, Plant and Equipment, Useful Life Property, plant and equipment, Estimated Lives Income Statement Location [Axis] Income Statement Location [Domain] Cost of Sales [Member] Cost of sales Depreciation Depreciation expense Lessee, Operating Lease, Liability, to be Paid, Year One 2024 Lessee, Operating Lease, Liability, to be Paid, Year Two 2025 Lessee, Operating Lease, Liability, to be Paid, Year Three 2026 Lessee, Operating Lease, Liability, to be Paid, Year Four 2027 Lessee, Operating Lease, Liability, to be Paid, Year Five 2028 Lessee, Operating Lease, Liability, to be Paid, after Year Five Thereafter Lessee, Operating Lease, Liability, to be Paid Total undiscounted operating lease payments Lessee, Operating Lease, Liability, Undiscounted Excess Amount Less imputed interest Operating Lease, Liability Present value of operating lease liabilities Total operating lease liabilities Schedule of Operating Leased Assets [Table] Operating Leased Assets [Line Items] Leases Balance Sheet Classification [Abstract] Balance Sheet Classification Operating Lease, Liability, Current Current lease liabilities (recorded in Accrued expenses and other current liabilities) Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Current lease liabilities (recorded in Accrued expenses and other current liabilities) [Extensible Enumeration] Other Information [Abstract] Other Information Operating Lease, Weighted Average Remaining Lease Term Weighted-average remaining term for operating leases Operating Lease, Weighted Average Discount Rate, Percent Weighted-average discount rate for operating leases Lessee, Lease, Description [Table] Selling, General and Administrative Expenses [Member] Selling, general and administrative expenses Lessee, Lease, Description [Line Items] Leases Lessee, Operating Lease, Term of Contract Maximum lease agreement terms Operating Lease, Expense Operating lease expense Annual Rent Operating Lease, Payments Operating cash flow from operating leases Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Right -of-use assets obtained in exchange for new operating lease liabilities Operating Loss Carryforwards [Table] Operating Loss Carryforwards [Line Items] Income taxes Current Income Tax Expense (Benefit), Continuing Operations [Abstract] Current: Current Federal Tax Expense (Benefit) Federal Current State and Local Tax Expense (Benefit) State and local Current Income Tax Expense (Benefit) Total Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract] Deferred: Deferred Federal Income Tax Expense (Benefit) Federal Deferred State and Local Income Tax Expense (Benefit) State and local Effective Income Tax Rate Reconciliation, Percent [Abstract] Income tax rates Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent - Statutory U.S. federal rate Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent - State income taxes, net of federal benefit Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-based Compensation Cost, Percent - Excess tax benefits related to stock compensation Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for internal revenue code act limitation. Effective Income Tax Rate Reconciliation, Nondeductible Expense, Internal Revenue Code Act Limitation, Percent - 162m limitation Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to benefit from Paycheck Protection program. Effective Income Tax Rate Reconciliation, Paycheck Protection Program (PPP) Benefit, Percent - PPP Benefit Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent - Valuation allowance Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other true up. Effective Income Tax Rate Reconciliation, Nondeductible Expense, Other true Up, Percent - Other true-up Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals [Abstract] Deferred income tax assets (liabilities) Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Allowance for Doubtful Accounts - Reserves for doubtful accounts Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Reserves - Inventory reserve Amount before allocation of valuation allowances of non qualified stock options. Deferred Tax Assets Tax Deferred Expense Reserves And Non Qualified Stock Options - Non qualified stock options Deferred Tax Assets, Deferred Income - Deferred interest Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities - Accrued expenses Deferred Tax Assets, Net of Valuation Allowance Net deferred income tax assets Amount before allocation of valuation allowances of depreciation and amortization. Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Depreciation And Amortization - Depreciation & amortization Deferred Tax Liabilities, Net Total deferred tax assets Schedule of Finite-Lived Intangible Assets [Table] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Noncompete Agreements [Member] Covenant not to compete Customer Relationships [Member] Customer relationships Above Market Leases [Member] Above market leases Finite-Lived Intangible Assets [Line Items] Goodwill and intangible assets Finite-Lived Intangible Assets, Remaining Amortization Period Amortization Period (in years) Finite-Lived Intangible Assets, Gross Gross Carrying Amount Finite-Lived Intangible Assets, Accumulated Amortization Accumulated Amortization Finite-Lived Intangible Assets, Net, Total Net Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months 2024 Finite-Lived Intangible Assets, Amortization Expense, Year Two 2025 Finite-Lived Intangible Assets, Amortization Expense, Year Three 2026 Finite-Lived Intangible Assets, Amortization Expense, Year Four 2027 Finite-Lived Intangible Assets, Amortization Expense, Year Five 2028 Finite-Lived Intangible Assets, Amortization Expense, after Year Five Thereafter Accrued Liabilities, Current Accrued expenses Deposit Liability, Current Cylinder deposits Present value of lessee's discounted obligation for lease payments from operating lease, classified as current. Lease Obligations Current Lease obligations Other Liabilities, Current Other current liabilities Schedule of accounts short-term and long-term debt. Short-term and long-term debt [Table] 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. Short-term and long-term debt [Line items] Short-term and Long-term debt Short-term Debt [Abstract] Short-term debt: Its represent the amount of long-term debt current net of other debt. Long Term Debt Current Net of Other Debt. - Term loan facility - current Debt, Current, Total Subtotal Long-term Debt, Unclassified [Abstract] Long-term debt: Its represent the amount of long-term debt non current net of other debt. Long Term Debt Non Current Net of Other Debt - Term loan facility- net of current portion of long-term debt Represents long term debt of first in last out. Long Term Debt First In Last Out (FILO) - FILO term loan Debt Issuance Costs, Noncurrent, Net - Less: deferred financing costs on term loan Debt, Long-term and Short-term, Combined Amount Total short-term & long-term debt Lender Name [Axis] Line of Credit Facility, Lender [Domain] Represents the information pertaining to the term loan. Term Loan [Member] Term Loan Represents the information pertaining to wells Fargo. Wells Fargo [Member] Wells Fargo Credit Facility [Axis] Credit Facility [Domain] Represents the information pertaining to Revolving credit facility Amendment. Revolving Credit Facility Amendment [Member] Revolving credit facility Amendment Information pertaining to the amended and restated revolving credit and security agreement. Amended And Restated Revolving Credit And Security Agreement [Member] Amended and restated revolving credit and security agreement Represents the information pertaining to swing line. Swing Line Loan [Member] Swing line loan Letter Of Credit [Member] Letter of credit Revolving Credit Facility [Member] Revolving Credit Facility Represents the information pertaining to the term loan facility. Term Loan Facility [Member] Term Loan Facility Represents the information pertaining to the prior term loan facility. Prior Term Loan Facility [Member] Prior Term Loan Facility Variable Rate [Axis] Variable Rate [Domain] Represents the information pertaining to the Secured Overnight Financing Rate (SOFR). SOFR [Member] SOFR Represents the information pertaining to the Prime Commercial Lending Rate Of Wells Fargo. Prime commercial lending rate of Wells Fargo [Member] Prime commercial lending rate of Wells Fargo Short-term Debt, Type [Axis] Short-term Debt, Type [Domain] Represents the information pertaining to fixed charge coverage ratio. FCCR [Member] FCCR Long-term Debt, Type [Axis] Long-term Debt, Type [Domain] Represents the information pertaining to paycheck protection program. Paycheck Protection Program [Member] Paycheck Protection Program Debt Instrument [Axis] Debt Instrument, Name [Domain] Represents the information pertaining to CARES Act Loan. CARES Act Loan [Member] CARES Act Loan Scenario [Axis] Scenario, Unspecified [Domain] Represents the information pertaining to First In Last out Tranche Loans. FILO Tranche [Member] FILO Tranche Represents the information pertaining to Secured Overnight Financing Rate And First in Last Out Tranche Loans. SOFR FILO Tranche [Member] SOFR FILO Tranche Line of Credit Facility, Maximum Borrowing Capacity Maximum borrowing capacity Proceeds from Lines of Credit Amount borrowed Letters of Credit Outstanding, Amount Amount outstanding, letter of credit Debt Instrument, Basis Spread on Variable Rate Debt instrument, basis spread on variable rate Percentage points added to the calculated interest rate dependent on average quarterly undrawn availability. Debt Instrument Additional Percentage Points Interest Additional interest percentage Represents the minimum amount from availability. Line of Credit Facility, Covenant Compliance, Minimum Liquidity Minimum liquidity requirement Represents the minimum amount to be derived from availability. Line of Credit Facility, Covenant Compliance, Minimum Liquidity to be Derived From Availability Minimum amount to be derived from availability The minimum aggregate undrawn term loan availability used to determine percentage of excess cash flow to be used to paydown the loan. Minimum Aggregate Undrawn Loan Availability Minimum aggregate undrawn loan availability Fixed charge coverage ratio reported during the year. Fixed Charges Coverage Ratio Fixed charges coverage ratio Represents the period for FCCR covenant. Period For Fixed Charge Coverage Ratio Period for FCCR covenant Debt Issuance Costs, Net Deferred financing costs Line of Credit Facility, Expiration Period Line of credit facility term Debt Instrument, Face Amount Debt instrument loan amount Deferred Offering Costs Payment of term loan deferred financing costs Long-term Debt, Gross Principal balance of debt The amount of debt paid in the form of excess cash flow amount. Debt Instrument, Payment, Excess Cash Flow Amount Payment of debt, cash flow amount Debt Related Commitment Fees and Debt Issuance Costs Lender fees and expenses on debt Line of Credit Facility, Periodic Payment, Interest Credit facility, interest expense Unsecured Debt Unsecured loan Long-term Debt, Term Term of unforgiven loan Debt Instrument, Interest Rate, Stated Percentage Debt instrument interest at fixed rate The information pertaining to period for which interest can be deferred for unforgiven loan under paycheck protection program. Debt Instrument , Interest Deferral Term Deferral term of unforgiven loan Debt Instrument, Fee Amount Other expense and fees Loss Contingencies [Table] Property Location [Axis] Property Location [Domain] This member stands for Baton Rouge Louisiana. Baton Rouge Louisiana [Member] Baton Rouge Louisiana This member stands for Champaign Illinois. Champaign Illinois [Member] Champaign, Illinois This member stands for Champaign Illinois (2nd Location). Champaign, Illinois (2nd location) [Member] Champaign, Illinois (2nd location) This member stands for Charlotte North Carolina. Charlotte North Carolina [Member] Charlotte, North Carolina This member stands for Escondido California. Escondido California [Member] Escondido,California This member stands for long beach California. Long Beach California [Member] Long Beach California This member stands for Ontario California. Ontario California [Member] Ontario, California This member stands for Riverside California. Riverside California [Member] Riverside, California Represents information pertaining to Rantoul, Illinois. Rantoul, Illinois [Member] Rantoul, Illinois This member stands for Smyrna Georgia. Smyrna Georgia [Member] Smyrna, Georgia This member stands for Stony Point Ny. Stony Point Ny [Member] Stony Point, New York Represents information pertaining to Woodcliff Lake, New Jersey. Woodcliff Lake, New Jersey [Member] Woodcliff Lake, New Jersey Loss Contingencies [Line Items] Commitments and contingencies Lease Expiration Date Lease Expiration Date The date of lease expiration period description. Lease Expiration Period Description Lease expiration period description Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table] Plan Name [Axis] Plan Name [Domain] Represents the information pertaining to two thousand and fourteen stock incentive plan. 2014 Stock Incentive Plan [Member] 2014 Stock Incentive Plan Represents the information pertaining to two thousand and eighteen stock incentive plan. 2018 Stock Incentive Plan [Member] 2018 Stock Incentive Plan Represents the information pertaining to two thousand and twenty stock incentive plan. 2020 Stock Incentive Plan [Member] 2020 Stock Incentive Plan Represents the information pertaining to Stock Option Plan. Stock Option Plan [Member] Stock Option Plan Option Indexed to Issuer's Equity, Type [Axis] Option Indexed to Issuer's Equity, Type [Domain] Stock Option Plan Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] Share-based compensation Share-Based Payment Arrangement, Expense Share based compensation expense Deferred Compensation Arrangement with Individual, Common Stock Reserved for Future Issuance Common stock reserved for issuance Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period Stock option vesting period Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures -Granted Options granted Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage Stock option vesting, percentage Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount Unrecognized share based compensation expense related to non-vested options Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross Option to purchase granted Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares Options vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value Intrinsic value of options outstanding Amount of intrinsic value of equity-based compensation awards not vested. Share based Compensation Arrangement by Share based Payment Award, Options, Aggregate Intrinsic Value, Nonvested. Intrinsic value of options unvested Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value Intrinsic value of options exercised Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term Expected lives Share based compensation arrangement by share based payment award percentage from fair market price. Share based Compensation Arrangement By Share Based Payment Award Percentage From Fair Market Price Share-based compensation arrangement by share based payment award percentage of fair market Person holding more then 10% voting stock Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate Dividend yield Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate Risk free interest rate Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate Expected volatility Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward] Number of Options Shares Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number Outstanding at end of period Outstanding at beginning of period Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period -Cancelled Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price [Abstract] Weighted Average Exercise Price Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price Outstanding at end of period Outstanding at beginning of period Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price -Cancelled Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price -Exercised Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Grants In Period, Weighted Average Grant Date Fair Value -Granted Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number Options outstanding and vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract] Weighted Average Remaining Contractual Life Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term Options outstanding and vested Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price Options outstanding and vested Amount of share- based compensation arrangement by share based payment award, options, vested in period, total intrinsic value. Share Based Compensation Arrangement By Share Based Payment Award Options Vested In Period Total Intrinsic Value Intrinsic value of options vested Defined Contribution Plan, Employer Discretionary Contribution Amount Matching contributions EX-101.PRE 14 hdsn-20231231_pre.xml EX-101.PRE XML 15 R1.htm IDEA: XBRL DOCUMENT v3.24.0.1
Document and Entity Information - USD ($)
12 Months Ended
Dec. 31, 2023
Mar. 14, 2024
Jun. 30, 2023
Document Entity Information      
Document Type 10-K    
Document Annual Report true    
Document Transition Report false    
Document Period End Date Dec. 31, 2023    
Entity File Number 1-13412    
Entity Registrant Name HUDSON TECHNOLOGIES INC /NY    
Entity Incorporation, State or Country Code NY    
Entity Tax Identification Number 13-3641539    
Entity Address, Address Line One 300 Tice Boulevard    
Entity Address, Address Line Two Suite 290    
Entity Address, City or Town Woodcliff Lake    
Entity Address, State or Province NJ    
Entity Address, Postal Zip Code 07677    
City Area Code 845    
Local Phone Number 735-6000    
Title of 12(b) Security Common stock, $0.01 par value    
Trading Symbol HDSN    
Security Exchange Name NASDAQ    
Entity Well-known Seasoned Issuer No    
Entity Voluntary Filers No    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Accelerated Filer    
Entity Small Business false    
Entity Emerging Growth Company false    
ICFR Auditor Attestation Flag true    
Document Financial Statement Error Correction [Flag] false    
Entity Shell Company false    
Entity Public Float     $ 417,114,994
Entity Common Stock, Shares Outstanding   45,510,925  
Amendment Flag false    
Auditor Name BDO USA, P.C.    
Auditor Firm ID 243    
Auditor Location Stamford    
Entity Central Index Key 0000925528    
Current Fiscal Year End Date --12-31    
Document Fiscal Year Focus 2023    
Document Fiscal Period Focus FY    
XML 16 R2.htm IDEA: XBRL DOCUMENT v3.24.0.1
Consolidated Balance Sheets - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 12,446 $ 5,295
Trade accounts receivable - net 25,169 20,872
Inventories 154,450 145,377
Income tax receivable 5,438  
Prepaid expenses and other current assets 7,492 5,289
Total current assets 204,995 176,833
Property, plant and equipment, less accumulated depreciation 19,375 20,568
Goodwill 47,803 47,803
Intangible assets, less accumulated amortization 14,771 17,564
Right of use asset 6,591 7,339
Other assets 3,137 2,386
Total Assets 296,672 272,493
Current liabilities:    
Trade accounts payable 23,399 14,165
Accrued expenses and other current liabilities 31,537 27,908
Accrued payroll 3,615 6,303
Current maturities of long-term debt   4,250
Total current liabilities 58,551 52,626
Deferred tax liability 4,558 244
Long-term lease liabilities 4,790 5,763
Long-term debt, less current maturities, net of deferred financing costs   38,985
Total Liabilities 67,899 97,618
Commitments and contingencies
Stockholders' equity:    
Preferred stock, shares authorized 5,000,000: Series A Convertible preferred stock, $0.01 par value ($100 liquidation preference value); shares authorized 150,000; none issued or outstanding
Common stock, $0.01 par value; shares authorized 100,000,000; issued and outstanding: 45,502,380 and 45,287,619 respectively 455 453
Additional paid-in capital 118,091 116,442
Retained earnings 110,227 57,980
Total Stockholders' Equity 228,773 174,875
Total Liabilities and Stockholders' Equity $ 296,672 $ 272,493
XML 17 R3.htm IDEA: XBRL DOCUMENT v3.24.0.1
Consolidated Balance Sheets (Parenthetical) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Common stock, par value $ 0.01 $ 0.01
Common stock, shares authorized 100,000,000 100,000,000
Common stock, issued 45,502,380 45,287,619
Common stock, outstanding 45,502,380 45,287,619
Preferred stock    
Preferred stock, shares authorized 5,000,000 5,000,000
Series A Convertible Preferred Stock    
Preferred stock, par value $ 0.01 $ 0.01
Preferred stock, liquidation preference value $ 100 $ 100
Preferred stock, shares authorized 150,000 150,000
Preferred stock, issued 0 0
Preferred stock, outstanding 0 0
XML 18 R4.htm IDEA: XBRL DOCUMENT v3.24.0.1
Consolidated Income Statements - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Consolidated Income Statements      
Revenues $ 289,025 $ 325,225 $ 192,748
Cost of sales 177,518 162,332 121,084
Gross profit 111,507 162,893 71,664
Operating expenses:      
Selling, general and administrative 30,542 28,591 26,566
Amortization 2,793 2,793 2,793
Total operating expenses 33,335 31,384 29,359
Operating income 78,172 131,509 42,305
Other (expense) income:      
Interest expense 8,352 14,327 11,376
Other income     2,470
Total other expense (8,352) (14,327) (8,906)
Income before income taxes 69,820 117,182 33,399
Income tax expense 17,573 13,381 1,140
Net income $ 52,247 $ 103,801 $ 32,259
Net income per common share - Basic $ 1.15 $ 2.31 $ 0.74
Net income per common share - Diluted $ 1.10 $ 2.20 $ 0.69
Weighted average number of shares outstanding - Basic 45,385,433 44,990,104 43,765,443
Weighted average number of shares outstanding - Diluted 47,338,231 47,109,018 46,640,822
XML 19 R5.htm IDEA: XBRL DOCUMENT v3.24.0.1
Consolidated Statements of Stockholders' Equity - USD ($)
$ in Thousands
Common Stock
Additional Paid-in Capital
Retained Earnings (Accumulated Deficit)
Total
Balance at Dec. 31, 2020 $ 433 $ 118,269 $ (78,080) $ 40,622
Balance (in shares) at Dec. 31, 2020 43,347,887      
Issuance of common stock upon exercise of stock options $ 14 187   201
Issuance of common stock upon exercise of stock options (in shares) 1,398,979      
Excess tax benefits from exercise of stock options   (2,655)   (2,655)
Issuance of common stock for services $ 1     1
Issuance of common stock for services (in shares) 12,059      
Share-based compensation   511   511
Net income     32,259 32,259
Balance at Dec. 31, 2021 $ 448 116,312 (45,821) 70,939
Balance (in shares) at Dec. 31, 2021 44,758,925      
Issuance of common stock upon exercise of stock options $ 5 177   182
Issuance of common stock upon exercise of stock options (in shares) 519,749      
Excess tax benefits from exercise of stock options   (969)   (969)
Issuance of common stock for services (in shares) 8,945      
Share-based compensation   922   922
Net income     103,801 103,801
Balance at Dec. 31, 2022 $ 453 116,442 57,980 174,875
Balance (in shares) at Dec. 31, 2022 45,287,619      
Issuance of common stock upon exercise of stock options $ 2 37   39
Issuance of common stock upon exercise of stock options (in shares) 214,761      
Excess tax benefits from exercise of stock options   (694)   (694)
Share-based compensation   2,306   2,306
Net income     52,247 52,247
Balance at Dec. 31, 2023 $ 455 $ 118,091 $ 110,227 $ 228,773
Balance (in shares) at Dec. 31, 2023 45,502,380      
XML 20 R6.htm IDEA: XBRL DOCUMENT v3.24.0.1
Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Cash flows from operating activities:      
Net income $ 52,247 $ 103,801 $ 32,259
Adjustments to reconcile net income to cash provided by (used in) operating activities:      
Depreciation 2,989 3,184 3,387
Amortization of intangible assets 2,793 2,793 2,793
Impairment of long lived assets 2,120    
Forgiveness of Payroll Protection Program loan     (2,475)
Lower of cost or net realizable value inventory adjustment (2,259) 1,837 (2,806)
Allowance for doubtful accounts 659 474 44
Amortization of deferred finance cost 726 1,086 1,125
Loss on extinguishment of debt 3,427 4,665  
Share based compensation 2,306 922 511
Deferred tax expense 4,314 (1,449) 337
Changes in assets and liabilities:      
Trade accounts receivable (4,957) (7,123) (4,461)
Inventories (6,814) (53,070) (46,878)
Prepaid and other assets (3,182) 1,782 (2,120)
Lease obligations   17 4
Income taxes receivable/payable (5,277) (630) 674
Accounts payable and accrued expenses 9,455 4,526 16,378
Cash provided by (used in) operating activities 58,547 62,815 (1,228)
Cash flows from investing activities:      
Additions to property, plant, and equipment (3,580) (3,659) (1,922)
Cash used in investing activities (3,580) (3,659) (1,922)
Cash flows from financing activities:      
Net proceeds from issuances of common stock and exercises of stock options 39 182 201
Excess tax benefits from exercise of stock options (694) (969) (2,655)
Payment of deferred financing cost   (8,512)  
Borrowing of short-term debt - net     13,000
Proceeds from long term debt   100,000  
Repayment of long-term debt (47,161) (148,054) (5,252)
Cash (used in) provided by financing activities (47,816) (57,353) 5,294
Increase in cash and cash equivalents 7,151 1,803 2,144
Cash and cash equivalents at beginning of period 5,295 3,492 1,348
Cash and cash equivalents at end of period 12,446 5,295 3,492
Supplemental disclosure of cash flow information:      
Cash paid during period for interest 4,475 11,702 10,157
Cash paid for income taxes 18,536 $ 15,460 $ 128
Property and equipment included in accrued expenses and other current liabilities $ 337    
XML 21 R7.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies
12 Months Ended
Dec. 31, 2023
Summary of Significant Accounting Policies  
Summary of Significant Accounting Policies

Note 1 - Summary of Significant Accounting Policies

Business

Hudson Technologies, Inc. (“Hudson” or the “Company”), incorporated under the laws of New York on January 11, 1991, is a refrigerant services company providing innovative solutions to recurring problems within the refrigeration industry. Hudson has proven, reliable programs that meet customer refrigerant needs by providing environmentally sustainable solutions from initial sale of refrigerant gas through recovery, reclamation and reuse, peak operating performance of equipment through energy efficiency and emergency air conditioning and refrigeration system repair, to final refrigerant disposal and carbon credit trading.

The Company’s operations consist of one reportable segment. The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems, and include refrigerant and industrial gas sales, refrigerant management services consisting primarily of reclamation of refrigerants and RefrigerantSide® Services performed at a customer’s site. RefrigerantSide® Services consist of system decontamination to remove moisture, oils and other contaminants intended to restore systems to designed capacity. As a component of the Company’s products and services, the Company also participates in the generation of carbon offset projects. The Company operates principally through its wholly-owned subsidiary, Hudson Technologies Company. Unless the context requires otherwise, references to the “Company”, “Hudson”, “we”, “us”, “our”, or similar pronouns refer to Hudson Technologies, Inc. and its subsidiaries.

In preparing the accompanying consolidated financial statements, and in accordance with Accounting Standards Codification (“ASC”) 855-10 “Subsequent Events”, the Company’s management has evaluated subsequent events through the date that the financial statements were filed.

AIM Act

The United States Environmental Protection Agency (“EPA”) issued several final rules establishing the framework to allocate allowances for virgin production and consumption of hydrofluorocarbon refrigerants (“HFCs”) that currently provide allowances through 2028. The EPA is responsible for the administration of the HFC phase down enacted by Congress under the AIM Act.

The AIM Act directs the EPA to address the reduction in virgin HFCs and provides authority to do so in three respects:

1)phase down the production and consumption of listed HFCs,
2)manage these HFCs and their substitutes including reclamation of refrigerants, and
3)facilitate the transition to next-generation technologies.

Congress required that the EPA consider ways to promote reclamation in all phases of its implementation of the AIM Act. The AIM Act introduced a stepdown of 10% from baseline levels in 2022 and 2023, and establishes a cumulative 40% reduction in the baseline for 2024. Hudson received allocation allowances for calendar years 2022 and 2023 equal to approximately 3 million Metric Tons Exchange Value Equivalents per year, or approximately 1% of the total HFC consumption, with allowances for future periods to be determined at a later date. Reclamation will be critical to maintaining necessary HFC supply levels to ensure an orderly phasedown. Reclamation is not subject to the allowance system or restricted from use.

On October 6, 2023, the EPA announced the latest actions to phase down HFCs under the AIM Act:

1)

Finalization of the Technology Transition Rule - The first new action is a final rule to accelerate the ongoing transition to more efficient and climate-safe technologies in new refrigeration, heating and cooling systems and other products by restricting the use of HFCs where alternatives are already available. The rule, which applies to both imported and domestically manufactured products, bans HFCs in certain equipment and sets a limit on the global warming potentials (GWPs) of the HFCs that can be used in each subsector, with compliance dates ranging from 2025 to 2028.

In December 2023, the EPA announced an interim final rule on this matter, which provides an additional year, until January 1, 2026, for the installation of new residential and light commercial air conditioning systems and heat pump systems that use components manufactured or imported prior to January 1, 2025. Importantly, to qualify for the extended compliance deadline, all components of a system using the higher Global Warming Potential (GWP) HFC must be manufactured or imported prior to January 1, 2025.

2)

Proposed Refrigerant Management Rule - The second action is a proposed rule (subject to further comments) to better manage and reuse existing HFCs, including by reducing wasteful leaks from equipment and supporting HFC recycling and reclamation. The proposed rule, which is expected to be finalized during the third quarter of 2024, includes requirements for repairing leaky equipment, use of automatic leak detection systems on large refrigeration systems, use of reclaimed HFCs for certain applications, recovery of HFCs from cylinders before their disposal, and a container tracking system.

Consolidation

The consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States, represent all companies of which Hudson directly or indirectly has majority ownership or otherwise controls. Significant intercompany accounts and transactions have been eliminated. The Company’s consolidated financial statements include the accounts of wholly-owned subsidiaries Hudson Holdings, Inc. and Hudson Technologies Company. The Company does not present a statement of comprehensive income as its comprehensive income is the same as its net income.

Fair Value of Financial Instruments

The carrying values of financial instruments including cash, trade accounts receivable and accounts payable approximate fair value at December 31, 2023 and December 31, 2022, because of the relatively short maturity of these instruments. The carrying value of debt approximates fair value, due to the variable rate nature of the debt, as of December 31, 2022. See Note 2 for further details.

Credit Risk

Financial instruments, which potentially subject the Company to concentrations of credit risk, consist principally of temporary cash investments and trade accounts receivable. The Company maintains its temporary cash investments in highly-rated financial institutions and, at times, the balances exceed FDIC insurance coverage. The Company’s trade accounts receivable are primarily due from companies throughout the United States. The Company reviews each customer’s credit history before extending credit.

The Company establishes an allowance for credit losses. In accordance with the “expected credit loss” model, the carrying amount of accounts receivable is reduced by a valuation allowance that reflects the Company’s best estimate of the amounts that it does not expect to collect. In addition to reviewing delinquent accounts receivable, the Company considers many factors in estimating its reserve, including types of customers and their credit worthiness, experience and historical data adjusted for current conditions.

The carrying value of the Company’s accounts receivable is reduced by the established allowance for credit losses. The allowance for doubtful accounts includes any accounts receivable balances that are determined to be uncollectible, along with a general reserve for the remaining accounts receivable balances. The Company adjusts its reserves based on factors that affect the collectability of the accounts receivable balances.

For the year ended December 31, 2023, there was one customer accounting for greater than 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2023.  For the year ended December 31, 2022, there was no customer that accounted for 10% of the Company’s revenues but one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2022. For the year ended December 31, 2021, one customer accounted for 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2021.

The loss of a principal customer or a decline in the economic prospects of and/or a reduction in purchases of the Company’s products or services by any such customer could have a material adverse effect on the Company’s operating results and financial position.

Cash and Cash Equivalents

Temporary investments with original maturities of ninety days or less are included in cash and cash equivalents.

Inventories

Inventories, consisting primarily of refrigerant products available for sale, are stated at the lower of cost, on a first-in first-out basis, or net realizable value. Where the market price of inventory is less than the related cost, the Company may be required to write down its inventory through a lower of cost or net realizable value adjustment, the impact of which would be reflected in cost of sales on the Consolidated Income Statements. Any such adjustment would be based on management’s judgment regarding future demand and market conditions and analysis of historical experience.

Property, Plant and Equipment

Property, plant and equipment are stated at cost, including internally manufactured equipment. The cost to complete equipment that is under construction is not considered to be material to the Company’s financial position. Provision for depreciation is recorded using the straight-line method over the useful lives of the respective assets. Leasehold improvements are amortized on a straight-line basis over the shorter of economic life or terms of the respective leases. Costs of maintenance and repairs are charged to expense when incurred.

Due to the specialized nature of the Company’s business, it is possible that the Company’s estimates of equipment useful life periods may change in the future.

Goodwill

The Company has made acquisitions that included a significant amount of goodwill and other intangible assets. The Company applies the purchase method of accounting for acquisitions, which among other things, requires the recognition of goodwill (which represents the excess of the purchase price of the acquisition over the fair value of the net assets acquired and identified intangible assets). The Company tests its goodwill for impairment annually on a qualitative or quantitative basis (the first day of the fourth quarter) and between annual tests if an event occurs or circumstances change that would more likely than not reduce the fair value of an asset below its carrying value. Goodwill is tested for impairment at the reporting unit level. When performing the annual impairment test, the Company has the option of first performing a qualitative assessment, which requires management to make assumptions affecting a reporting unit, to determine the existence of events and circumstances that would lead to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. If such a conclusion is reached, the Company is then required to perform a quantitative impairment assessment of goodwill. The Company has one reporting unit at December 31, 2023. Other intangible assets that meet certain criteria are amortized over their estimated useful lives.

An impairment charge is recorded based on the excess of a reporting unit’s carrying amount over its fair value. An impairment charge would be recognized when the carrying amount exceeds the estimated fair value of a reporting unit. These impairment evaluations use many assumptions and estimates in determining an impairment loss, including certain assumptions and estimates related to future earnings. If the Company does not achieve its earnings objectives, the assumptions and estimates underlying these impairment evaluations could be adversely affected, which could result in an asset impairment charge that would negatively impact operating results. During the fourth quarter of 2023, the Company completed its annual impairment test as of October 1 and determined in its qualitative assessment that it is more likely than not that the fair value of the reporting unit is greater than its carrying amount, resulting in no goodwill impairment. There can be no assurances that future sustained declines in macroeconomic or business conditions affecting our industry will not occur, which could result in goodwill impairment charges in future periods.

There were no goodwill impairment losses recognized in 2023, 2022 or 2021.

Leases

The Company determines if an arrangement contains a lease at inception. An arrangement contains a lease if it implicitly or explicitly identifies an asset to use and conveys the right to control the use of the identified asset in exchange for consideration. As a lessee, the Company includes operating leases in operating lease right-of-use (“ROU”) assets, operating lease liabilities, and non-current operating lease liabilities in its consolidated balance sheets.

Finance leases are included in property and equipment in the consolidated balance sheets.

ROU assets represent the Company’s right to use an underlying asset for the lease term and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized upon commencement of the lease based on the present value of the lease payments over the lease term. As most of the Company’s leases do not provide an implicit interest rate, the Company generally uses its incremental borrowing rate based on the estimated rate of interest for fully collateralized and fully amortizing borrowings over a similar term of the lease payments and commencement date to determine the present value of lease payments. When readily determinable, the Company uses the implicit rate. The Company’s lease terms include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Expenses associated with operating leases and finance leases are included in selling, general and administrative within the consolidated statement of income.

Cylinder Deposit Liability

The cylinder deposit liability, which is included in Accrued expenses and other current liabilities on the Company’s Balance Sheet, represents the amount due to customers for the return of refillable cylinders. The Company charges its customers cylinder deposits upon the shipment of refrigerant gases that are contained in refillable cylinders. The amount charged to the customer by the Company approximates the cost of a new cylinder of the same size. Upon return of a cylinder, this liability is reduced. The cylinder deposit liability balance was $17.2 million and $13.6 million at December 31, 2023 and 2022, respectively. 

Revenues and Cost of Sales

The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems. Most of the Company’s revenues are realized from the sale of refrigerant and industrial gases and related products. The Company also generates revenue from refrigerant management services performed at a customer’s site and in-house. The Company conducts its business primarily within the US.

The Company applies the FASB’s guidance on revenue recognition, which requires the Company to recognize revenue in an amount that reflects the consideration to which the Company expects to be entitled in exchange for goods or services transferred to its customers. In most instances, the Company’s contract with a customer is the customer’s purchase order and the sales price to the customer is fixed. For certain customers, the Company may also enter into a sales agreement outlining a framework of terms and conditions applicable to future purchase orders received from that customer. Because the Company’s contracts with customers are typically for a single customer purchase order, the duration of the contract is usually less than one year. The Company’s performance obligations related to product sales are satisfied at a point in time, which may occur upon shipment of the product or receipt by the customer, depending on the terms of the arrangement. The Company’s performance obligations related to reclamation and RefrigerantSide® services are generally satisfied at a point in time when the service is performed. Accordingly revenues are recorded upon the shipment of the product, or in certain instances upon receipt by the customer, or the completion of the service.

In July 2016 the Company was awarded, as prime contractor, a five-year contract, including a five-year renewal option,which has been exercised through July 2026, by the United States Defense Logistics Agency (“DLA”) for the management, supply, and sale of refrigerants, compressed gases, cylinders and related services. The Company determined that the sale of refrigerants and the management services provided each have stand-alone value. Accordingly, the performance obligations related to the sale of refrigerants is satisfied at a point in time, mainly when the customer receives and obtains control of the product. The performance obligation related to management service revenue is satisfied over time and revenue is recognized on a straight-line basis over the term of the arrangement as the management services are provided. For the years ended December 31, 2023, 2022 and 2021 management services revenue were $2.4 million, $2.3 million, and $2.2 million respectively.

Cost of sales is recorded based on the cost of products shipped or services performed and related direct operating costs of the Company’s facilities. In general, the Company performs shipping and handling services for its customers in connection with the delivery of refrigerant and other products. The Company elected to implement ASC 606-10-25-18B, whereby the Company accounts for such shipping and handling as activities to fulfill the promise to transfer the good. To the extent that the Company charges its customers shipping fees, such amounts are included as a component of revenue and the corresponding costs are included as a component of cost of sales.

The Company’s revenues are derived from Product and related sales and RefrigerantSide® Services revenues. The revenues for each of these lines are as follows:

Years Ended December 31, 

    

2023

    

2022

    

2021

(in thousands)

Product and related sales

$

281,954

$

319,019

$

187,799

RefrigerantSide ® Services

 

7,071

 

6,206

 

4,949

Total

$

289,025

$

325,225

$

192,748

Income Taxes

The Company is taxed at statutory corporate income tax rates after adjusting income reported for financial statement purposes for certain items. Current income tax expense reflects the tax results of revenues and expenses currently taxable or deductible. The Company utilizes the asset and liability method of accounting for deferred income taxes, which provides for the recognition of deferred tax assets or liabilities, based on enacted tax rates and laws, for the differences between the financial and income tax reporting bases of assets and liabilities. The tax benefit associated with the Company’s net operating loss carry forwards (“NOLs”) is recognized to the extent that the Company expects to realize future taxable income.

During the year ended December 31, 2022, the Company concluded that its deferred tax assets were more likely than not to become realizable. The Company fully reversed its existing valuation allowance of $15.1 million, with $11.6 million reversed during the first and second quarters of 2022, and the remaining $3.5 million through the third and fourth quarters of 2022. The conclusion that a valuation allowance was no longer needed was based on the achievement of three years of cumulative pre-tax income, the utilization of the Company’s $29.3 million federal NOLs, which comprised a majority of the Company’s deferred tax assets, combined with estimates of future years’ pre-tax income that were sufficient to realize the remaining deferred tax assets.

For the year ended December 31, 2023 the Company had no federal NOLs, as the Company utilized all of its remaining federal NOLs during the year ended December 31, 2022. For the year ended December 31, 2023, the Company had state tax NOLs of approximately $1.8 million, expiring in various years. We review the likelihood that we will realize the benefit of our deferred tax assets on a quarterly basis.

The Company evaluates uncertain tax positions, if any, by determining if it is more likely than not to be sustained upon examination by the taxing authorities. For the years ended December 31, 2023 and December 31, 2022, the Company believes it had no uncertain tax positions.

Income per Common and Equivalent Shares

If dilutive, common equivalent shares (common shares assuming exercise of options) utilizing the treasury stock method are considered in the presentation of diluted income per share. The reconciliation of shares used to determine net income per share is as follows (dollars in thousands):

Years ended December 31, 

    

2023

    

2022

    

2021

Net income

$

52,247

$

103,801

$

32,259

Weighted average number of shares – basic

 

45,385,433

 

44,990,104

 

43,765,443

Shares underlying options

 

1,952,798

 

2,118,914

 

2,875,379

Weighted average number of shares outstanding – diluted

 

47,338,231

 

47,109,018

 

46,640,822

During the years ended December 31, 2023, 2022 and 2021, certain options aggregating 17,172, 28,467 and 2,583,523 shares, respectively, have been excluded from the calculation of diluted shares, due to the fact that their effect would be anti-dilutive.

Estimates and Risks

The preparation of financial statements in conformity with generally accepted accounting principles in the United States requires the use of estimates and assumptions that affect the amounts reported in these financial statements and footnotes. The Company considers these accounting estimates to be critical in the preparation of the accompanying consolidated financial statements. The Company uses information available at the time the estimates are made. However, these estimates could change materially if different information or assumptions were used. Additionally, these estimates may not ultimately reflect the actual amounts of the final transactions that occur. The Company utilizes both internal and external sources to evaluate potential current and future liabilities for various commitments and contingencies. In the event that the assumptions or conditions change in the future, the estimates could differ from the original estimates.

Several of the Company’s accounting policies involve significant judgments, uncertainties, and estimates. The Company bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities. Actual results may differ from these estimates under different assumptions or conditions. To the extent that actual results differ from management’s judgments and estimates, there could be a material adverse effect on the Company. On a continuous basis, the Company evaluates its estimates, including, but not limited to, those estimates related to its allowance for doubtful accounts, inventory reserves, goodwill and commitments and contingencies. With respect to trade accounts receivable, the Company estimates the necessary allowance for doubtful accounts based on both historical and anticipated trends of payment history and the ability of the customer to fulfill its obligations. For inventory, the Company evaluates both current and anticipated sales prices of its products to determine if a write down of inventory to net realizable value is necessary.

The Company participates in an industry that is highly regulated, and changes in the regulations affecting its business could affect its operating results. Currently the Company purchases virgin hydrofluorocarbon (“HFC”) and hydrofluroolefin (“HFO”) refrigerants and reclaimable, primarily hydrochlorofluorocarbons (“HCFC”), HFC and chlorofluorocarbon (“CFC”), refrigerants from suppliers and its customers. To the extent that the Company is unable to source sufficient quantities of refrigerants or is unable to obtain refrigerants on commercially reasonable terms or experiences a decline in demand and/or price for refrigerants sold by the Company, the Company could realize reductions in revenue from refrigerant sales, which could have a material adverse effect on its operating results and its financial position. The process of sourcing refrigerants includes various procurement costs, such as freight, processing, insurance, and other costs, relating to the delivery of refrigerants. As a result of the recently noted global supply chain issues, the Company determined it could be exposed to incremental costs related to these refrigerant purchases. These costs represent the Company’s initial estimate that are possibly subject to finalization in future periods and are recorded in accrued expenses and other current liabilities on the consolidated balance sheet as of December 31, 2023.

The Company is subject to various legal proceedings. The Company assesses the merit and potential liability associated with each of these proceedings. In addition, the Company estimates potential liability, if any, related to these matters. To the extent that these estimates are not accurate, or circumstances change in the future, the Company could realize liabilities, which could have a material adverse effect on its operating results and its financial position.

Impairment of Long-lived Assets

The Company reviews long-lived assets for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of the assets to the future net cash flows expected to be generated by the asset. If such assets are considered to be impaired, the impairment to be recognized is measured by the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of are reported at the lower of the carrying amount or fair value less the cost to sell.

Capitalized Software Development Costs

Capitalized internal-use software costs consist of costs to purchase and develop software. For software to be used solely to meet internal needs and for cloud-based applications used to deliver our services, we capitalize costs incurred during the application development stage and include such costs within property and equipment, net within our consolidated balance sheets.

Recent Accounting Pronouncements

In June 2016, the FASB issued ASU No. 2016-13, Measurement of Credit Losses on Financial Instruments, which revises guidance for the accounting for credit losses on financial instruments within its scope, and in November 2018, issued ASU No. 2018-19 and in April 2019, issued ASU No. 2019-04 and in May 2019, issued ASU No. 2019-05, and in November 2019, issued ASU No. 2019-11, which each amended the standard. The new standard introduces an approach, based on expected losses, to estimate credit losses on certain types of financial instruments and modifies the impairment model for available-for-sale debt securities. The new approach to estimating credit losses (referred to as the current expected credit losses model) applies to most financial assets measured at amortized cost and certain other instruments, including trade and other receivables, loans, held-to-maturity debt securities, net investments in leases and off-balance-sheet credit exposures. This ASU is effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. Entities are required to apply the standard’s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. The Company adopted ASU No. 2016-13 on January 1, 2023. The adoption of ASU No. 2016-13 did not have a material impact on its results of operations or financial position.

In August 2020, the FASB issued ASU 2020-06, “Debt-Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging-Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity”, which is intended to simplify the accounting for convertible instruments by removing certain separation models in Subtopic 470-20, Debt-Debt with Conversion and Other Options, for convertible instruments. The pronouncement is effective for fiscal years, and for interim periods within those fiscal years, beginning after December 15, 2022, with early adoption permitted. The Company adopted ASU 2020-06 on January 1, 2023. The adoption of ASU 2020-06 did not have a material impact on its results of operations or financial position.

In December 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-09, “Income Taxes (Topic 740): Improvements to Income Tax Disclosures,” which requires public business entities to disclose additional information in specified categories with respect to the reconciliation of the effective tax rate to the statutory rate for federal, state, and foreign income taxes. It also requires greater detail about individual reconciling items in the rate reconciliation to the extent the impact of those items exceeds a specified threshold. In addition to new disclosures associated with the rate reconciliation, the ASU requires information pertaining to taxes paid (net of refunds received) to be disaggregated for federal, state, and foreign taxes and further disaggregated for specific jurisdictions to the extent the related amounts exceed a quantitative threshold. The ASU also describes items that need to be disaggregated based on their nature, which is determined by reference to the item’s fundamental or essential characteristics, such as the transaction or event that triggered the establishment of the reconciling item and the activity with which the reconciling item is associated. The ASU eliminates the historic requirement that entities disclose information concerning unrecognized tax benefits having a reasonable possibility of significantly increasing or decreasing in the 12 months following the reporting date. This ASU is effective for annual periods beginning after December 15, 2024. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. This ASU should be applied on a prospective basis; however, retrospective application is permitted. The Company is currently evaluating the impact that ASU 2023 – 09 will have on its consolidated financial statements.

In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280): Improvements to Reportable Segments,” which aims to improve financial reporting by requiring disclosure of incremental segment information on an annual and interim basis for all public entities to enable investors to develop more decision-useful financial analyses. Currently, Topic 280 requires that a public entity disclose certain information about its reportable segments. For example, a public entity is required to report a measure of segment profit or loss that the CODM uses to assess segment performance and make decisions about allocating resources. Topic 280 also requires other specified segment items and amounts, such as depreciation, amortization, and depletion expense, to be disclosed under certain circumstances. The amendments in this ASU do not change or remove those disclosure requirements and do not change how a public entity identifies its operating segments, aggregates those operating segments, or applies the quantitative thresholds to determine its reportable segments. This ASU is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company does not expect that the requirements of ASU 2023 – 07 will have a material impact on its consolidated financial statements.

XML 22 R8.htm IDEA: XBRL DOCUMENT v3.24.0.1
Fair Value
12 Months Ended
Dec. 31, 2023
Fair Value  
Fair Value

Note 2- Fair Value

ASC Subtopic 820-10 defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The Company often utilizes certain assumptions that market participants would use in pricing the asset or liability, including assumptions about risk and/or the risks inherent in the inputs to the valuation technique. These inputs can be readily observable, market-corroborated, or generally unobservable inputs. The Company utilizes valuation techniques that maximize the use of observable inputs and minimize the use of unobservable inputs. Based upon observable inputs used in the valuation techniques, the Company is required to provide information according to the fair value hierarchy.

The fair value hierarchy ranks the quality and reliability of the information used to determine fair values into three broad levels as follows:

Level 1: Valuations for assets and liabilities traded in active markets from readily available pricing sources for market transactions involving identical assets or liabilities.

Level 2: Valuations for assets and liabilities traded in less active dealer or broker markets. Valuations are obtained from third-party pricing services for identical or similar assets or liabilities.

Level 3: Valuations for assets and liabilities include certain unobservable inputs in the assumptions and projections used in determining the fair value assigned to such assets or liabilities.

In instances where the determination of the fair value measurement is based on inputs from different levels of the fair value hierarchy, the level in the fair value hierarchy within which the entire fair value measurement falls is based on the lowest level input that is significant to the fair value measurement in its entirety. The Company’s assessment of the significance of a particular input to the fair value measurement in its entirety requires judgment and considers factors specific to the asset or liability.

XML 23 R9.htm IDEA: XBRL DOCUMENT v3.24.0.1
Trade accounts receivable - net
12 Months Ended
Dec. 31, 2023
Trade accounts receivable - net  
Trade accounts receivable - net

Note 3 - Trade accounts receivable – net

The opening and closing balance of the company’s accounts receivable is as follows:

Beginning

Increase

Balance

(Decrease),

Ending Balance

(in thousands)

    

at January 1

    

Net

    

at December 31

2023

$

20,872

$

4,297

$

25,169

2022

$

14,223

$

6,649

$

20,872

At December 31, 2023 and 2022, trade accounts receivable are net of reserves for allowance for credit losses of $2.0 million and $1.9 million, respectively. The following table represents the activity occurring in the reserves for allowance for credit losses in 2023 and 2022.

Beginning

Net additions

Balance

charged to

Deductions

Ending Balance

(in thousands)

    

at January 1

    

Operations

    

and Other

    

at December 31

2023

$

1,927

$

659

$

(592)

$

1,994

2022

$

1,584

$

474

$

(131)

$

1,927

XML 24 R10.htm IDEA: XBRL DOCUMENT v3.24.0.1
Inventories
12 Months Ended
Dec. 31, 2023
Inventories  
Inventories

Note 4- Inventories

Inventories consist of the following:

December 31, 

December 31, 

    

2023

    

2022

(in thousands)

Refrigerants and cylinders

$

159,654

$

152,840

Less: net realizable value adjustments

 

(5,204)

 

(7,463)

Total

$

154,450

$

145,377

XML 25 R11.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property, plant and equipment
12 Months Ended
Dec. 31, 2023
Property, plant and equipment  
Property, plant and equipment

Note 5 - Property, plant and equipment

Elements of property, plant and equipment are as follows:

Estimated

December 31, 

    

2023

    

2022

    

Lives

(in thousands)

Property, plant and equipment

 

  

 

  

 

  

- Land

$

1,255

$

1,255

 

  

- Land improvements

 

319

 

319

 

6-10 years

- Buildings

 

1,446

 

1,446

 

25-39 years

- Building improvements

 

3,467

 

3,396

 

25-39 years

- Cylinders

 

13,220

 

13,315

 

15-30 years

- Equipment

 

29,397

 

27,258

 

3-10 years

- Equipment under capital lease

 

315

 

315

 

5-7 years

- Vehicles

 

1,790

 

1,773

 

3-5 years

- Lab and computer equipment, software

 

3,233

 

3,103

 

2-8 years

- Furniture & fixtures

 

933

 

840

 

5-10 years

- Leasehold improvements

 

865

 

852

 

3-5 years

- Construction-in-Progress

 

2,844

 

3,533

 

  

Subtotal

 

59,084

 

57,405

 

  

Less: Accumulated depreciation

 

(39,709)

 

(36,837)

 

  

Total

$

19,375

$

20,568

 

  

Depreciation expense for the years ended December 31, 2023, 2022 and 2021 was $3.0 million, $3.2 million and $3.4 million, respectively, of which $2.0 million, $2.0 million and $1.9 million, respectively, were included as cost of sales in the Company’s Consolidated Income Statements.

XML 26 R12.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases
12 Months Ended
Dec. 31, 2023
Leases  
Leases

Note 6 - Leases

The Company has various lease agreements with terms up to 11 years, including leases of buildings and various equipment. Some leases include options to purchase, terminate or extend for one or more years. These options are included in the lease term when it is reasonably certain that the option will be exercised.

At inception, the Company determines if an arrangement contains a lease and whether that lease meets the classification criteria of a finance or operating lease. Some of the Company’s lease arrangements contain lease components (e.g. minimum rent payments) and non-lease components (e.g. common area maintenance, charges, utilities and property taxes). The Company elected the package of practical expedients permitted under the transition guidance, which allows it to carry forward its historical lease classification, its assessment on whether a contract contains a lease, and its initial direct costs for any leases that existed prior to the adoption of the new standard. The Company also elected to combine lease and non-lease components and to keep leases with an initial term of 12 months or less off the balance sheet and recognize the associated lease payments in the consolidated income statements on a straight line basis over the lease term. The Company’s lease agreements do not contain any material residual value, guarantees or material restrictive covenants.

Operating leases are included in Right of use asset, Accrued expenses and other current liabilities, and Long-term lease liabilities on the consolidated balance sheets. These assets and liabilities are recognized at the commencement date based on the present value of remaining lease payments over the lease term using the Company’s secured incremental borrowing rates or implicit rates, when readily determinable. Short-term operating leases, which have an initial term of 12 months or less, are not recorded on the balance sheet. Lease expense for operating leases is recognized on a straight-line basis over the lease term. Variable lease expense is recognized in the period in which the obligation for those payments is incurred.

Operating lease expense of $1.7 million, $2.6 million and $3.1 million, for the years ended December 31, 2023, 2022 and 2021, respectively, is included in Selling, general and administrative expenses on the consolidated income statements.

The following table presents information about the amount and timing of cash flows arising from the Company’s operating leases as of December 31, 2023.

Maturity of Lease Payments

    

December 31, 2023

(in thousands)

 -2024

 

1,914

 -2025

 

1,663

 -2026

 

1,500

 -2027

1,043

-2028

656

-Thereafter

 

823

Total undiscounted operating lease payments

 

7,599

Less imputed interest

 

(911)

Present value of operating lease liabilities

$

6,688

Balance Sheet Classification

December 31, 

    

2023

    

2022

Current lease liabilities (recorded in Accrued expenses and other current liabilities)

$

1,898

$

1,663

Long-term lease liabilities

4,790

 

5,763

Total operating lease liabilities

$

6,688

$

7,426

Other Information

December 31, 

    

2023

    

2022

Weighted-average remaining term for operating leases

2.92

years

3.60

years

Weighted-average discount rate for operating leases

 

8.27

%

8.21

%

Supplemental cash flow and non-cash information related to leases

December 31,

    

2023

    

2022

Cash paid for amounts included in measurement of lease liabilities:

 

  

 

  

Operating cash flow from operating leases

$

1,782

$

2,588

Right -of-use assets obtained in exchange for new operating lease liabilities

$

1,020

$

2,659

XML 27 R13.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income taxes
12 Months Ended
Dec. 31, 2023
Income taxes  
Income taxes

Note 7 - Income taxes

Income tax expense for the years ended December 31, 2023, 2022 and 2021 was $17.6 million, $13.4 million and $1.1 million, respectively. The income tax expense (benefit) for each of the years ended December 31, 2023, 2022 and 2021 were provided for federal and state income tax at statutory rates applied to the pre-tax income (loss) for each of the periods.

The following summarizes the provision for income taxes:

Years Ended December 31,

    

2023

    

2022

    

2021

(in thousands)

Current:

 

  

 

  

 

  

Federal

$

10,319

$

11,995

$

453

State and local

 

2,940

 

2,835

 

350

 

13,259

 

14,830

 

803

Deferred:

 

 

 

  

Federal

 

3,667

 

(323)

 

267

State and local

 

647

 

(1,126)

 

70

 

4,314

 

(1,449)

 

337

Expense for income taxes

$

17,573

$

13,381

$

1,140

Reconciliation of the Company’s actual tax rate to the U.S. Federal statutory rate is as follows:

Years ended December 31, 

    

2023

    

2022

    

2021

 

Income tax rates

- Statutory U.S. federal rate

 

21

%  

21

%  

21

%

- State income taxes, net of federal benefit

 

4

%  

4

%  

0

%

- Excess tax benefits related to stock compensation

 

(1)

%  

(1)

%  

(4)

%

- 162m limitation

1

%  

1

%

- PPP Benefit

0

%

0

%

(2)

%

- Change in valuation allowance

 

0

%

(13)

%  

(12)

%

- Other true-up

0

%

(1)

%

Total

 

25

%  

11

%  

3

%

For the year ended December 31, 2023, the Company had no federal NOLs carryforward. For the year ended December 31, 2023, the Company had state tax NOL carryforwards of approximately $1.8 million, expiring in various years.

Deferred income tax represents the tax effect of the differences between the book and tax bases of assets and liabilities. The net deferred income tax assets (liabilities) consisted of the following at:

December 31, 

    

2023

    

2022

(in thousands)

Deferred tax assets (liabilities):

- Reserve for doubtful accounts

$

497

$

500

- Inventory reserve

 

687

 

1,045

-Non qualified stock options

 

529

 

383

- Deferred interest

 

 

2,637

- Accrued expenses

 

82

 

107

Total Deferred income tax assets

$

1,795

$

4,672

Deferred tax liabilities:

 

 

- Depreciation and amortization

(6,353)

(4,916)

Total deferred tax liabilities

(6,353)

(4,916)

Net deferred tax liabilities

$

(4,558)

$

(244)

We review the likelihood that we will realize the benefit of our deferred tax assets, and therefore the need for valuation allowances, on a quarterly basis. In determining the requirement for a valuation allowance, the historical and projected financial results are considered, along with all other available positive and negative evidence.

The Company’s 2019 and prior federal tax years have been closed. The Company operates in many states throughout the United States and, as of December 31, 2023, the state statutes of limitations remain open for tax years subsequent to 2018. The Company recognizes interest and penalties, if any, relating to income taxes as a component of the provision for income taxes.

XML 28 R14.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and intangible assets
12 Months Ended
Dec. 31, 2023
Goodwill and intangible assets  
Goodwill and intangible assets

Note 8 – Goodwill and intangible assets

Goodwill represents the excess of the purchase price over the fair value of the net assets acquired in business combinations accounted for under the purchase method of accounting.

There were no goodwill impairment losses recognized for the years ended December 31, 2023, 2022 and 2021.

Based on the results of the impairment assessments of goodwill and intangible assets performed, management concluded that the fair value of the Company’s goodwill exceeds the carrying value and that there are no impairment indicators related to intangible assets.

At December 31, 2023 and December 31, 2022 the Company had $47.8 million of goodwill.

The Company’s other intangible assets consist of the following:

2023

2022

Amortization

Gross

Gross

December 31, 

Period

Carrying

Accumulated

Carrying

Accumulated

(in thousands)

    

(in years)

    

Amount

    

Amortization

    

Net

    

Amount

    

Amortization

    

Net

Intangible assets with determinable lives

 

  

Covenant not to compete

 

6 – 10

$

870

$

798

 

72

$

870

$

710

160

Customer relationships

 

3 – 12

 

31,560

 

17,151

 

14,409

 

31,560

 

14,491

 

17,069

Above market leases

 

13

 

567

 

277

 

290

 

567

 

232

 

335

Total identifiable intangible assets

$

32,997

$

18,226

$

14,771

$

32,997

$

15,433

$

17,564

The amortization of intangible assets for the years ended December 31, 2023, 2022 and 2021, were $2.8 million. Future estimated amortization expense is as follows: 2024 - $2.8 million, 2025 - $2.5 million, 2026- $2.5 million, 2027- $2.5 million, 2028-$2.5 million and thereafter - $1.9 million.

XML 29 R15.htm IDEA: XBRL DOCUMENT v3.24.0.1
Accrued expenses and other current liabilities
12 Months Ended
Dec. 31, 2023
Accrued expenses and other current liabilities  
Accrued expenses and other current liabilities

Note 9 – Accrued expenses and other current liabilities

Elements of Accrued expenses and other current liabilities are as follows:

December 31,

    

2023

    

2022

(in thousands)

 

  

 

  

Accrued expenses

$

12,256

$

11,696

Cylinder deposits

 

17,225

 

13,638

Lease obligations

 

1,893

 

1,669

Other current liabilities

 

163

 

905

Total

$

31,537

$

27,908

XML 30 R16.htm IDEA: XBRL DOCUMENT v3.24.0.1
Short-term and Long-term debt
12 Months Ended
Dec. 31, 2023
Short-term and Long-term debt  
Short-term and Long-term debt

Note 10 - Short-term and long-term debt

Elements of short-term and long-term debt are as follows:

December 31, 

    

2023

    

2022

(in thousands)

Short-term & long-term debt

 

  

 

  

Short-term debt:

 

  

 

  

- Revolving credit line and other debt

$

$

- Term loan facility - current

4,250

Subtotal

 

 

4,250

Long-term debt:

 

 

- Term loan facility- net of current portion of long-term debt

 

 

27,563

- FILO term loan

 

 

15,000

- Less: deferred financing costs on term loan

 

 

(3,578)

Subtotal

 

 

38,985

Total short-term & long-term debt

$

$

43,235

Revolving Credit Facility

On March 2, 2022, Hudson Technologies Company (“HTC”) and Hudson Holdings, Inc. (“Holdings”), as borrowers (collectively, the “Borrowers”), and Hudson Technologies, Inc (the “Company”) as a guarantor, entered into an Amended and Restated Credit Agreement (the “Amended Wells Fargo Facility”) with Wells Fargo Bank, National Association, as administrative agent and lender (“Agent” or “Wells Fargo”) and such other lenders as have or may thereafter become a party to the Amended Wells Fargo Facility. The Amended Wells Fargo facility amended and restated the prior Wells Fargo Facility entered into on December 19, 2019.

Under the terms of the Amended Wells Fargo Facility, the Borrowers: (i) immediately borrowed $15 million in the form of a “first in last out” term loan (the “FILO Tranche”) and (ii) may borrow from time to time, up to $75 million at any time consisting of revolving loans (the “Revolving Loans”) in a maximum amount up to the lesser of $75 million and a borrowing base that is calculated based on the outstanding amount of the Borrowers’ eligible receivables and eligible inventory, as described in the Amended Wells Fargo Facility. The Amended Wells Fargo Facility also contains a sublimit of $9 million for swing line loans and $2 million for letters of credit. The Company currently has a $0.9 million letter of credit outstanding. The FILO Tranche was repaid in full in July 2023 and may not be reborrowed.

Amounts borrowed under the Amended Wells Fargo Facility may be used for working capital needs, certain permitted acquisitions, and to reimburse drawings under letters of credit.

Interest under the Amended Wells Fargo Facility is payable in arrears on the first day of each month. Interest charges with respect to Revolving Loans are computed on the actual principal amount of Revolving Loans outstanding at a rate per annum equal to (A) with respect to Base Rate loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) between 1.25% and 1.75% depending on average monthly undrawn availability and (B) with respect to SOFR loans, the sum of the applicable SOFR rate plus between 2.36% and 2.86% depending on average quarterly undrawn availability. Interest charges with respect to the FILO Tranche were computed on the actual principal amount of FILO Tranche loans outstanding at a rate per annum equal to (A) with respect to Base Rate FILO Tranche loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) 6.5% and (B) with respect to SOFR FILO Tranche loans, the sum of the applicable SOFR rate plus 7.50%. The Amended Wells Fargo Facility also includes a monthly unused line fee ranging from 0.35% to 0.75% per annum determined based upon the level of average Revolving Loans outstanding during the immediately preceding month measured against the total Revolving Loans that may be borrowed under the Amended Wells Fargo Facility.

In connection with the closing of the Amended Wells Fargo Facility, the Company also entered into a First Amendment to Guaranty and Security Agreement, dated as of March 2, 2022 (the “Amended Revolver Guaranty and Security Agreement”), pursuant to which the Company and certain subsidiaries are continuing to unconditionally guarantee the payment and performance of all obligations owing by Borrowers to Wells Fargo, as Agent for the benefit of the revolving lenders. Pursuant to the Amended Revolver Guaranty and Security Agreement, Borrowers, the Company and certain other subsidiaries are continuing to grant to the Agent, for the benefit of the Wells Fargo Facility lenders, a security interest in substantially all of their respective assets, including receivables, equipment, general intangibles (including intellectual property), inventory, subsidiary stock, real property, and certain other assets.

The Amended Wells Fargo Facility contains a financial covenant requiring the Company to maintain at all times minimum liquidity (defined as availability under the Amended Wells Fargo Facility plus unrestricted cash) of at least $5 million, of which at least $3 million must be derived from availability. The Amended Wells Fargo Facility also contains a springing covenant, which takes effect only upon a failure to maintain undrawn availability of at least $11.25 million or upon an election by the Borrowers to increase the inventory component of the borrowing base, requiring the Company to maintain a Fixed Charge Coverage Ratio (FCCR) of not less than 1.00 to 1.00, as of the end of each trailing period of twelve consecutive months commencing with the month prior to the triggering of the covenant. The FCCR (as defined in the Wells Fargo Facility) is the ratio of (a) EBITDA for such period, minus unfinanced capital expenditures made during such period, to (b) the aggregate amount of (i) interest expense required to be paid (other than interest paid-in-kind, amortization of financing fees, and other non-cash interest expense) during such period, (ii) scheduled principal payments (but excluding principal payments relating to outstanding Revolving Loans under the Amended Wells Fargo Facility), (iii) all net federal, state, and local income taxes required to be paid during such period (provided, that any tax refunds received shall be applied to the period in which the cash outlay for such taxes was made), (iv) all restricted payments paid (as defined in the Amended Wells Fargo Facility) during such period, and (v) to the extent not otherwise deducted from EBITDA for such period, all payments required to be made during such period in respect of any funding deficiency or funding shortfall with respect to any pension plan. The FCCR covenant ceases after the Borrowers have been in compliance therewith for two consecutive months.

The Amended Wells Fargo Facility also contains customary non-financial covenants relating to the Company and the Borrowers, including limitations on Borrowers’ ability to pay dividends on common stock or preferred stock, and also includes certain events of default, including payment defaults, breaches of representations and warranties, covenant defaults, cross-defaults to other obligations, events of bankruptcy and insolvency, certain ERISA events, judgments in excess of specified amounts, impairments to guarantees and a change of control.

The Company evaluated the Amended Wells Fargo Facility in accordance with the provisions of ASC 470 to determine if the amendment was a modification or an extinguishment of debt and concluded that the amendment was a modification of the original revolving credit facility for accounting purposes. As a result, the Company capitalized an additional $0.9 million of deferred financing costs in connection with the amendment, which, along with the $0.2 million of remaining deferred financing costs of the original revolving facility, is being amortized over the five year term of the Amended Wells Fargo Facility.

The commitments under the Amended Wells Fargo Facility will expire and the full outstanding principal amount of the loans, together with accrued and unpaid interest, are due and payable in full on March 2, 2027, unless the commitments are terminated and the outstanding principal amount of the loans are accelerated sooner following an event of default or in the event of certain other cross-defaults.

Termination of 2022 Term Loan Facility

On March 2, 2022, Hudson Technologies Company (“HTC”), an indirect subsidiary of Hudson Technologies, Inc. (the “Company”), and the Company’s subsidiary Hudson Holdings, Inc., as borrowers (collectively, the “Borrowers”), and the Company, as guarantor, became obligated under a Credit Agreement (the “Term Loan Facility”) with TCW Asset Management Company LLC, as administrative agent (“Term Loan Agent”) and the lender parties thereto (the “Term Loan Lenders”).

Under the terms of the Term Loan Facility, the Borrowers immediately borrowed $85 million pursuant to a term loan (the “Term Loan”), which had a maturity date in March 2027. Amounts borrowed under the Term Loan Facility were used by the Borrowers to repay the outstanding principal amount and related fees and expenses under the Prior Term Loan Facility (as defined below) and for other corporate purposes. The Company paid approximately $4.3 million of term loan deferred financing costs.

During the third quarter of 2023, the Company repaid in full the remaining $32.5 million principal balance outstanding under its Term Loan Facility and the FILO Tranche. In conjunction with this payoff, the Company recorded $3.4 million of interest which included a non-cash write off of $3.1 million deferred financing costs and $0.3 million of other expense and fees.

Termination of Prior Term Loan Facility

In conjunction with entry into the new Term Loan Facility as described above, on March 2, 2022 the Company’s then-existing term loans, as amended (the “Prior Term Loan Facility”), which had a principal balance of approximately $63.9 million after payment of a $16.0 million excess cash flow amount thereunder, were repaid in full, together with associated required lender fees and expenses of $3.3 million, and the Prior Term Loan Facility was terminated. The termination of the Prior Term Loan Facility constituted an extinguishment of debt, which resulted in the Company recording an additional $4.6 million of interest expense during the first quarter of 2022, which included the aforementioned $3.3 million of prior lender fees and expenses and $1.3 million of pre-existing deferred financing costs from the Prior Term Loan Facility.

The Company was in compliance with all covenants under the Amended Wells Fargo Facility as of December 31, 2023.

The Company’s ability to comply with these covenants in future quarters may be affected by events beyond the Company’s control, including general economic conditions, weather conditions, regulations and refrigerant pricing. Therefore, the Company cannot make any assurance that it will continue to be in compliance during future periods.

The Company believes that it will be able to satisfy its working capital requirements for the foreseeable future from anticipated cash flows from operations and available funds under the Amended Wells Fargo Facility. Any unanticipated expenses, including, but not limited to, an increase in the cost of refrigerants purchased by the Company, an increase in operating expenses or failure to achieve expected revenues from the Company’s RefrigerantSide® Services and/or refrigerant sales or additional expansion or acquisition costs that may arise in the future would adversely affect the Company’s future capital needs. There can be no assurance that the Company’s proposed or future plans will be successful, and as such, the Company may require additional capital sooner than anticipated, which capital may not be available on acceptable terms, or at all.

CARES Act Loan

On April 23, 2020 the Company received a loan in the amount of $2.475 million from Meridian Bank under the Paycheck Protection Program (“PPP”) pursuant to the CARES Act. The loan had a term of two years, was unsecured, and bore interest at a fixed rate of one percent per annum, with the first nine months of principal and interest deferred. As a result of the COVID-19 pandemic, in applying for the loan the Company made a good faith assertion based upon the degree of uncertainty introduced to the capital markets and the industries affecting the Company’s customers and the Company’s dependency to curtail expenses to fund ongoing operations. The PPP loan proceeds were used in part to help offset payroll costs as stipulated in the legislation. All or a portion of the PPP loan could be forgiven by the U.S. Small Business Administration (“SBA”) upon application by the Company and upon documentation of expenditures in accordance with the SBA requirements. Under the CARES Act, loan forgiveness is available for the sum of documented payroll costs and other covered areas, such as rent payments, mortgage interest and utilities, as applicable. During the third quarter of 2021, the Company received forgiveness of the loan from the SBA, resulting in $2.475 million of Other income recorded in the Company’s Consolidated Income Statements.

XML 31 R17.htm IDEA: XBRL DOCUMENT v3.24.0.1
Commitments and contingencies
12 Months Ended
Dec. 31, 2023
Commitments and contingencies  
Commitments and contingencies

Note 11 - Commitments and contingencies

Rents and operating leases

The Company utilizes leased facilities and operates equipment under non-cancelable operating leases through July 2030. Below is a table of key properties:

    

    

Lease

Annual

Expiration

Location

Rent

Date

Baton Rouge, Louisiana

$

30,000

 

5/2024

Champaign, Illinois

$

609,000

 

12/2024

Champaign, Illinois (2nd location)

$

349,000

9/2026

Charlotte, North Carolina

$

38,000

 

5/2025

Escondido, California

$

238,000

 

6/2027

Long Beach, California

$

28,800

 

2/2024*

Ontario, California

$

174,000

 

12/2024

Riverside, California

$

27,000

 

Month to Month

Rantoul, Illinois

$

36,000

Month to Month

Smyrna, Georgia

$

492,000

 

7/2030

Stony Point, New York

$

118,000

 

6/2026

Woodcliff Lake, New Jersey

$

236,000

8/2027

*

Lease was renewed on March 1, 2024.

The Company rents properties and various equipment under operating leases. Operating lease expense for the years ended December 31, 2023, 2022 and 2021 totaled approximately $1.7 million, $2.6 million and $3.1 million. In addition to the properties above, the Company does at times utilize public warehouse space on a month to month basis. The Company typically enters into short-term leases for the facilities and wherever possible extends the expiration date of such leases.

XML 32 R18.htm IDEA: XBRL DOCUMENT v3.24.0.1
Share-based compensation
12 Months Ended
Dec. 31, 2023
Share-based compensation  
Share-based compensation

Note 12 - Share-Based Compensation

Share-based compensation represents the cost related to share-based awards, typically stock options or stock grants, granted to employees, non-employees, officers and directors. Share-based compensation is measured at grant date, based on the estimated aggregate fair value of the award on the grant date, and such amount is charged to compensation expense on a straight-line basis over the requisite service period. For the years ended December 31, 2023, 2022 and 2021, the share-based compensation expense of $2.3 million, $0.9 million and $0.5 million, respectively, is reflected in Selling, general and administrative expenses in the consolidated Income Statements.

Share-based awards have historically been made as stock options, and recently also as stock grants, issued pursuant to the terms of the Company’s stock option and stock incentive plans, (collectively, the “Plans”), described below. The Plans may be administered by the Board of Directors or the Compensation Committee of the Board or by another committee appointed by the Board from among its members as provided in the Plans. Presently, the Plans are administered by the Company’s Compensation Committee of the Board of Directors. As of December 31, 2023 there were 4,341,463 shares of the Company’s common stock available under the Plans for issuance for future stock option grants or other stock based awards.

Stock option awards, which allow the recipient to purchase shares of the Company’s common stock at a fixed price, are typically granted at an exercise price equal to the Company’s stock price at the date of grant. Typically, the Company’s stock option awards have vested from immediately to two years from the grant date and have had a contractual term ranging from three to ten years. Incentive Stock Options (“ISOs”) granted under the Plans may not be granted at a price less than the fair market value of the common stock on the date of grant (or 110% of fair market value in the case of persons holding 10% or more of the voting stock of the Company). Nonqualified options granted under the Plans may not be granted at a price less than the fair market value of the common stock. Options granted under the Plans expire not more than ten years from the date of grant (five years in the case of ISOs granted to persons holding 10% or more of the voting stock of the Company).

Effective September 17, 2014, the Company adopted its 2014 Stock Incentive Plan (“2014 Plan”) pursuant to which 3,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. Incentive Stock Options (ISOs) may be granted under the 2014 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2014 Plan is sooner terminated, the ability to grant options or other awards under the 2014 Plan will expire on September 17, 2024.

Effective June 7, 2018, the Company adopted its 2018 Stock Incentive Plan (“2018 Plan”) pursuant to which 4,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. ISOs may be granted under the 2018 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2018 Plan is sooner terminated, the ability to grant options or other awards under the 2018 Plan will expire on June 7, 2028.

Effective June 11, 2020, the Company adopted its 2020 Stock Incentive Plan (“2020 Plan”) pursuant to which 3,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. ISOs may be granted under the 2020 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2020 Plan is sooner terminated, the ability to grant options or other awards under the 2020 Plan will expire on June 11, 2030.

All stock options have been granted to employees and non-employees at exercise prices equal to or in excess of the market value on the date of the grant.

The Company determines the fair value of share-based awards at the grant date by using the Black-Scholes option-pricing model, and has utilized the “simplified” method, as prescribed by the SEC’s Staff Accounting Bulletin (“SAB”) No.110, Share-Based Payment, to compute expected lives of share based awards. The Company has opted to use the simplified method for stock options because management believes that the Company does not have sufficient historical exercise data to provide a reasonable basis upon which to estimate the expected term. The Company records forfeitures and cancellations as they occur. The following are the weighted-average assumptions:

Year ended

    

    

 

December 31, 

2023

2022

2021

 

Assumptions

 

  

 

  

 

  

Dividend yield

 

0

%  

0

%

0

%

Risk free interest rate

 

3.69%-4.89

%  

1.84%-4.27

%

0.29%-0.85

%

Expected volatility

 

71.73%-94

%  

91%-94

%

90%-101

%

Expected lives

 

1.5-2.0 years

 

1.5-2.75 years

 

2.5-5 years

The expected stock price volatility is based on the implied volatilities from traded options on our stock, historical volatility of our stock and other factors.

A summary of the activity for the Company’s Plans for the indicated periods is presented below:

    

    

Weighted

Average

Stock Options and Stock Appreciation Rights

Shares

Exercise Price

Outstanding at December 31, 2020

 

5,329,515

$

1.06

-Cancelled

 

(133,257)

$

2.02

-Exercised

 

(3,076,489)

$

1.16

 -Granted (1)

 

484,254

$

1.82

Outstanding at December 31, 2021

 

2,604,023

$

1.03

-Cancelled

 

(11,781)

$

3.75

-Exercised

 

(583,273)

$

1.15

 -Granted (2)

 

381,181

$

4.33

Outstanding at December 31, 2022

2,390,150

$

1.51

-Cancelled

(48,268)

$

5.67

-Exercised

(296,973)

$

2.68

 -Granted (3)

602,526

$

10.02

Outstanding at December 31, 2023

 

2,647,435

$

3.31

(1)Options to purchase 463,754 shares were granted in 2021, all of which were vested immediately in 2021. In addition, 20,500 stock appreciation rights were granted in December 2021 with a six- month vesting period.
(2)Options to purchase 381,181 shares were granted in 2022, of which options to purchase 40,588 shares vested immediately in 2022 and the remainder vested 50% immediately and 50% one year after the date of the grants.
(3)Options to purchase 584,826 shares were granted in 2023, of which options to purchase 337,727 shares vested immediately in 2023 and the remainder vested 50% immediately and 50% one year after the date of the grants. In addition, 17,700 stock appreciation rights were granted in January 2023 with a six- month vesting period.

The following is the weighted average contractual life in years and the weighted average exercise price at December 31, 2023 and 2022 of:

    

    

Weighted 

    

Average

Remaining

Weighted

Number of

Contractual

Average

December 31, 2023

Options

Life (Years)

Exercise Price

Options outstanding and vested

 

2,400,336

 

4.47

$

2.60

    

    

Weighted 

    

Average

Remaining

Weighted

Number of

Contractual

Average

December 31, 2022

Options

Life(Years)

Exercise Price

Options outstanding and vested

 

2,218,799

 

5.39

$

1.33

The intrinsic values of options outstanding at December 31, 2023 and 2022 are $26.9 million and $20.6 million, respectively.

The intrinsic value of options unvested at December 31, 2023 and 2022 are $0.8 million and $1.1 million, respectively. As of December 31, 2023 there was $0.9 million unrecognized share based compensation expense related to non-vested options.

The intrinsic values of options vested and exercised during the years ended December 31, 2023, 2022 and 2021 were as follows:

    

2023

    

2022

    

2021

Intrinsic value of options vested

$

2,886,080

$

1,249,506

$

1,481,858

Intrinsic value of options exercised

$

2,565,056

$

4,051,422

$

7,088,578

XML 33 R19.htm IDEA: XBRL DOCUMENT v3.24.0.1
Retirement benefits plan
12 Months Ended
Dec. 31, 2023
Retirement benefits plan  
Retirement benefits plan

Note 13 – Benefit Plan

The Company maintains a 401(k)-benefit plan for its employees, which generally allows participants to make contributions via salary deductions up to allowable Internal Revenue Service limits on a tax-deferred basis. Such deductions may be matched in part by discretionary contributions by the Company.  The matching contributions for 2023, 2022 and 2021 were $561,852, $472,002, and $281,586, respectively.

XML 34 R20.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies (Policies)
12 Months Ended
Dec. 31, 2023
Summary of Significant Accounting Policies  
Business

Business

Hudson Technologies, Inc. (“Hudson” or the “Company”), incorporated under the laws of New York on January 11, 1991, is a refrigerant services company providing innovative solutions to recurring problems within the refrigeration industry. Hudson has proven, reliable programs that meet customer refrigerant needs by providing environmentally sustainable solutions from initial sale of refrigerant gas through recovery, reclamation and reuse, peak operating performance of equipment through energy efficiency and emergency air conditioning and refrigeration system repair, to final refrigerant disposal and carbon credit trading.

The Company’s operations consist of one reportable segment. The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems, and include refrigerant and industrial gas sales, refrigerant management services consisting primarily of reclamation of refrigerants and RefrigerantSide® Services performed at a customer’s site. RefrigerantSide® Services consist of system decontamination to remove moisture, oils and other contaminants intended to restore systems to designed capacity. As a component of the Company’s products and services, the Company also participates in the generation of carbon offset projects. The Company operates principally through its wholly-owned subsidiary, Hudson Technologies Company. Unless the context requires otherwise, references to the “Company”, “Hudson”, “we”, “us”, “our”, or similar pronouns refer to Hudson Technologies, Inc. and its subsidiaries.

In preparing the accompanying consolidated financial statements, and in accordance with Accounting Standards Codification (“ASC”) 855-10 “Subsequent Events”, the Company’s management has evaluated subsequent events through the date that the financial statements were filed.

AIM Act

The United States Environmental Protection Agency (“EPA”) issued several final rules establishing the framework to allocate allowances for virgin production and consumption of hydrofluorocarbon refrigerants (“HFCs”) that currently provide allowances through 2028. The EPA is responsible for the administration of the HFC phase down enacted by Congress under the AIM Act.

The AIM Act directs the EPA to address the reduction in virgin HFCs and provides authority to do so in three respects:

1)phase down the production and consumption of listed HFCs,
2)manage these HFCs and their substitutes including reclamation of refrigerants, and
3)facilitate the transition to next-generation technologies.

Congress required that the EPA consider ways to promote reclamation in all phases of its implementation of the AIM Act. The AIM Act introduced a stepdown of 10% from baseline levels in 2022 and 2023, and establishes a cumulative 40% reduction in the baseline for 2024. Hudson received allocation allowances for calendar years 2022 and 2023 equal to approximately 3 million Metric Tons Exchange Value Equivalents per year, or approximately 1% of the total HFC consumption, with allowances for future periods to be determined at a later date. Reclamation will be critical to maintaining necessary HFC supply levels to ensure an orderly phasedown. Reclamation is not subject to the allowance system or restricted from use.

On October 6, 2023, the EPA announced the latest actions to phase down HFCs under the AIM Act:

1)

Finalization of the Technology Transition Rule - The first new action is a final rule to accelerate the ongoing transition to more efficient and climate-safe technologies in new refrigeration, heating and cooling systems and other products by restricting the use of HFCs where alternatives are already available. The rule, which applies to both imported and domestically manufactured products, bans HFCs in certain equipment and sets a limit on the global warming potentials (GWPs) of the HFCs that can be used in each subsector, with compliance dates ranging from 2025 to 2028.

In December 2023, the EPA announced an interim final rule on this matter, which provides an additional year, until January 1, 2026, for the installation of new residential and light commercial air conditioning systems and heat pump systems that use components manufactured or imported prior to January 1, 2025. Importantly, to qualify for the extended compliance deadline, all components of a system using the higher Global Warming Potential (GWP) HFC must be manufactured or imported prior to January 1, 2025.

2)

Proposed Refrigerant Management Rule - The second action is a proposed rule (subject to further comments) to better manage and reuse existing HFCs, including by reducing wasteful leaks from equipment and supporting HFC recycling and reclamation. The proposed rule, which is expected to be finalized during the third quarter of 2024, includes requirements for repairing leaky equipment, use of automatic leak detection systems on large refrigeration systems, use of reclaimed HFCs for certain applications, recovery of HFCs from cylinders before their disposal, and a container tracking system.

Consolidation

Consolidation

The consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States, represent all companies of which Hudson directly or indirectly has majority ownership or otherwise controls. Significant intercompany accounts and transactions have been eliminated. The Company’s consolidated financial statements include the accounts of wholly-owned subsidiaries Hudson Holdings, Inc. and Hudson Technologies Company. The Company does not present a statement of comprehensive income as its comprehensive income is the same as its net income.

Fair Value of Financial Instruments

Fair Value of Financial Instruments

The carrying values of financial instruments including cash, trade accounts receivable and accounts payable approximate fair value at December 31, 2023 and December 31, 2022, because of the relatively short maturity of these instruments. The carrying value of debt approximates fair value, due to the variable rate nature of the debt, as of December 31, 2022. See Note 2 for further details.

Credit Risk

Credit Risk

Financial instruments, which potentially subject the Company to concentrations of credit risk, consist principally of temporary cash investments and trade accounts receivable. The Company maintains its temporary cash investments in highly-rated financial institutions and, at times, the balances exceed FDIC insurance coverage. The Company’s trade accounts receivable are primarily due from companies throughout the United States. The Company reviews each customer’s credit history before extending credit.

The Company establishes an allowance for credit losses. In accordance with the “expected credit loss” model, the carrying amount of accounts receivable is reduced by a valuation allowance that reflects the Company’s best estimate of the amounts that it does not expect to collect. In addition to reviewing delinquent accounts receivable, the Company considers many factors in estimating its reserve, including types of customers and their credit worthiness, experience and historical data adjusted for current conditions.

The carrying value of the Company’s accounts receivable is reduced by the established allowance for credit losses. The allowance for doubtful accounts includes any accounts receivable balances that are determined to be uncollectible, along with a general reserve for the remaining accounts receivable balances. The Company adjusts its reserves based on factors that affect the collectability of the accounts receivable balances.

For the year ended December 31, 2023, there was one customer accounting for greater than 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2023.  For the year ended December 31, 2022, there was no customer that accounted for 10% of the Company’s revenues but one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2022. For the year ended December 31, 2021, one customer accounted for 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2021.

The loss of a principal customer or a decline in the economic prospects of and/or a reduction in purchases of the Company’s products or services by any such customer could have a material adverse effect on the Company’s operating results and financial position.

Cash and Cash Equivalents

Cash and Cash Equivalents

Temporary investments with original maturities of ninety days or less are included in cash and cash equivalents.

Inventories

Inventories

Inventories, consisting primarily of refrigerant products available for sale, are stated at the lower of cost, on a first-in first-out basis, or net realizable value. Where the market price of inventory is less than the related cost, the Company may be required to write down its inventory through a lower of cost or net realizable value adjustment, the impact of which would be reflected in cost of sales on the Consolidated Income Statements. Any such adjustment would be based on management’s judgment regarding future demand and market conditions and analysis of historical experience.

Property, Plant and Equipment

Property, Plant and Equipment

Property, plant and equipment are stated at cost, including internally manufactured equipment. The cost to complete equipment that is under construction is not considered to be material to the Company’s financial position. Provision for depreciation is recorded using the straight-line method over the useful lives of the respective assets. Leasehold improvements are amortized on a straight-line basis over the shorter of economic life or terms of the respective leases. Costs of maintenance and repairs are charged to expense when incurred.

Due to the specialized nature of the Company’s business, it is possible that the Company’s estimates of equipment useful life periods may change in the future.

Goodwill

Goodwill

The Company has made acquisitions that included a significant amount of goodwill and other intangible assets. The Company applies the purchase method of accounting for acquisitions, which among other things, requires the recognition of goodwill (which represents the excess of the purchase price of the acquisition over the fair value of the net assets acquired and identified intangible assets). The Company tests its goodwill for impairment annually on a qualitative or quantitative basis (the first day of the fourth quarter) and between annual tests if an event occurs or circumstances change that would more likely than not reduce the fair value of an asset below its carrying value. Goodwill is tested for impairment at the reporting unit level. When performing the annual impairment test, the Company has the option of first performing a qualitative assessment, which requires management to make assumptions affecting a reporting unit, to determine the existence of events and circumstances that would lead to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. If such a conclusion is reached, the Company is then required to perform a quantitative impairment assessment of goodwill. The Company has one reporting unit at December 31, 2023. Other intangible assets that meet certain criteria are amortized over their estimated useful lives.

An impairment charge is recorded based on the excess of a reporting unit’s carrying amount over its fair value. An impairment charge would be recognized when the carrying amount exceeds the estimated fair value of a reporting unit. These impairment evaluations use many assumptions and estimates in determining an impairment loss, including certain assumptions and estimates related to future earnings. If the Company does not achieve its earnings objectives, the assumptions and estimates underlying these impairment evaluations could be adversely affected, which could result in an asset impairment charge that would negatively impact operating results. During the fourth quarter of 2023, the Company completed its annual impairment test as of October 1 and determined in its qualitative assessment that it is more likely than not that the fair value of the reporting unit is greater than its carrying amount, resulting in no goodwill impairment. There can be no assurances that future sustained declines in macroeconomic or business conditions affecting our industry will not occur, which could result in goodwill impairment charges in future periods.

There were no goodwill impairment losses recognized in 2023, 2022 or 2021.

Leases

Leases

The Company determines if an arrangement contains a lease at inception. An arrangement contains a lease if it implicitly or explicitly identifies an asset to use and conveys the right to control the use of the identified asset in exchange for consideration. As a lessee, the Company includes operating leases in operating lease right-of-use (“ROU”) assets, operating lease liabilities, and non-current operating lease liabilities in its consolidated balance sheets.

Finance leases are included in property and equipment in the consolidated balance sheets.

ROU assets represent the Company’s right to use an underlying asset for the lease term and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized upon commencement of the lease based on the present value of the lease payments over the lease term. As most of the Company’s leases do not provide an implicit interest rate, the Company generally uses its incremental borrowing rate based on the estimated rate of interest for fully collateralized and fully amortizing borrowings over a similar term of the lease payments and commencement date to determine the present value of lease payments. When readily determinable, the Company uses the implicit rate. The Company’s lease terms include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Expenses associated with operating leases and finance leases are included in selling, general and administrative within the consolidated statement of income.

Cylinder Deposit Liability

Cylinder Deposit Liability

The cylinder deposit liability, which is included in Accrued expenses and other current liabilities on the Company’s Balance Sheet, represents the amount due to customers for the return of refillable cylinders. The Company charges its customers cylinder deposits upon the shipment of refrigerant gases that are contained in refillable cylinders. The amount charged to the customer by the Company approximates the cost of a new cylinder of the same size. Upon return of a cylinder, this liability is reduced. The cylinder deposit liability balance was $17.2 million and $13.6 million at December 31, 2023 and 2022, respectively. 

Revenues and Cost of Sales

Revenues and Cost of Sales

The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems. Most of the Company’s revenues are realized from the sale of refrigerant and industrial gases and related products. The Company also generates revenue from refrigerant management services performed at a customer’s site and in-house. The Company conducts its business primarily within the US.

The Company applies the FASB’s guidance on revenue recognition, which requires the Company to recognize revenue in an amount that reflects the consideration to which the Company expects to be entitled in exchange for goods or services transferred to its customers. In most instances, the Company’s contract with a customer is the customer’s purchase order and the sales price to the customer is fixed. For certain customers, the Company may also enter into a sales agreement outlining a framework of terms and conditions applicable to future purchase orders received from that customer. Because the Company’s contracts with customers are typically for a single customer purchase order, the duration of the contract is usually less than one year. The Company’s performance obligations related to product sales are satisfied at a point in time, which may occur upon shipment of the product or receipt by the customer, depending on the terms of the arrangement. The Company’s performance obligations related to reclamation and RefrigerantSide® services are generally satisfied at a point in time when the service is performed. Accordingly revenues are recorded upon the shipment of the product, or in certain instances upon receipt by the customer, or the completion of the service.

In July 2016 the Company was awarded, as prime contractor, a five-year contract, including a five-year renewal option,which has been exercised through July 2026, by the United States Defense Logistics Agency (“DLA”) for the management, supply, and sale of refrigerants, compressed gases, cylinders and related services. The Company determined that the sale of refrigerants and the management services provided each have stand-alone value. Accordingly, the performance obligations related to the sale of refrigerants is satisfied at a point in time, mainly when the customer receives and obtains control of the product. The performance obligation related to management service revenue is satisfied over time and revenue is recognized on a straight-line basis over the term of the arrangement as the management services are provided. For the years ended December 31, 2023, 2022 and 2021 management services revenue were $2.4 million, $2.3 million, and $2.2 million respectively.

Cost of sales is recorded based on the cost of products shipped or services performed and related direct operating costs of the Company’s facilities. In general, the Company performs shipping and handling services for its customers in connection with the delivery of refrigerant and other products. The Company elected to implement ASC 606-10-25-18B, whereby the Company accounts for such shipping and handling as activities to fulfill the promise to transfer the good. To the extent that the Company charges its customers shipping fees, such amounts are included as a component of revenue and the corresponding costs are included as a component of cost of sales.

The Company’s revenues are derived from Product and related sales and RefrigerantSide® Services revenues. The revenues for each of these lines are as follows:

Years Ended December 31, 

    

2023

    

2022

    

2021

(in thousands)

Product and related sales

$

281,954

$

319,019

$

187,799

RefrigerantSide ® Services

 

7,071

 

6,206

 

4,949

Total

$

289,025

$

325,225

$

192,748

Income Taxes

Income Taxes

The Company is taxed at statutory corporate income tax rates after adjusting income reported for financial statement purposes for certain items. Current income tax expense reflects the tax results of revenues and expenses currently taxable or deductible. The Company utilizes the asset and liability method of accounting for deferred income taxes, which provides for the recognition of deferred tax assets or liabilities, based on enacted tax rates and laws, for the differences between the financial and income tax reporting bases of assets and liabilities. The tax benefit associated with the Company’s net operating loss carry forwards (“NOLs”) is recognized to the extent that the Company expects to realize future taxable income.

During the year ended December 31, 2022, the Company concluded that its deferred tax assets were more likely than not to become realizable. The Company fully reversed its existing valuation allowance of $15.1 million, with $11.6 million reversed during the first and second quarters of 2022, and the remaining $3.5 million through the third and fourth quarters of 2022. The conclusion that a valuation allowance was no longer needed was based on the achievement of three years of cumulative pre-tax income, the utilization of the Company’s $29.3 million federal NOLs, which comprised a majority of the Company’s deferred tax assets, combined with estimates of future years’ pre-tax income that were sufficient to realize the remaining deferred tax assets.

For the year ended December 31, 2023 the Company had no federal NOLs, as the Company utilized all of its remaining federal NOLs during the year ended December 31, 2022. For the year ended December 31, 2023, the Company had state tax NOLs of approximately $1.8 million, expiring in various years. We review the likelihood that we will realize the benefit of our deferred tax assets on a quarterly basis.

The Company evaluates uncertain tax positions, if any, by determining if it is more likely than not to be sustained upon examination by the taxing authorities. For the years ended December 31, 2023 and December 31, 2022, the Company believes it had no uncertain tax positions.

Income per Common and Equivalent Shares

Income per Common and Equivalent Shares

If dilutive, common equivalent shares (common shares assuming exercise of options) utilizing the treasury stock method are considered in the presentation of diluted income per share. The reconciliation of shares used to determine net income per share is as follows (dollars in thousands):

Years ended December 31, 

    

2023

    

2022

    

2021

Net income

$

52,247

$

103,801

$

32,259

Weighted average number of shares – basic

 

45,385,433

 

44,990,104

 

43,765,443

Shares underlying options

 

1,952,798

 

2,118,914

 

2,875,379

Weighted average number of shares outstanding – diluted

 

47,338,231

 

47,109,018

 

46,640,822

During the years ended December 31, 2023, 2022 and 2021, certain options aggregating 17,172, 28,467 and 2,583,523 shares, respectively, have been excluded from the calculation of diluted shares, due to the fact that their effect would be anti-dilutive.

Estimates and Risks

Estimates and Risks

The preparation of financial statements in conformity with generally accepted accounting principles in the United States requires the use of estimates and assumptions that affect the amounts reported in these financial statements and footnotes. The Company considers these accounting estimates to be critical in the preparation of the accompanying consolidated financial statements. The Company uses information available at the time the estimates are made. However, these estimates could change materially if different information or assumptions were used. Additionally, these estimates may not ultimately reflect the actual amounts of the final transactions that occur. The Company utilizes both internal and external sources to evaluate potential current and future liabilities for various commitments and contingencies. In the event that the assumptions or conditions change in the future, the estimates could differ from the original estimates.

Several of the Company’s accounting policies involve significant judgments, uncertainties, and estimates. The Company bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities. Actual results may differ from these estimates under different assumptions or conditions. To the extent that actual results differ from management’s judgments and estimates, there could be a material adverse effect on the Company. On a continuous basis, the Company evaluates its estimates, including, but not limited to, those estimates related to its allowance for doubtful accounts, inventory reserves, goodwill and commitments and contingencies. With respect to trade accounts receivable, the Company estimates the necessary allowance for doubtful accounts based on both historical and anticipated trends of payment history and the ability of the customer to fulfill its obligations. For inventory, the Company evaluates both current and anticipated sales prices of its products to determine if a write down of inventory to net realizable value is necessary.

The Company participates in an industry that is highly regulated, and changes in the regulations affecting its business could affect its operating results. Currently the Company purchases virgin hydrofluorocarbon (“HFC”) and hydrofluroolefin (“HFO”) refrigerants and reclaimable, primarily hydrochlorofluorocarbons (“HCFC”), HFC and chlorofluorocarbon (“CFC”), refrigerants from suppliers and its customers. To the extent that the Company is unable to source sufficient quantities of refrigerants or is unable to obtain refrigerants on commercially reasonable terms or experiences a decline in demand and/or price for refrigerants sold by the Company, the Company could realize reductions in revenue from refrigerant sales, which could have a material adverse effect on its operating results and its financial position. The process of sourcing refrigerants includes various procurement costs, such as freight, processing, insurance, and other costs, relating to the delivery of refrigerants. As a result of the recently noted global supply chain issues, the Company determined it could be exposed to incremental costs related to these refrigerant purchases. These costs represent the Company’s initial estimate that are possibly subject to finalization in future periods and are recorded in accrued expenses and other current liabilities on the consolidated balance sheet as of December 31, 2023.

The Company is subject to various legal proceedings. The Company assesses the merit and potential liability associated with each of these proceedings. In addition, the Company estimates potential liability, if any, related to these matters. To the extent that these estimates are not accurate, or circumstances change in the future, the Company could realize liabilities, which could have a material adverse effect on its operating results and its financial position.

Impairment of Long-lived Assets

Impairment of Long-lived Assets

The Company reviews long-lived assets for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of the assets to the future net cash flows expected to be generated by the asset. If such assets are considered to be impaired, the impairment to be recognized is measured by the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of are reported at the lower of the carrying amount or fair value less the cost to sell.

Capitalized Software Development Costs

Capitalized Software Development Costs

Capitalized internal-use software costs consist of costs to purchase and develop software. For software to be used solely to meet internal needs and for cloud-based applications used to deliver our services, we capitalize costs incurred during the application development stage and include such costs within property and equipment, net within our consolidated balance sheets.

Recent Accounting Pronouncements

Recent Accounting Pronouncements

In June 2016, the FASB issued ASU No. 2016-13, Measurement of Credit Losses on Financial Instruments, which revises guidance for the accounting for credit losses on financial instruments within its scope, and in November 2018, issued ASU No. 2018-19 and in April 2019, issued ASU No. 2019-04 and in May 2019, issued ASU No. 2019-05, and in November 2019, issued ASU No. 2019-11, which each amended the standard. The new standard introduces an approach, based on expected losses, to estimate credit losses on certain types of financial instruments and modifies the impairment model for available-for-sale debt securities. The new approach to estimating credit losses (referred to as the current expected credit losses model) applies to most financial assets measured at amortized cost and certain other instruments, including trade and other receivables, loans, held-to-maturity debt securities, net investments in leases and off-balance-sheet credit exposures. This ASU is effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. Entities are required to apply the standard’s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. The Company adopted ASU No. 2016-13 on January 1, 2023. The adoption of ASU No. 2016-13 did not have a material impact on its results of operations or financial position.

In August 2020, the FASB issued ASU 2020-06, “Debt-Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging-Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity”, which is intended to simplify the accounting for convertible instruments by removing certain separation models in Subtopic 470-20, Debt-Debt with Conversion and Other Options, for convertible instruments. The pronouncement is effective for fiscal years, and for interim periods within those fiscal years, beginning after December 15, 2022, with early adoption permitted. The Company adopted ASU 2020-06 on January 1, 2023. The adoption of ASU 2020-06 did not have a material impact on its results of operations or financial position.

In December 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-09, “Income Taxes (Topic 740): Improvements to Income Tax Disclosures,” which requires public business entities to disclose additional information in specified categories with respect to the reconciliation of the effective tax rate to the statutory rate for federal, state, and foreign income taxes. It also requires greater detail about individual reconciling items in the rate reconciliation to the extent the impact of those items exceeds a specified threshold. In addition to new disclosures associated with the rate reconciliation, the ASU requires information pertaining to taxes paid (net of refunds received) to be disaggregated for federal, state, and foreign taxes and further disaggregated for specific jurisdictions to the extent the related amounts exceed a quantitative threshold. The ASU also describes items that need to be disaggregated based on their nature, which is determined by reference to the item’s fundamental or essential characteristics, such as the transaction or event that triggered the establishment of the reconciling item and the activity with which the reconciling item is associated. The ASU eliminates the historic requirement that entities disclose information concerning unrecognized tax benefits having a reasonable possibility of significantly increasing or decreasing in the 12 months following the reporting date. This ASU is effective for annual periods beginning after December 15, 2024. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. This ASU should be applied on a prospective basis; however, retrospective application is permitted. The Company is currently evaluating the impact that ASU 2023 – 09 will have on its consolidated financial statements.

In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280): Improvements to Reportable Segments,” which aims to improve financial reporting by requiring disclosure of incremental segment information on an annual and interim basis for all public entities to enable investors to develop more decision-useful financial analyses. Currently, Topic 280 requires that a public entity disclose certain information about its reportable segments. For example, a public entity is required to report a measure of segment profit or loss that the CODM uses to assess segment performance and make decisions about allocating resources. Topic 280 also requires other specified segment items and amounts, such as depreciation, amortization, and depletion expense, to be disclosed under certain circumstances. The amendments in this ASU do not change or remove those disclosure requirements and do not change how a public entity identifies its operating segments, aggregates those operating segments, or applies the quantitative thresholds to determine its reportable segments. This ASU is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company does not expect that the requirements of ASU 2023 – 07 will have a material impact on its consolidated financial statements.

XML 35 R21.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies (Tables)
12 Months Ended
Dec. 31, 2023
Summary of Significant Accounting Policies  
Schedule of Product and related sales and RefrigerantSide Services revenues

Years Ended December 31, 

    

2023

    

2022

    

2021

(in thousands)

Product and related sales

$

281,954

$

319,019

$

187,799

RefrigerantSide ® Services

 

7,071

 

6,206

 

4,949

Total

$

289,025

$

325,225

$

192,748

Schedule of reconciliation of shares used to determine net income per share The reconciliation of shares used to determine net income per share is as follows (dollars in thousands):

Years ended December 31, 

    

2023

    

2022

    

2021

Net income

$

52,247

$

103,801

$

32,259

Weighted average number of shares – basic

 

45,385,433

 

44,990,104

 

43,765,443

Shares underlying options

 

1,952,798

 

2,118,914

 

2,875,379

Weighted average number of shares outstanding – diluted

 

47,338,231

 

47,109,018

 

46,640,822

XML 36 R22.htm IDEA: XBRL DOCUMENT v3.24.0.1
Trade accounts receivable - net (Tables)
12 Months Ended
Dec. 31, 2023
Trade accounts receivable - net  
Schedule of changes in the balance of accounts receivable

The opening and closing balance of the company’s accounts receivable is as follows:

Beginning

Increase

Balance

(Decrease),

Ending Balance

(in thousands)

    

at January 1

    

Net

    

at December 31

2023

$

20,872

$

4,297

$

25,169

2022

$

14,223

$

6,649

$

20,872

Schedule of activity occurring in the reserves for allowance for credit losses The following table represents the activity occurring in the reserves for allowance for credit losses in 2023 and 2022.

Beginning

Net additions

Balance

charged to

Deductions

Ending Balance

(in thousands)

    

at January 1

    

Operations

    

and Other

    

at December 31

2023

$

1,927

$

659

$

(592)

$

1,994

2022

$

1,584

$

474

$

(131)

$

1,927

XML 37 R23.htm IDEA: XBRL DOCUMENT v3.24.0.1
Inventories (Tables)
12 Months Ended
Dec. 31, 2023
Inventories  
Schedule of inventories

December 31, 

December 31, 

    

2023

    

2022

(in thousands)

Refrigerants and cylinders

$

159,654

$

152,840

Less: net realizable value adjustments

 

(5,204)

 

(7,463)

Total

$

154,450

$

145,377

XML 38 R24.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property, plant and equipment (Tables)
12 Months Ended
Dec. 31, 2023
Property, plant and equipment  
Schedule of elements of property, plant and equipment

Estimated

December 31, 

    

2023

    

2022

    

Lives

(in thousands)

Property, plant and equipment

 

  

 

  

 

  

- Land

$

1,255

$

1,255

 

  

- Land improvements

 

319

 

319

 

6-10 years

- Buildings

 

1,446

 

1,446

 

25-39 years

- Building improvements

 

3,467

 

3,396

 

25-39 years

- Cylinders

 

13,220

 

13,315

 

15-30 years

- Equipment

 

29,397

 

27,258

 

3-10 years

- Equipment under capital lease

 

315

 

315

 

5-7 years

- Vehicles

 

1,790

 

1,773

 

3-5 years

- Lab and computer equipment, software

 

3,233

 

3,103

 

2-8 years

- Furniture & fixtures

 

933

 

840

 

5-10 years

- Leasehold improvements

 

865

 

852

 

3-5 years

- Construction-in-Progress

 

2,844

 

3,533

 

  

Subtotal

 

59,084

 

57,405

 

  

Less: Accumulated depreciation

 

(39,709)

 

(36,837)

 

  

Total

$

19,375

$

20,568

 

  

XML 39 R25.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases (Tables)
12 Months Ended
Dec. 31, 2023
Leases  
Schedule of maturity of lease payments

The following table presents information about the amount and timing of cash flows arising from the Company’s operating leases as of December 31, 2023.

Maturity of Lease Payments

    

December 31, 2023

(in thousands)

 -2024

 

1,914

 -2025

 

1,663

 -2026

 

1,500

 -2027

1,043

-2028

656

-Thereafter

 

823

Total undiscounted operating lease payments

 

7,599

Less imputed interest

 

(911)

Present value of operating lease liabilities

$

6,688

Schedule of balance sheet classification of lease liabilities

December 31, 

    

2023

    

2022

Current lease liabilities (recorded in Accrued expenses and other current liabilities)

$

1,898

$

1,663

Long-term lease liabilities

4,790

 

5,763

Total operating lease liabilities

$

6,688

$

7,426

Schedule of other information of operating leases

December 31, 

    

2023

    

2022

Weighted-average remaining term for operating leases

2.92

years

3.60

years

Weighted-average discount rate for operating leases

 

8.27

%

8.21

%

Schedule of Supplemental cash flow and non-cash information related to leases

December 31,

    

2023

    

2022

Cash paid for amounts included in measurement of lease liabilities:

 

  

 

  

Operating cash flow from operating leases

$

1,782

$

2,588

Right -of-use assets obtained in exchange for new operating lease liabilities

$

1,020

$

2,659

XML 40 R26.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income taxes (Tables)
12 Months Ended
Dec. 31, 2023
Income taxes  
Schedule of provision for income taxes

Years Ended December 31,

    

2023

    

2022

    

2021

(in thousands)

Current:

 

  

 

  

 

  

Federal

$

10,319

$

11,995

$

453

State and local

 

2,940

 

2,835

 

350

 

13,259

 

14,830

 

803

Deferred:

 

 

 

  

Federal

 

3,667

 

(323)

 

267

State and local

 

647

 

(1,126)

 

70

 

4,314

 

(1,449)

 

337

Expense for income taxes

$

17,573

$

13,381

$

1,140

Schedule of reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate

Years ended December 31, 

    

2023

    

2022

    

2021

 

Income tax rates

- Statutory U.S. federal rate

 

21

%  

21

%  

21

%

- State income taxes, net of federal benefit

 

4

%  

4

%  

0

%

- Excess tax benefits related to stock compensation

 

(1)

%  

(1)

%  

(4)

%

- 162m limitation

1

%  

1

%

- PPP Benefit

0

%

0

%

(2)

%

- Change in valuation allowance

 

0

%

(13)

%  

(12)

%

- Other true-up

0

%

(1)

%

Total

 

25

%  

11

%  

3

%

Schedule of net deferred income tax assets (liabilities)

December 31, 

    

2023

    

2022

(in thousands)

Deferred tax assets (liabilities):

- Reserve for doubtful accounts

$

497

$

500

- Inventory reserve

 

687

 

1,045

-Non qualified stock options

 

529

 

383

- Deferred interest

 

 

2,637

- Accrued expenses

 

82

 

107

Total Deferred income tax assets

$

1,795

$

4,672

Deferred tax liabilities:

 

 

- Depreciation and amortization

(6,353)

(4,916)

Total deferred tax liabilities

(6,353)

(4,916)

Net deferred tax liabilities

$

(4,558)

$

(244)

XML 41 R27.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and intangible assets (Tables)
12 Months Ended
Dec. 31, 2023
Goodwill and intangible assets  
Schedule of company's other intangible assets

2023

2022

Amortization

Gross

Gross

December 31, 

Period

Carrying

Accumulated

Carrying

Accumulated

(in thousands)

    

(in years)

    

Amount

    

Amortization

    

Net

    

Amount

    

Amortization

    

Net

Intangible assets with determinable lives

 

  

Covenant not to compete

 

6 – 10

$

870

$

798

 

72

$

870

$

710

160

Customer relationships

 

3 – 12

 

31,560

 

17,151

 

14,409

 

31,560

 

14,491

 

17,069

Above market leases

 

13

 

567

 

277

 

290

 

567

 

232

 

335

Total identifiable intangible assets

$

32,997

$

18,226

$

14,771

$

32,997

$

15,433

$

17,564

XML 42 R28.htm IDEA: XBRL DOCUMENT v3.24.0.1
Accrued expenses and other current liabilities (Tables)
12 Months Ended
Dec. 31, 2023
Accrued expenses and other current liabilities  
Schedule of shirt accrued expenses and other current liabilities

December 31,

    

2023

    

2022

(in thousands)

 

  

 

  

Accrued expenses

$

12,256

$

11,696

Cylinder deposits

 

17,225

 

13,638

Lease obligations

 

1,893

 

1,669

Other current liabilities

 

163

 

905

Total

$

31,537

$

27,908

XML 43 R29.htm IDEA: XBRL DOCUMENT v3.24.0.1
Short-term and Long-term debt (Tables)
12 Months Ended
Dec. 31, 2023
Short-term and Long-term debt  
Schedule of short-term and long-term debt

December 31, 

    

2023

    

2022

(in thousands)

Short-term & long-term debt

 

  

 

  

Short-term debt:

 

  

 

  

- Revolving credit line and other debt

$

$

- Term loan facility - current

4,250

Subtotal

 

 

4,250

Long-term debt:

 

 

- Term loan facility- net of current portion of long-term debt

 

 

27,563

- FILO term loan

 

 

15,000

- Less: deferred financing costs on term loan

 

 

(3,578)

Subtotal

 

 

38,985

Total short-term & long-term debt

$

$

43,235

XML 44 R30.htm IDEA: XBRL DOCUMENT v3.24.0.1
Commitments and contingencies (Tables)
12 Months Ended
Dec. 31, 2023
Commitments and contingencies  
Schedule of rent expense

The Company utilizes leased facilities and operates equipment under non-cancelable operating leases through July 2030. Below is a table of key properties:

    

    

Lease

Annual

Expiration

Location

Rent

Date

Baton Rouge, Louisiana

$

30,000

 

5/2024

Champaign, Illinois

$

609,000

 

12/2024

Champaign, Illinois (2nd location)

$

349,000

9/2026

Charlotte, North Carolina

$

38,000

 

5/2025

Escondido, California

$

238,000

 

6/2027

Long Beach, California

$

28,800

 

2/2024*

Ontario, California

$

174,000

 

12/2024

Riverside, California

$

27,000

 

Month to Month

Rantoul, Illinois

$

36,000

Month to Month

Smyrna, Georgia

$

492,000

 

7/2030

Stony Point, New York

$

118,000

 

6/2026

Woodcliff Lake, New Jersey

$

236,000

8/2027

XML 45 R31.htm IDEA: XBRL DOCUMENT v3.24.0.1
Share-based compensation (Tables)
12 Months Ended
Dec. 31, 2023
Share-based compensation  
Schedule of weighted-average assumptions used in determining fair value of share based awards

Year ended

    

    

 

December 31, 

2023

2022

2021

 

Assumptions

 

  

 

  

 

  

Dividend yield

 

0

%  

0

%

0

%

Risk free interest rate

 

3.69%-4.89

%  

1.84%-4.27

%

0.29%-0.85

%

Expected volatility

 

71.73%-94

%  

91%-94

%

90%-101

%

Expected lives

 

1.5-2.0 years

 

1.5-2.75 years

 

2.5-5 years

Schedule of the activity for stock options issued

    

    

Weighted

Average

Stock Options and Stock Appreciation Rights

Shares

Exercise Price

Outstanding at December 31, 2020

 

5,329,515

$

1.06

-Cancelled

 

(133,257)

$

2.02

-Exercised

 

(3,076,489)

$

1.16

 -Granted (1)

 

484,254

$

1.82

Outstanding at December 31, 2021

 

2,604,023

$

1.03

-Cancelled

 

(11,781)

$

3.75

-Exercised

 

(583,273)

$

1.15

 -Granted (2)

 

381,181

$

4.33

Outstanding at December 31, 2022

2,390,150

$

1.51

-Cancelled

(48,268)

$

5.67

-Exercised

(296,973)

$

2.68

 -Granted (3)

602,526

$

10.02

Outstanding at December 31, 2023

 

2,647,435

$

3.31

(1)Options to purchase 463,754 shares were granted in 2021, all of which were vested immediately in 2021. In addition, 20,500 stock appreciation rights were granted in December 2021 with a six- month vesting period.
(2)Options to purchase 381,181 shares were granted in 2022, of which options to purchase 40,588 shares vested immediately in 2022 and the remainder vested 50% immediately and 50% one year after the date of the grants.
(3)Options to purchase 584,826 shares were granted in 2023, of which options to purchase 337,727 shares vested immediately in 2023 and the remainder vested 50% immediately and 50% one year after the date of the grants. In addition, 17,700 stock appreciation rights were granted in January 2023 with a six- month vesting period.
Schedule of weighted average contractual life in years and the weighted average exercise price

The following is the weighted average contractual life in years and the weighted average exercise price at December 31, 2023 and 2022 of:

    

    

Weighted 

    

Average

Remaining

Weighted

Number of

Contractual

Average

December 31, 2023

Options

Life (Years)

Exercise Price

Options outstanding and vested

 

2,400,336

 

4.47

$

2.60

    

    

Weighted 

    

Average

Remaining

Weighted

Number of

Contractual

Average

December 31, 2022

Options

Life(Years)

Exercise Price

Options outstanding and vested

 

2,218,799

 

5.39

$

1.33

Schedule of intrinsic value

The intrinsic values of options vested and exercised during the years ended December 31, 2023, 2022 and 2021 were as follows:

    

2023

    

2022

    

2021

Intrinsic value of options vested

$

2,886,080

$

1,249,506

$

1,481,858

Intrinsic value of options exercised

$

2,565,056

$

4,051,422

$

7,088,578

XML 46 R32.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies (Details)
MT in Millions
1 Months Ended 12 Months Ended
Jul. 31, 2016
Dec. 31, 2023
USD ($)
segment
MT
shares
Dec. 31, 2022
USD ($)
shares
Dec. 31, 2021
USD ($)
shares
Jun. 30, 2022
USD ($)
Mar. 31, 2022
USD ($)
Significant accounting policies            
Number of reportable segments | segment   1        
Stepdown from baseline levels, final rule   10.00%        
Cumulative reduction in baseline, subsequent allowance   40.00%        
Allocation allowance received | MT   3        
Allocation allowance received as a percentage of total HFC consumption   1.00%        
Goodwill impairment loss   $ 0 $ 0 $ 0    
Cylinder deposit liability   17,200,000 13,600,000      
Contract term 5 years          
Management services revenue   $ 289,025,000 325,225,000 $ 192,748,000    
Renewal term 5 years          
Deferred tax assets, valuation allowance     $ 3,500,000   $ 11,600,000 $ 15,100,000
Effective tax rate   25.00% 11.00% 3.00%    
Options excluded from the calculation of diluted shares | shares   17,172 28,467 2,583,523    
Impairment of long lived assets   $ 2,120,000        
Management Service            
Significant accounting policies            
Management services revenue   2,400,000 $ 2,300,000 $ 2,200,000    
Federal            
Significant accounting policies            
Operating loss carryforwards   0 0      
Current year utilization comprise of deferred tax     $ 29,300,000      
State            
Significant accounting policies            
Operating loss carryforwards   $ 1,800,000        
Customer Concentration Risk | No Customer | Revenue from Contract with Customer            
Significant accounting policies            
Concentration risk percentage     10.00%      
Customer Concentration Risk | One Customer | Revenue from Contract with Customer            
Significant accounting policies            
Concentration risk percentage     10.00% 10.00%    
Customer Concentration Risk | One Customer | Revenue from Contract with Customer | Minimum            
Significant accounting policies            
Concentration risk percentage   10.00%        
Customer Concentration Risk | One Customer | Accounts Receivable            
Significant accounting policies            
Concentration risk percentage   10.00%   10.00%    
XML 47 R33.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies - Reconciliation of shares used to determine net income per share (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Summary of Significant Accounting Policies      
Net income $ 52,247 $ 103,801 $ 32,259
Weighted average number of shares - basic 45,385,433 44,990,104 43,765,443
Shares underlying options 1,952,798 2,118,914 2,875,379
Weighted average number of shares outstanding - diluted 47,338,231 47,109,018 46,640,822
XML 48 R34.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies - Summary of company's revenues (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Revenue reconciling item      
Total $ 289,025 $ 325,225 $ 192,748
Product and related sales      
Revenue reconciling item      
Total 281,954 319,019 187,799
RefrigerantSide Services      
Revenue reconciling item      
Total $ 7,071 $ 6,206 $ 4,949
XML 49 R35.htm IDEA: XBRL DOCUMENT v3.24.0.1
Trade accounts receivable - net - Changes in accounts receivable (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Trade accounts receivable - net    
Beginning Balance $ 20,872 $ 14,223
Increase (Decrease), Net 4,297 6,649
Ending Balance $ 25,169 $ 20,872
XML 50 R36.htm IDEA: XBRL DOCUMENT v3.24.0.1
Trade accounts receivable - net - Reserves for doubtful accounts (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Trade accounts receivable - net      
Beginning Balance $ 1,927 $ 1,584  
Net additions charged to Operations 659 474 $ 44
Deductions and Other (592) (131)  
Ending Balance $ 1,994 $ 1,927 $ 1,584
XML 51 R37.htm IDEA: XBRL DOCUMENT v3.24.0.1
Trade accounts receivable - net - Additional Information (Details) - USD ($)
$ in Millions
Dec. 31, 2023
Dec. 31, 2022
Trade accounts receivable - net    
Trade accounts receivable are net of reserves for doubtful accounts $ 2.0 $ 1.9
XML 52 R38.htm IDEA: XBRL DOCUMENT v3.24.0.1
Inventories (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Inventories    
Refrigerants and cylinders $ 159,654 $ 152,840
Less: net realizable value adjustments (5,204) (7,463)
Total $ 154,450 $ 145,377
XML 53 R39.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property, plant and equipment - Summary of elements of property, plant and equipment (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Property, plant and equipment    
Subtotal $ 59,084 $ 57,405
Less: Accumulated depreciation (39,709) (36,837)
Total 19,375 20,568
Land    
Property, plant and equipment    
Subtotal 1,255 1,255
Land improvements    
Property, plant and equipment    
Subtotal $ 319 319
Land improvements | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 6 years  
Land improvements | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 10 years  
Buildings    
Property, plant and equipment    
Subtotal $ 1,446 1,446
Buildings | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 25 years  
Buildings | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 39 years  
Building improvements    
Property, plant and equipment    
Subtotal $ 3,467 3,396
Building improvements | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 25 years  
Building improvements | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 39 years  
Cylinders    
Property, plant and equipment    
Subtotal $ 13,220 13,315
Cylinders | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 15 years  
Cylinders | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 30 years  
Equipment    
Property, plant and equipment    
Subtotal $ 29,397 27,258
Equipment | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 3 years  
Equipment | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 10 years  
Equipment under capital lease    
Property, plant and equipment    
Subtotal $ 315 315
Equipment under capital lease | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 5 years  
Equipment under capital lease | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 7 years  
Vehicles    
Property, plant and equipment    
Subtotal $ 1,790 1,773
Vehicles | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 3 years  
Vehicles | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 5 years  
Lab and computer equipment, software    
Property, plant and equipment    
Subtotal $ 3,233 3,103
Lab and computer equipment, software | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 2 years  
Lab and computer equipment, software | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 8 years  
Furniture & fixtures    
Property, plant and equipment    
Subtotal $ 933 840
Furniture & fixtures | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 5 years  
Furniture & fixtures | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 10 years  
Leasehold improvements    
Property, plant and equipment    
Subtotal $ 865 852
Leasehold improvements | Minimum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 3 years  
Leasehold improvements | Maximum    
Property, plant and equipment    
Property, plant and equipment, Estimated Lives 5 years  
Construction-in-progress    
Property, plant and equipment    
Subtotal $ 2,844 $ 3,533
XML 54 R40.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property, plant and equipment - Additional Information (Details) - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Property, plant and equipment      
Depreciation expense $ 3.0 $ 3.2 $ 3.4
Cost of sales      
Property, plant and equipment      
Depreciation expense $ 2.0 $ 2.0 $ 1.9
XML 55 R41.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Maturity of lease payments (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Leases    
2024 $ 1,914  
2025 1,663  
2026 1,500  
2027 1,043  
2028 656  
Thereafter 823  
Total undiscounted operating lease payments 7,599  
Less imputed interest (911)  
Present value of operating lease liabilities $ 6,688 $ 7,426
XML 56 R42.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Balance Sheet Classification and Other Information (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Balance Sheet Classification    
Current lease liabilities (recorded in Accrued expenses and other current liabilities) $ 1,898 $ 1,663
Current lease liabilities (recorded in Accrued expenses and other current liabilities) [Extensible Enumeration] Accrued expenses and other current liabilities Accrued expenses and other current liabilities
Long-term lease liabilities $ 4,790 $ 5,763
Total operating lease liabilities $ 6,688 $ 7,426
Other Information    
Weighted-average remaining term for operating leases 2 years 11 months 1 day 3 years 7 months 6 days
Weighted-average discount rate for operating leases 8.27% 8.21%
XML 57 R43.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Additional Information (Details) - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Leases      
Maximum lease agreement terms 11 years    
Operating lease expense $ 1.7 $ 2.6 $ 3.1
Selling, general and administrative expenses      
Leases      
Operating lease expense $ 1.7 $ 2.6 $ 3.1
XML 58 R44.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Supplemental cash flow and non-cash information related to leases (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Leases    
Operating cash flow from operating leases $ 1,782 $ 2,588
Right -of-use assets obtained in exchange for new operating lease liabilities $ 1,020 $ 2,659
XML 59 R45.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income taxes - Provision for income taxes (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Current:      
Federal $ 10,319 $ 11,995 $ 453
State and local 2,940 2,835 350
Total 13,259 14,830 803
Deferred:      
Federal 3,667 (323) 267
State and local 647 (1,126) 70
Total 4,314 (1,449) 337
Expense for income taxes $ 17,573 $ 13,381 $ 1,140
XML 60 R46.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income taxes - Reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Income tax rates      
- Statutory U.S. federal rate 21.00% 21.00% 21.00%
- State income taxes, net of federal benefit 4.00% 4.00% 0.00%
- Excess tax benefits related to stock compensation (1.00%) (1.00%) (4.00%)
- 162m limitation 1.00% 1.00%
- PPP Benefit 0.00% 0.00% (2.00%)
- Valuation allowance 0.00% 13.00% 12.00%
- Other true-up 0.00% (1.00%)
Total 25.00% 11.00% 3.00%
Domestic Tax Authority [Member]      
Income tax rates      
Operating loss carryforwards $ 0 $ 0  
State      
Income tax rates      
Operating loss carryforwards $ 1,800,000    
XML 61 R47.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income taxes - Deferred income tax assets (liabilities) (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Deferred income tax assets (liabilities)    
- Reserves for doubtful accounts $ 497 $ 500
- Inventory reserve 687 1,045
- Non qualified stock options 529 383
- Deferred interest   2,637
- Accrued expenses 82 107
Net deferred income tax assets 1,795 4,672
- Depreciation & amortization (6,353) (4,916)
Total deferred tax assets (6,353) (4,916)
Net deferred income tax liabilities $ (4,558) $ (244)
XML 62 R48.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and intangible assets - Company's other intangible assets (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Goodwill and intangible assets    
Gross Carrying Amount $ 32,997 $ 32,997
Accumulated Amortization 18,226 15,433
Net 14,771 17,564
Covenant not to compete    
Goodwill and intangible assets    
Gross Carrying Amount 870 870
Accumulated Amortization 798 710
Net $ 72 160
Covenant not to compete | Minimum    
Goodwill and intangible assets    
Amortization Period (in years) 6 years  
Covenant not to compete | Maximum    
Goodwill and intangible assets    
Amortization Period (in years) 10 years  
Customer relationships    
Goodwill and intangible assets    
Gross Carrying Amount $ 31,560 31,560
Accumulated Amortization 17,151 14,491
Net $ 14,409 17,069
Customer relationships | Minimum    
Goodwill and intangible assets    
Amortization Period (in years) 3 years  
Customer relationships | Maximum    
Goodwill and intangible assets    
Amortization Period (in years) 12 years  
Above market leases    
Goodwill and intangible assets    
Amortization Period (in years) 13 years  
Gross Carrying Amount $ 567 567
Accumulated Amortization 277 232
Net $ 290 $ 335
XML 63 R49.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and intangible assets - Additional Information (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Goodwill and intangible assets      
Goodwill impairment loss $ 0 $ 0 $ 0
Goodwill 47,803 47,803  
Amortization of intangible assets 2,793 $ 2,793 $ 2,793
2024 2,800    
2025 2,500    
2026 2,500    
2027 2,500    
2028 2,500    
Thereafter $ 1,900    
XML 64 R50.htm IDEA: XBRL DOCUMENT v3.24.0.1
Accrued expenses and other current liabilities (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Accrued expenses and other current liabilities    
Accrued expenses $ 12,256 $ 11,696
Cylinder deposits 17,225 13,638
Lease obligations $ 1,893 $ 1,669
Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Total Total
Other current liabilities $ 163 $ 905
Total $ 31,537 $ 27,908
XML 65 R51.htm IDEA: XBRL DOCUMENT v3.24.0.1
Short-term and Long-term debt (Details)
$ in Thousands
Dec. 31, 2022
USD ($)
Short-term debt:  
- Term loan facility - current $ 4,250
Subtotal 4,250
Long-term debt:  
- Term loan facility- net of current portion of long-term debt 27,563
- FILO term loan 15,000
- Less: deferred financing costs on term loan (3,578)
Subtotal 38,985
Total short-term & long-term debt $ 43,235
XML 66 R52.htm IDEA: XBRL DOCUMENT v3.24.0.1
Short-term and Long-term debt - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended 12 Months Ended
Mar. 02, 2022
Apr. 23, 2020
Sep. 30, 2023
Mar. 31, 2022
Sep. 30, 2021
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Short-term and Long-term debt                
Repayment of debt           $ 47,161 $ 148,054 $ 5,252
Amortization of deferred finance cost           $ 726 $ 1,086 1,125
Forgiveness of Payroll Protection Program loan               $ (2,475)
Paycheck Protection Program | CARES Act Loan                
Short-term and Long-term debt                
Unsecured loan   $ 2,475            
Forgiveness of Payroll Protection Program loan         $ 2,475      
Term of unforgiven loan   2 years            
Debt instrument interest at fixed rate   1.00%            
Deferral term of unforgiven loan   9 months            
Revolving credit facility Amendment                
Short-term and Long-term debt                
Debt instrument, basis spread on variable rate 1.00%              
Additional interest percentage 0.50%              
Revolving credit facility Amendment | SOFR                
Short-term and Long-term debt                
Additional interest percentage 1.00%              
Revolving credit facility Amendment | SOFR | FILO Tranche                
Short-term and Long-term debt                
Debt instrument, basis spread on variable rate 1.00%              
Additional interest percentage 0.50%              
Revolving credit facility Amendment | SOFR | SOFR FILO Tranche                
Short-term and Long-term debt                
Additional interest percentage 7.50%              
Revolving credit facility Amendment | Prime commercial lending rate of Wells Fargo                
Short-term and Long-term debt                
Additional interest percentage 1.75%              
Revolving credit facility Amendment | Prime commercial lending rate of Wells Fargo | FILO Tranche                
Short-term and Long-term debt                
Additional interest percentage 6.50%              
Revolving Credit Facility                
Short-term and Long-term debt                
Deferred financing costs $ 200              
Term Loan Facility                
Short-term and Long-term debt                
Debt instrument loan amount 85,000              
Payment of term loan deferred financing costs 4,300              
Prior Term Loan Facility                
Short-term and Long-term debt                
Deferred financing costs 1,300              
Principal balance of debt 63,900              
Payment of debt, cash flow amount 16,000              
Lender fees and expenses on debt $ 3,300              
Credit facility, interest expense       $ 4,600        
Minimum | Revolving credit facility Amendment | SOFR                
Short-term and Long-term debt                
Additional interest percentage 2.36%              
Minimum | Revolving credit facility Amendment | Prime commercial lending rate of Wells Fargo                
Short-term and Long-term debt                
Additional interest percentage 1.25%              
Maximum | Revolving credit facility Amendment | SOFR                
Short-term and Long-term debt                
Additional interest percentage 2.86%              
Term Loan                
Short-term and Long-term debt                
Repayment of debt     $ 3,400          
Amortization of deferred finance cost     3,100          
Other expense and fees     300          
Term Loan | FILO Tranche                
Short-term and Long-term debt                
Repayment of debt     $ 32,500          
Wells Fargo                
Short-term and Long-term debt                
Amount outstanding, letter of credit $ 900              
Minimum liquidity requirement 5,000              
Deferred financing costs $ 900              
Line of credit facility term 5 years              
Wells Fargo | FILO Tranche                
Short-term and Long-term debt                
Amount borrowed $ 15,000              
Wells Fargo | FCCR                
Short-term and Long-term debt                
Minimum aggregate undrawn loan availability $ 11,250              
Period for FCCR covenant 12 months              
Wells Fargo | Revolving credit facility Amendment                
Short-term and Long-term debt                
Amount borrowed $ 75,000              
Wells Fargo | Amended and restated revolving credit and security agreement                
Short-term and Long-term debt                
Maximum borrowing capacity 75,000              
Wells Fargo | Swing line loan                
Short-term and Long-term debt                
Maximum borrowing capacity 9,000              
Wells Fargo | Letter of credit                
Short-term and Long-term debt                
Maximum borrowing capacity $ 2,000              
Wells Fargo | Revolving Credit Facility | FCCR                
Short-term and Long-term debt                
Period for FCCR covenant 2 months              
Wells Fargo | Minimum | FCCR                
Short-term and Long-term debt                
Fixed charges coverage ratio 1.00              
Wells Fargo | Minimum | Revolving credit facility Amendment                
Short-term and Long-term debt                
Additional interest percentage 0.35%              
Wells Fargo | Maximum                
Short-term and Long-term debt                
Minimum amount to be derived from availability $ 3,000              
Wells Fargo | Maximum | FCCR                
Short-term and Long-term debt                
Fixed charges coverage ratio 1.00              
Wells Fargo | Maximum | Revolving credit facility Amendment                
Short-term and Long-term debt                
Additional interest percentage 0.75%              
XML 67 R53.htm IDEA: XBRL DOCUMENT v3.24.0.1
Commitments and contingencies - Non-cancelable operating leases (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Commitments and contingencies      
Annual Rent $ 1,700,000 $ 2,600,000 $ 3,100,000
Baton Rouge Louisiana      
Commitments and contingencies      
Lease Expiration Date May 01, 2024    
Annual Rent $ 30,000    
Champaign, Illinois      
Commitments and contingencies      
Lease Expiration Date Dec. 01, 2024    
Annual Rent $ 609,000    
Champaign, Illinois (2nd location)      
Commitments and contingencies      
Lease Expiration Date Sep. 01, 2026    
Annual Rent $ 349,000    
Charlotte, North Carolina      
Commitments and contingencies      
Lease Expiration Date May 01, 2025    
Annual Rent $ 38,000    
Escondido,California      
Commitments and contingencies      
Lease Expiration Date Jun. 01, 2027    
Annual Rent $ 238,000    
Long Beach California      
Commitments and contingencies      
Lease Expiration Date Feb. 01, 2024    
Annual Rent $ 28,800    
Ontario, California      
Commitments and contingencies      
Lease Expiration Date Dec. 01, 2024    
Annual Rent $ 174,000    
Riverside, California      
Commitments and contingencies      
Lease expiration period description Month to Month    
Annual Rent $ 27,000    
Rantoul, Illinois      
Commitments and contingencies      
Lease expiration period description Month to Month    
Annual Rent $ 36,000    
Smyrna, Georgia      
Commitments and contingencies      
Lease Expiration Date Jul. 01, 2030    
Annual Rent $ 492,000    
Stony Point, New York      
Commitments and contingencies      
Lease Expiration Date Jun. 01, 2023    
Annual Rent $ 118,000    
Woodcliff Lake, New Jersey      
Commitments and contingencies      
Lease Expiration Date Aug. 01, 2027    
Annual Rent $ 236,000    
XML 68 R54.htm IDEA: XBRL DOCUMENT v3.24.0.1
Commitments and contingencies (Details) - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Commitments and contingencies      
Operating lease expense $ 1.7 $ 2.6 $ 3.1
XML 69 R55.htm IDEA: XBRL DOCUMENT v3.24.0.1
Share-based compensation (Details) - USD ($)
1 Months Ended 12 Months Ended
Jan. 31, 2023
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Jun. 11, 2020
Jun. 07, 2018
Sep. 17, 2014
Share-based compensation              
Share based compensation expense   $ 2,300,000 $ 900,000 $ 500,000      
Common stock reserved for issuance   4,341,463          
Stock option vesting period   1 year 1 year 6 months      
Unrecognized share based compensation expense related to non-vested options   $ 900,000          
Option to purchase granted     381,181        
Intrinsic value of options outstanding   26,900,000 $ 20,600,000        
Intrinsic value of options unvested   800,000 1,100,000        
Intrinsic value of options exercised   $ 2,565,056 $ 4,051,422 $ 7,088,578      
Share-based compensation arrangement by share based payment award percentage of fair market Person holding more then 10% voting stock   110.00%          
Stock Option Plan              
Share-based compensation              
Stock option vesting period   2 years          
Stock option vesting, percentage   50.00% 50.00%        
Option to purchase granted   584,826   463,754      
Options vested   337,727 40,588 20,500      
Minimum              
Share-based compensation              
Expected lives   1 year 6 months 1 year 6 months 2 years 6 months      
Minimum | Stock Option Plan              
Share-based compensation              
Expected lives   3 years          
Maximum              
Share-based compensation              
Expected lives   2 years 9 months 5 years 5 years      
Maximum | Stock Option Plan              
Share-based compensation              
Expected lives   10 years          
2014 Stock Incentive Plan              
Share-based compensation              
Common stock reserved for issuance             3,000,000
2018 Stock Incentive Plan              
Share-based compensation              
Common stock reserved for issuance           4,000,000  
2020 Stock Incentive Plan              
Share-based compensation              
Common stock reserved for issuance         3,000,000    
Stock Option Plan              
Share-based compensation              
Options granted   602,526 381,181 484,254      
Stock Appreciation Rights (SARs)              
Share-based compensation              
Stock option vesting period 6 months            
Option to purchase granted 17,700            
XML 70 R56.htm IDEA: XBRL DOCUMENT v3.24.0.1
Share-Based Compensation - Weighted Average Assumptions Used in Determining Fair Value of Share Based Awards at Grant Date by Using Black-Scholes Option Pricing Model (Details)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Share-based compensation      
Dividend yield 0.00% 0.00% 0.00%
Minimum      
Share-based compensation      
Dividend yield     0.29%
Risk free interest rate 3.69% 1.84%  
Expected volatility 71.73% 91.00% 90.00%
Expected lives 1 year 6 months 1 year 6 months 2 years 6 months
Maximum      
Share-based compensation      
Dividend yield     0.85%
Risk free interest rate 4.89% 4.27%  
Expected volatility 94.00% 94.00% 101.00%
Expected lives 2 years 9 months 5 years 5 years
XML 71 R57.htm IDEA: XBRL DOCUMENT v3.24.0.1
Share-based compensation - Summary of the activity for stock options issued under the Company's Plans (Details) - Stock Option Plan - $ / shares
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Shares      
Outstanding at beginning of period 2,390,150 2,604,023 5,329,515
-Cancelled (48,268) (11,781) (133,257)
-Exercised (296,973) (583,273) (3,076,489)
-Granted 602,526 381,181 484,254
Outstanding at end of period 2,647,435 2,390,150 2,604,023
Weighted Average Exercise Price      
Outstanding at beginning of period $ 1.51 $ 1.03 $ 1.06
-Cancelled 5.67 3.75 2.02
-Exercised 2.68 1.15 1.16
-Granted 10.02 4.33 1.82
Outstanding at end of period $ 3.31 $ 1.51 $ 1.03
XML 72 R58.htm IDEA: XBRL DOCUMENT v3.24.0.1
Share-based compensation - Weighted average contractual life in years and the weighted average exercise price (Details) - $ / shares
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Number of Options    
Options outstanding and vested 2,400,336 2,218,799
Weighted Average Remaining Contractual Life    
Options outstanding and vested 4 years 5 months 19 days 5 years 4 months 20 days
Weighted Average Exercise Price    
Options outstanding and vested $ 2.60 $ 1.33
XML 73 R59.htm IDEA: XBRL DOCUMENT v3.24.0.1
Share-Based Compensation - Intrinsic Value (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Share-based compensation      
Intrinsic value of options vested $ 2,886,080 $ 1,249,506 $ 1,481,858
Intrinsic value of options exercised $ 2,565,056 $ 4,051,422 $ 7,088,578
XML 74 R60.htm IDEA: XBRL DOCUMENT v3.24.0.1
Retirement benefits plan (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Retirement benefits plan      
Matching contributions $ 561,852 $ 472,002 $ 281,586
XML 75 R61.htm IDEA: XBRL DOCUMENT v3.24.0.1
Pay vs Performance Disclosure - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Pay vs Performance Disclosure      
Net Income (Loss) $ 52,247 $ 103,801 $ 32,259
XML 76 R62.htm IDEA: XBRL DOCUMENT v3.24.0.1
Insider Trading Arrangements
3 Months Ended
Dec. 31, 2023
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
EXCEL 78 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( !>(;E@'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " 7B&Y8WV\UY>X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>R$[*&";-I:.G#@8K;.QF;+4UBQ-C:R1]^SE>FS*V!]C1TN]/ MGT"-]E(/ 9_#X#&0Q7@WN:Z/4OLU.Q%Y"1#U"9V*94KTJ7D8@E.4GN$(7ND/ M=42H.+\'AZ2,(@4SL/ +D;6-T5('5#2$"][H!>\_0Y=A1@-VZ+"G"*(4P-IY MHC]/70,WP PC#"Y^%] LQ%S]$YL[P"[)*=HE-8YC.=8YEW80\/:T>\GK%K:/ MI'J-Z5>TDLX>U^PZ^;7>/.ZWK*UXM2IX78C5OA*2621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M !>(;EBR>_ JL < #,S 8 >&PO=V]R:W-H965T&UL MM9O_ZXS5NG6W:[UJ=V?OYGY((2I3(%X(_?+? M7P UI1=>8";VARK*^P ?27B>$,Z?*7N,UX1P]!(&47S16G.^^=SIQ.Z:A#@^ MIAL2B6^6E(68BT6VZL0;1K"7%85!QS*,7B?$?M3JGV>?S5C_G"8\\",R8RA. MPA"SUTL2T.>+EMG:?7#GK]8\_:#3/]_@%9D3?K^9,;'4V:MX?DBBV*<18F1Y MT1J8GT=.5I"M\<,GS_&;]R@]E =*'].%B7?1,M(](@%Q>2J!QMTQ;RR!(G ;^CS]=D>T#= M5,^E09S]1\_YNEV[A=PDYC3<%HL]"/TH?\4O6Q!O"FRCI,#:%ECO"DRGI,#> M%MAU"YQM@9.1R0\EXS#"'/?/&7U&+%U;J*5O,IA9M3A\/TI_]SEGXEM?U/'^ MB+J)^!DYPI&'KB+N\UH[/L<;[)*+EFC_ M,6%/I-7__3>S9_RA J53;*1)K #1V4-T('4)[Y=.OQ&411@@-T1S:4<14H6(>S1(5W"%8U!:5)K "JMP?5JWDB,2RN M:EGG5PX+UEKB(%;2 LN:TM(D5J!ULJ=U4H_6C#"?IE<.#XGKC[(%5BCM^O32 M3AVL;PI-DU@!VND>VBEXJ-M^?NP'!$V3\($P%2Y8PVR;MF-:*DY@85-.FL0* MG,[VG,[J<+HC*S_FHC5R-,6A\M2"=:[O1_/;*5I<#:^GMS>W7R97**?\Y>^FQOB\H9;(6G:;;OGF%W[3$D/ M+&Y,3Y-:D9XEZ5EUZ T\3ZC'1[LWZ$:LAVXC]3D'2]J&@1:^2] E30+RA)FG MI B*-*:H2:U(4<8#$S3.,,7%,U52A"7GB2]Z .O,4,+3&@ITJ17AR5A@PL;^ M/;QANB2ZO@5]5J:K"KF?E'INX"^7Z 8_*JT=+-"8WB$R@RE#@PF[_??T]E>. M&:-/?N2J6S"L.?VJQ*8U0.A2*V*3$<*$??][;#,:FA0N3$[K9[AJ'N_[4&"%UJ15HR0IBP]U_X7*0LND2F]?'A$YH3-V'B M+%,B@Y6&- R%[XLY=1^/T ?CV##1!C/TA /UD BLUYCC(9*$)9.$!7O]!<.> M'ZW0_#5\H($*7X7 ]6@^50[5:HT+NM2*E&1)NFNKT)RJ M#/$0+FJ,[1")P)*)P*J5"'[00.1WS/*A)!8K8<%*);"T)@!=:D58,@%8M1+ M,&$L':C,QW*SKDR8V40-#5;\15150[BJ,;5#.']+.G^KEO.?1)RP_)YL.JZ+ M=QB5U&#%,FI:C;\NM2(U:?RM6L8_:XYH*++2BC*EUZC0&;@N$1)"P,O%E.2T M6G]=:D5RTOI;L'/?DIN'. C091*+KV-UVX1U2F^YP'6-:1TB U@R UBU[B!< MA82MTJ[LBU#@:Y&:P@V.U"<<+%B.36L8T*56Q";#@ 5;^,EP?(<&B>=SRM" M3:8.P[P2DD-UBN[&0J7-89V".=O2^=OP\9]?XMO[$ZGS!?"\<+-=<* MF7)86M.!+K4B+)D.[%KI8)8\!+XKVBC%2M\!JS2>$:,U*&S5NIE:.O?NJ>^8 M)Z;IG)TYYYTG%9XWTX9JI8#MN,0\'Y>8K['8+72;<-&W16ED5R+3.XDH5^N] M/5]64F'7R%0WNZT>G]=:D5,TOO; ML%/?72'+QBXJRB]'M^A^/CA"L^/AL1*65LNO2ZT(2UI^N\*J;V&-?1:BR4C) M"U:P'.5T%[BJ,:5#V'M;VGL;MN4[2NG@=>G$1EA"F(YP2=7W>^'2QJP.8>YM M:>[M6N9^*/HI)LS6)/+("_I&U#X!EC+$G^B%N]:IDII6;Z]+K4A->GN[8GA^ M.[XS]N/T_L@O@ADX&ZU"KMTVK;9M*K%I=?>ZU(JS9J6[=VJ[>\EM+#Y4AN\* ML;*9>W!9XVFTA[#PCK3P#NR]WQ/;SGPL9P;+C963J."BQL2T^OC.FZ<,T@&( M[&F-&+GI9++\@8/]I_LG0@;9( M;EA+1-\-B 8 #H; 8 >&PO=V]R:W-H965T&ULM5EM M;]LV$/XKA!=L*^#&(O6>)@929R\%.BQHVNTS(]&Q4$ET2JK.7%9*74^FPVD]F*552>\C6KXC(_-[]=B_DY;U19U.Q:(-E4%16/;UG) M[R\F>/+TPX?B;J7T#[/Y^9K>L1NF/JVO!=S-=E;RHF*U+'B-!%M>3"[QV<(G M6L%(_%.P>[EWC;0KMYQ_UC?O\HN)IQ&QDF5*FZ#P9\,6K"RU)<#QI34ZV:VI M%?>OGZS_;IP'9VZI9 M>_EOD:G4Q228H9TO:E.H#O_^3M0Z%VE[&2VG^1_>M MK#=!62,5KUIE0% 5]?8O?6@#L:> @P$%TBJ0YRKXK8)O'-TB,VY=447GYX+? M(Z&EP9J^,+$QVN!-4>MMO%$"GA:@I^8+7DM>%CE5+$=O:4GKC*$;;4ZBU^C3 MS17Z]>05.D%%C3ZN>"-IGJ+ MYZN30_49^+MSFNR<)L:>/^1T(P2K%:)2@I]G+G^V!@*W 7VVSN2:9NQB H=' M,K%AD_G//^'(>^/R[@<9._#5W_GJCUF?+ZA<(=@UE.D+]J4I-K0$YYV[N#45 M&E.Z &SFF 1!=#[;[+MC2X4D#7="!S"#'Q99W<9"2GG>V4$B2U!W_9(N^(CAU'1^J[0=6R;"8[8THH+57P=C&V[ MQ&&=B&/<=\$A%H=1,.!"QY5XE)[FIK-#?(D:V3KA!$FLU:,PM3#:4K'O#QPX MW%$<'N>XOTU-&#YJK?K^LC[VXSXX6XKX230 KB,V?(393#VX' ;G8*@TBN)^ MK7+)Q21(AW*TXS(W[U63%1 ?;?NBC=J]L7'P>;&@.QUC(=S3D>-9)P:#YN1(XE";!(, MDS#L%W&7&(G(0*$D'5>2<:Z\8DL&.'/3NCY!?70"M:DN",-^Z^J0@F%F .7> MZ#A.A^]WB5$R"HQX+*8VXP5PJOI0;:DPC@92FW2\2,9Y\?U!$K>M1V;E^U1/ M6#KI\Z<=6!8UK;.BOD,9EV[:&E_ZQ1.R@Z&3-!FHGJ0C7_(<\GU_9(]L9HWB MQ*KP#K$TCO! @20=_Y+Q87+!JZI0NO'>%O>,UPI"SV #!O!^ W4B9]2_W]"A MSQW]DFBTY[A1//N\XF7.A/S%3![JT?T>Y@<-H*W#_\W_ M%,D5%9K2&[7BHO@*#\*IYWGZWQFZ8?K] KI$"UYO8%@S4\2Z;^+$._4PD*M M&UHV#/UZ@CT/JA*$-#F?J)9Y[!+4GB:813!-;6S+R\+MWD9K;F U,4?H+> MF(H:HNY^I6EW*QA[A/3;7X=<&*?)0 ?F=UV-/][5;!GHL-[]9NJ=$ZVC9X'$ MB?OO*QQR. Z2>( P_:Z]\U]V-!?E?ZB MXJZH)30R2U#T3F.P(+8?:K8WBJ_-MXY;KA2OS.6*P:0GM \7W*NGF[TYY/= MY[+Y?U!+ P04 " 7B&Y86I+B#BD# H# & 'AL+W=O0"X=)!I)9JVAXFH;)NSVYR M(%:=.+4=Z/;I9SMI2$H(('4\@)V<\_?O'%^.F6X9?Q(Q@$0O"4W%S(JES*YM M6X0Q)%CT6 :I>K-B/,%2=?G:%AD''!FGA-J>XPSM!)/4"J;FV8('4Y9+2E)8 M<"3R),'\SRU0MIU9KO7ZX)ZL8ZD?V,$TPVM8@GS(%ESU[$HE(@FD@K 4<5C- MK!OW>N[VM8.Q^$5@*VIMI$-Y9.Q)=[Y',\O11$ AE%H"JY\-S(%2K:0XGDM1 MJQI3.];;K^I?3? JF$&:-+13!"N=4WK/M-R@#\K5>R*@PWVA; MV XG%@IS(5E2.BN"A*3%+WXI$U%S< <''+S2P3O5H5\ZF,S9!9D)ZPY+'$PY MVR*NK96:;IC<&&\5#4GU-"XE5V^)\I/!G*6"41)A"1&ZQ12G(:"EEA/H/D+T1MK(7@L(;A M.N7G#? IE@WJ044].(.:")&WHP[V :^K];&^"UIFZ$W'@W=23NH7X'Z9X"J M\TY(M;1)NFZC]4^E;3/LHAU6M,-.VH4ZZX!SM64-I\W0"7Y)$"VD6R/#1KG:KGSMH[B342,*D2,#EOUCI/U*"7/N:Z'^I*1F9>@:^)!]E+?;QZ>;]B/O:[7;_0];HQ1MG/9^ MR]8X;M?$WE5;M[O<[F$?K@NE4IUA#[/+I$FXJ[5N=['=(SQ2$-S] KJ'V652 M8-JU:YR^0__ ?$U2@2BLE(_3&ZGEPXMK:=&1+#,WNTN#=3[ M%6/RM:,OB]6?@^ ?4$L#!!0 ( !>(;EBSDBFZ,P4 (,6 8 >&PO M=V]R:W-H965T&ULK5C;DN(V$/T5E;.5VJW:P9;DZP2HFL&Y MS,,F4S.[V69(6 MUGQ:/WLLYU.^EUE:L,<2B7V>)^7?]RSCQYF%K=.#IW2SE=4#>S[=)1OVS.27 MW6,)=W;G997FK! I+U#)UC/K#M_&A%0&->+/E!W%V36JJ+QP_JVZ>5C-+*>: M$R%YWAK##/*T:'Z3US809P9X MS("T!D0U<$<,:&M WVK@M@9N'9F&2AV'.)')?%KR(RHK-'BK+NI@UM9 /RVJ MO#_+$OY-P4[.%[P0/$M7B60K]% L><[0LX0[R*T4Z 9]>8[1^W.7"7K8#W3<#D9&!,$&?>"&W OU@H!,;U^,>.E8E,BPUBK[#)"B9N=4R":R[" M:SJ+K^3L(GAA%[S0F/]GV,Q?J9!56 ],%\QPD$CJ M>*Y2LHLABH1>A)6BT*!\S_?U11%UO"(CK[N/\/W,)R>"#TM9NY\XP&_!1FZ4.ANE9 VGX:& DHEXTPNA, MOF CHWZ9IO6>J66"APTBQ(%:5QH8IM"5(I7*$.<2*-01*J2G0LP=1VY9B=ZW M.?G0$M)VG=;3E=K.5;W%U_)V&<5>1F&CNI@_%)*!7WFJ;6WXZ""#(?4&]3!$ M89>20"T'#0S38*33X%['8+.0:Z_&I@V@3KW$7.6()[C83-(JD5^2\,WMY9FV@DD]>1=CQ4 M.7X4$D<2 $-8X8"C8CU G6GU,$H#=6M M7@?#[EBU]1H&FT7,[TR:EE\XD/_PCN"J$E8#PPX-G0&'(8["*\=8/GK!@LV* MI2>!8*=$<)'S HEM B5W@^X3D2ZU[!JOP?FT)WBP]P]19$('U(8H9Q*,R'/2 M:QEBUC)F9G&:[:5ZS-">*C@Z;@HU#8A,U$6D 3D3/XPN/B,\>X5#S KG:WUT MQ4 _'T#J;!@J]OD+$*[>$2NR O&]%!(4=J6"##DE&MWBT=!SJ;KN=$@WBASL MJ+).AX2]SW/=$:U*>CE$C$+ANWF;,DZ&LPR@D1"U5A=:)': >J@RUR#AI=,) M"5&8VV>GR.>WJGG8GJ7?U^:'R_![?QLUY:.^F.9[]E)2; MM! H8VMP":L+^DC9G'@V-Y+OZC/ %RXES^O++4M6K*P \/^:Y-2J;V7+1O7?3+A=D MSZJRP3>M0_=UC=KO[W%%'J]G8/;CC4_E_9:)-]SE8H?N\2UF7W8W+;]R>Y2B MK'%#2](X+=Y>2(C7.&<"0C$ M_SW@%:XJ@<3S^'8$G?4QA>/IZQ_H'[K%\\7<(8I7I/JW+-CV>I;,G )OT+YB MG\CCG_BXH%#@Y:2BW5_G\6 ;^S,GWU-&ZJ,SSZ NF\-_]'0DXL0!G'. 1PFU)X=.B6[A[6WA&W1@PM%RUY=%IAS='$BX[] MSIOS53:B46Y9RS\MN1];KDA#2546B.'"N67\'^\"1AVRX5^4 M+HK&>V7V?E<4I>@T5#DWJ"SF/)<5VI4,51JLM1GK$V9\1_'U9ZAMRN:>.J_? MY?F^WE<=*VN\*?.2O=$ 9V;@ST3)Q^7UZ8L$^R+!#B5:C)L8,83R9_ MZ_C@=P=ZT-.1?D *.R1Q2CPL ]]?N ^GU*HV "0P2L=F:]5L'B=>XHW-,DU$ M+X*PMQHMV>^7[#]KR:]Y8>D6M9B^>=;R#ZC1>/E!G"2QQ($QO#B>K^@.Y?AZ MQL]?BML'/%O^^@N(O#]T_643++,$-J(]Z&D/C+1_I'3?\<[W?W[8H%1L4&>_ MXR_Q$V[SDG:?'MXF.[$)M;L_4)LLD&H0*,4"C)N<,- M/[_Y'6W3DGI:!QMC3*1C%2D%G<,H#*5NMQDRNQ1R1&W<4QO_7+_SH=41*96< M>AV;L7H>2+UL##RUEVV"9;&Z&_4L)CV+R?]G\=(9D:A902^43PAC(E-9M0F6 M60(;%2#M"Y :"W K:)T+B5&( G#=19$X"'0\&Y&FG@.I4K002!MA;3-@9@XX M(@]X@VKPC/3]S25LV7#BL';P-SI/9S*\F9')&@H)!#($744.7[MM E2$A2.- OG.;LYO:I\J6(U9G8IYIC>03X!LWZR,IX"57\D:: <%C8ES]HJ M6F8+;5R%06D!L]2:,J.:H2:WLBIX4JA,%%8EUH608PH'F07,.NO"G&I3SJRL MHJV!1MUY?N(I\]I%NS%U@T "9H5T9E*%6B)3=5(-Y6^=@:I$^*0:!$I?:11+ MG"I?.^O@XB")SWR_ 0=M \W:YAF3JI8$J$J&((1)' 'YQFY.8&JG6$7+;*&- MR1_T$33K(XN3*E3E$Y0+H8H=7QY4S0E/IE<3\D$0 M\'Z66;0JO*RB9;;0QI49A!JS2S''] X" M#9H%VI0)R0PUF43-3TF^%\DD6M53)O5WZN@JGY" M" /I!,\NFHV)&U02-*ND,Q.2KZ4QTDQ(LA;2& &0>*G\_;#6CD\ERL)5.\@' MDM@_L_)!F4"S,GG&B*1G01WR.0O<6)[N5N8$)C>*5:EB"^U OGOR\(YX-NLO MU-Z7_.9 6_;(4LF8*OJ#Y*SK!E4%BOB>>&J9'FU MN+UNKCW*VVMQ5$5>\4>)ZF-9,OEVSPOQO$K\9T"#^S/E+??89:2H;(;[I+U^RFX6G M9\0+GBIM@L&_9_[ BT);@GG\U1E=G.ZI!YY_?K?^2T,>R&Q8S1]$\>\\4_N; M1;Q &=^R8Z&^BI=_\HY0H.VEHJB;O^BEPWH+E!YK) ?G2 WPWP&\^T5!H_)$RQVVLI7I#4:+"F/S3.;$8# M_;S2Z_ZD)/R:PSAU^R"J6A1YQA3/T)."?["HJD9BBQY8O4>_0:(G^>$K0 MCS_\A'Y >85^WXMCS:JLOEXIF(.VM$J[^]VW]R,3]\,$_2HJM:_1SU7&LZ&! M%4S^Q("\,[@G3HL)3S\CBC\AXA%JF=##QX<3R_#DX\.Q@PT]K0=M[-&I]=!. MWS9.WTI1(DAPR51>[=H,R57.ZRN;VUNSOMVLKAY7]8&E_&8!Y:'F\IDO;O_^ M-QQZ_["Y;$YCR4S&!N[T3^[T7=9O?X/*F5>I*+G-9^W8H!FK"^3S;4"('UVO MGL^=8:*P1V,/#V&)":.$!.L3:C#_X#3_P!D.=]E_H :T*:D$%-I45&E><%2= MB.GKJ8Z:@Q3/.>04VKRA'X\U?,BKGSX>0,&< 32GL60F8X,%"$\+$#H#*.%@ M-,V9WJ1L7FM'AV>K3M;Q>A1!)HCBV!_%CP5$X\@>/M%I]I%S]G>ED"K_;S-[ M7=+S2K%JEV\@@%A=]-&)G,C9PT/KDH+7302"'=N"0BM?-+O[(WJ0H M"O0HA>JT%GS<25:"\Y@UIIWV+ZT$!_:(PEZO@3RGR_XE7KC4 MSDI%#6$EF^H**KJ U-&Y\LR*(X?D :\J(=\0.U5EJP#R++,\WPE:QUA@.*:C MS2>Q&HN]<(+RF>S#[LI0@,9@5DXEC9TZBS>#Z5T&1E M@OQH7.IL('^"$>D9D8MJ'8A_+B44AFU>-43UXEIY$6,V$0G'O$P0]N)P3,R" MPF0J/GM-B)T:">)3YW*%^*O>R(]YO7^O?QG?V#E1UH4-[K8;=8NUWR3)^ MJL!:Z_/\6>\_5C^:VFKIKP,CPRVP").Q4+-:\\.I<.^U&OZ.6.NV3(@&*PE3 MF2W#V QS"RR@7N2-65AP?AA'\02-7E%AMZ1ZE!Q$9]8$N%![T K38A-;- JH M?3+F9,)P-$8E-F,#[3KLF/2"AWQ'\' HITALBGS7U%(K$[>-2U.56.3.6.Q8 M,!.R@/1"A[B%SI?ND,Q>^7E.K0[L;2JWB"E/E@&)QKEE@X5T')065!A-L>K% M#OF.V'FO$AV-)C2A=,@C["W=OF)?5%.AK/T@&%,S47XPUD2)!85#.I5NI)<[ MQ"UW'B[K9EAIFLHFB .CM6.!A23&8P5D@2TQ(5-$>VE#_(N:??J$47^D5T.< MDNGBU)S36C*7M:%/>X5%W KK+LORIJ3IOA@$$02,>ON$#@6KU*OM(3CC5U<4Y,:>U9"YK0Y_V,HRX99CN@D,JI)QG[Y6F MKH_Z4%RW78^RA--EK43ZK?7U/="M,'K@VO^#97G0_>67Z,I$6)A>NQ4K6AUJ&1.C95%P83 M;0+:JSKJ5G6/[*WO"PR:'SI]IMH?;J,7/SFR]*OB (^7>JZ;#CW5BT+J%H7W M0L(8[16]]GLAU5)Q63;M%+34[3^KIYQ&+_;4G-82:LI,3#UOXJ1 >Z%)W4+S M<5 VFG;[R5-6'SG-7>PC6]?-.Z?5L9_IKD,GG3VS=0O6KW \?#M_)+%T^\@B M)_T(AZ,GB@\V'/9C+QCW4VW @ 03>S'M]2EUM]Z:O;@7W^>2W+8M6[F:;33@ M&N-Q3\Z&"R(:C#L5%EQ UA/G*=JK1NI6C7!*E,V9&/14\S!5;X/-!ZT6GUG! M)YKBU%1X$0Z,E311./8,;B:*X*G&..W%(OV 6+3Q04S!EKC+JZJKA*"5?&2=#L@&'B^T:8FC#3 M#XD%-?##D&$OXVCLE,9/Q\.A:-[/807*\CHM1'V4C7Y)WU4S!'#[,A@(&?M[ M(G,^Z'R8U5HRE[6A?WNE2-U*L>T[Z$9?=I0Z)=IP:9Z0Y164=#ZAH$P]YY\_ ME>Q<9>GXX<@SLL,"\W PT:[W>W'HN\5A3ZZETW?%K&_&V!Y.!G2<#AUL\&Y, MX(?C[=D&F^J>^+V(\]TB[K$[W \/]9I:<FD6S&6M=>OJ[-W DLM=\XYEC9KV8?N2W>GJZ3W.N^;MQ='U M>WR5M&]C]F;:ET-_91(VD1H5? LFO<\1>$NV[UNV7Y0X-&\@;H12HFP^[CG+ MN-0 ^'TKA'K_HF]P>NOU]G]02P,$% @ %XAN6!(LH>8C*0 *(0 !@ M !X;"]W;W)KK?L*I 6*O7M!WG]I7+YJ^J\K:?&H3VZ_76;M];:KF_N71 M[$B_^%PN5QU^\?35BTVV-#>F^V7SJ85/3]TL1;DVM2V;.FG-XN71U>R'UZ'ETC "9RN0=SI#!_^[,M:DJG C ^+?,>>26 MQ ?#OW7V=[1WV,MM9LUU4_U:%MWJY='%45*81=97W>?F_D>YC+W:YY[OF?NV3SYT-3=RB9OZ\(4\01/ 5 ' M[5RA?3T_..,;DT^3DUF:S(_G)P?F.W&[/Z'Y3OZ4W?/I/56_GQ29J4==ZTFZ;-.E,D/9 1#Z^R>XM@_0S7_E]P[1-8\A]9W2.T,Z"/ MV>4E_%O:)$/.T99+TR+D> IE#N#FO$ZR:9N[LL"=E'7=W&7((A+;5#VR#)MT M#3R>]VV+(V#L;676%FYHMRIK@L--3BRFK NXL>UVJEA899:6,'4*0ZLR@PGP MBV6;P3S=*NN2-7)>ONBPMQ#8VIC")KM$V:X"E[,JL2FP&OP&FPIF7&2[>-OURA?L#^-HM IA7V9IWDM4%?.ZM29.- MR0"]&]HC8L&T) KJG*8U_^[+#<+C)C2U:9?;Q"P62!EUOJ7)#.QNR9_*%M!? M%R4NA#/R6B$>[=9V9@U?;F!PBJ>P@$U6T1Z*TFX:V!P]GF?M+3R7MP:F3;HV M0VQ-DR]P0@%%S>=I94= M164MGFP)]Z6$@P',%7 $2&>P\1P/8KCO5,D%?X0Y81)["!UPC? GN!!57Y@( M%_R]FPR/%X_=IM$H.#,0LW16P3T@%#!Y*_!$+9X68N+A;7_V7]R4A0&V=G[Z M/+G1:85( = X9DC;X="6W9F^M DP?$(011 JT#Y( 89,KJ>:R#?9-W R+X% M;]#;07 M&]&A4#!B&=@2SH:<0&]?"5#61XPT=XL\XZ37ZI*^3? M"!,BS7SK $=PNP%1C,O[$MD!D()IX2(;0ME>UITF8]S>?7MOAM_T=OA-T[?N M*Y 2MER75=8B4FH0/Y8A02#VBQRZ&( 1AP3X:0H_P23 6XBKXPZR7.0!?H%D M!U*M((F#?*>FZPN,MJ/+X^XA/=86Q E1)(1R\::#,5E;('X+DIMTPBH"KVZN M5<0E%V=GD]FQ;OH&( 6L([&]OV/I@Y_&]IC;WN]^VG*[??TMH>(02X6GA(.'L/Q)? E03V6]J5'LP"Y*1!M1Z/&>B\R1%R M_.,^(Q($+I, ",NRUDNHT@N/L5]O]&*MMD7;+*J^ 4;+=RSB:4XW>7=M':2$ M(93^L+U*Q7"TO"(5U-$+OJ2P4U0[X-)LD'VA,%F(BI,5P(> 3?G;CM_"BLD& M#@].!2XL2$^P4P ](/:OFWK9XI7T:H^<0(&] FF$&UQM!F<(4?DMF3$%:<_3#6X2QQ M,[@BD$,J.""(^!Z>/$D6P*RKLF.B-BC^ M ?,J(&I@9). R78!EYAZ' NK*_RU0%22"$+DWV=;XG>PW35JQR%8R FJBA%# M2BERG'*]J>@J18<]>GX@E0B)*"WA"IH-(1>>F!W_E74Y-#M124\JN#05B0Z@ MN#GM'RTAQH2[/8:$5K_N*]9G3V&>B H0%#4=*!,U/W#^>:_97Q6C7(.?!2Q207LK\> #THD<- M :X =Q^=P1X";T_[0YX'J-])I M;5!_0_,#8;']9@-@RG'!4 .PP=H9G&L+](3!WA'W71X&5#RJXAU M.U%-J&E)@0$TDI1"(@&5=?I4(;2LQ9C7(S)QHWM%%0KK+< M63K!S::KN<-VZ/Z_0WY=_B(3I:C*6D(8K].,<4MR=RHBC5P;(9@-TYQ5)9"!P&%YM)#G= Y=" M^BOP[( [@*EAD/^6#>DP,*G*Q=9M!=@:Z[*X#%B62!R% MR0J\TRDQI&!]V&JFI--;E:XKV"DJ?\/[ .X/N@%8*J9R&I(/GC510CEVBE>>#I?6 ]]2!5CFEAEP.9NC5'% MSHSJ9YG7ST1U1J6#90/JT/"[V73\;#?4=5#S)3\.VEN"W:PNF>,S%,(_61ZC M'=6B5::?4$%;9[^QD$7=O 4]9X.#G'9-BG?;5""80G\+70WU6,@F1'+B;=,K M[)$ C)UL)%3>QBS8!_'JK$S5CGNAHG'3 K$@F_^QJ5!NAPKX0:LC-&R*QC#W M27['N^K\#J%YC9LPR.R0M^'APM)W(#_YW.4JCI]U3..J,S U'I@3 M>!#R9[AL[>":XJ913R;@8>D4*:0KU^IR &;.2H_YEAMX\MV;]]?X4-\2*R1W M'[#><=9P@&0C!Q>>.JD=G@^*,=3TW2[WC)'0FCN,KB0F@P/;<0[)88#D[QK MS*U9H)^&Y1W=+?H]GC'2?0-UE;55GK!JK!7S?R@9 C>&^8:V#LI5_Y3ZJM=- M82I&LKLEV1HQ11)V!&ED"K)N#Q9=EK"!'FG4K#" 85,Y*VYX*+>HJ<%_S!KD M0O'"HF\ H(Y[\@Z8T"NQUM+R,;P^W#IT;:EJ.OXC!Q?8FT=1Q0-/UMM^@KOY(( M5T3!=G1]=X/I;/'B!68*VRV@-_/AEG1.606&K&@YJM'H.3B5L35KL58.+1I? M+,:T#<_5DNU8H'JN-,!P+A;*; 6V[!;M\JVCV(.KOA,H49%/6+7=$7M$D(". M>Y0C8+NZN$F@VN%NP:8G.P[@JLF,WG/X+3K'>B,.XY$)A<2098;S (^SZ.'; MA\LQD?U=.YR'.ZP;#P]C. +J>_9U"\SXS]W7_+OV!?\> ./_QPG-F/+Q)K/! MY!0 ORAZ(C ,09X3,1,P*-&LRQPM4W:4T>-U\91&1YZ73=_FSD]T,)2 'F^- MA*#HJ%&="<0EW+&^*ECISU"O,Q3[R0I !*AUAB]C4X^NXL-Y<*?[2E08KV* MN4:<%/0NU$OP1_HC=,]\<;I+J+80"P)6O20S7M1-L9* ]1C@!@7ZTF![%&Y MYB;\D -FNA[]8?QZ*,30D]V0M1'\G1X(8GESTX=H[D"AS-0OBV&RE( @2X.< M0.0=:>[QM-'FL!W2+N!X4;:VFP",_ ?J.< (2TO^*;0K@.F@9P3G)I$S37ZE MNXP3 E1?*:)39Z@.!;[*)KD'](K3AMR. M;EIU36?Q7O;!*HP>#Y'7!-,^RSMOW-X3N='JI*EH?%,"=!AN]-06F)?OV12[ M<;;E-+E26O9K^NF=;/&Q#4>VO_4%Q64!AF76TMT6IUX!H@U-*OA/,.VU 3:V M@!RW<%@4"_#:A-^8@OCDO/9#!GQ- MAD3D07'/B\*"R"2U#9W'<*QAQD"H<&F* UAFVV2?F3I3S9-S$!@8X-SMDO&+=%,#F[U? M&>3KI((6T^2-MX5QB1+O&#P06\([VKVDSJ2HQ<.&X#@X<.1"$<,GU!2P<0:& M0_?">[F198B'7<05WYAI\O>F*'K8'S,SSN?GA6G*GKQ]: <2(YKLQ;KP/"T%[AK9!@R6=XS/]$: M9D_L:UZ4Q#\'V'D2HP<=]*QY.[ 7['2%U9CMU'7/_@F\'>0B[CCF ^/@(ZPD MG_FN/.9X+X@OE,(*ZJ)!;PN.Q_OSA,"\-=T]NA)Y!04%U1H.*"=-#D1/\;9@2%>.CE\=$_CDWV--AJ&8T@HUYJAXC( >)O!%#AQ+'U7&1-)X\*; MC,E@JO@,S,?,9 ?&)#/$<:372 S"Q E5N( D"^ MN*JW3L)D.9C8,=[9BUM':H_@G!'NJ3PD 8?\\-Y/=[B=S_QR\(];;Q_'.5H2 M9/&!?I"A4H0Z&8C>H0039@&X4P9>1"(2-:-P"RQO(LGKM*.86PV/P/O2AFXJ MA &/Q!_AGE4#?8\X*.Z I-V8]XL]C59=);*WPV1"1V&C,S/./68I@D9^INA> M<)A;A!^@6@F8$^?"N=","W4P/9S]TZG>C>F&K%6"/8LS6R+8D"2=KPW(M31( M>)UUHY.&O,YXHDS(^YP.4?!+^6C MNT<;L((:%&D)$*C"/S0-4:MQF5*QJ,!C]2%=[R=D]953K\8YJP0"-%8]([P$ M3JZ2&<2A06M'7]Y-0OZV\(7'CD-I*_=&>VHCI2 M(@#'BS JJR:-DE*@R^C5V8CQ/+":Q2(Y.#-L326M#\"/>@KUN/@L0][*QZ-N<-XA M4B#G>^QL^/ ZS6U5+EW^,:EN/,4FVZKA6I*!3/$QMR)H$ ,D!UOCQ!,/ B(P MN%K]II%<0XUG* F;R;](.H73NT6D?UG+J68:&$<4\P4 L1S[NQ0!]]!>CR-&!U8-4?! M4U6[=V)LA!UQOS%26TI%&PO5^K/S^1K-QJ5S<6,B8;Y@1946!:(0A$W]W#I$%.78C%):1E'C8CQ/2Y%N>UN(]:= 5 MA5HHN9B'K-([L/=R(=";*BJ\T 9.0:#K-P[$];V1&PI2D31!)+K+Y7F+N='&[=K7,0BC#IG$'N?^:^&@ M-\A!TZ&+0S1VR=KPX5@?) 1-0'-MX=3)1:P[&?AOG *!XL'---RV9?;%+CKA M_+L%26&T4X0Z(V4_&+*5P"U'QZ8!$@G=!LXFG\#2J;N5#!-, W10"Q^@I"$+ M)#M-?ME05JSB)7-C\>ZBL>M.W0>.IP]0@)-S&.A[-#N?SEUZ+![ZH]G)])G_ M9E\&$$<,O3^SVF(V:1 QNY8]WI!_?HR+_%]5,TV3#P>$C0_[D2 4MNX$ZEA1 MVVX1E.! [3K=Z< 'B84YDA]NW,*\U$/54]]3YB1P358-)>A&UP?P1ZC'.^(T M?H_V@!?]PE\H#N.J/"&<+4C,VKWL)B2?-5V M4U4B'9<"4C1_."WGHVC"->K,7<7T%&G+:&3$84_*;ER85GP^$9>AG!925RBG MMQX67(6YCC /&+:2'.'8@R0'[AR:\_I2IK:FJ4B$BSW!0TY38C3E&UYZ#(4[ M-Y#"NAO$(Z(SJ,:@,H.>.)X^ V-4I S5S[,'T%?!4!I:NU:UQ)N&2 XY\4CO MO8@WHM%O?XTR7W#F=H.1M(HSDU&GJI=5@)L8"D9% MT<M+SIK(OR@,%9BQ?WAK MPYK=\9+*B*U[5?P0%KRO3QZFR)3RNRG5NE$$MMH.F;4&"<>$?H"YE/.CW75Q M]YB?W(M4T5/$RQ10D0!*G.$?/< U/YX]B[58D+79?8;@42HJLEI/?0U,CE'^ M.S.A3!;]/O0BAK^#/F;N0=*P(IQJ)KJ5'&Q1E@L7B1>8L!Y!-A47T[TQ"U*A M?VJ6F,V0VV$5W9N??!6=JFM>+*52=<+&_8B$I$P)S)*V"!7)Q]2K5)&H5(*9 MCKMM@BJIL74DKE*@SP10VES@1D!>SC.^X"WO!*>T#%QZ# MOBAOG7O;E^,3RQ1%_)8]3>H.BLF9434.9@CE+DZ\J WA9',(Z9,/Q@WY7;94 M:-F&;C,)98T=$*M^?$AQ;I?=GY875H#-1J?5'9!/\=%\>JK:;8J?3OPG4G_G M@3X;-HSIP&POCBN[1C)W M4)O2 L7DZN8Z>7;\;#([GLS/)K.+UR@!X92&]I-FT5'>%$;OQG>#/!9/BVU4 M4D.*DAL=>0"R MG5I^I4GE5T!(7+A;^&-_8(HH 6IICGB4S"]FZ>79:?#-R>PR/9Y=!M_,+L[3\\O+X2$D<@HZ\#P] M/I^Y3\_2^?$S]^DTO3R]!)I&!V>X."PU/PL7GY^E\^B;V>4\/3^]<-](#MV7 M[-L@D((V#'Q)4@T]5#VE_KF..5H'!6,2-F^S!=HP,A4)"@DW=1?/@F)JL?+E]O#<#)H*!&-4FAW MBFGZKD3'@-4HJ^DB1_IV?RY18<2N]$ ;NU-AZGUB41*1>QAW) Y\='N& 18G MC+2@/S@#!#&[M[XLM2@7KJF&)MY0^-*=A'1^<8?IHIBWFDP\'DA@?.$CMR"8 M%F6WXT@=DVF8NQ0X6#$AFH*B"/ ]=;50E?3GCS_Y?@FQM\X) >SW*EN)D$3!?#>;)J.ZQ!SVRX[N2'1;'KA+PXPC[*5A PL.@4U@O$_37XU4M[&L22\U>4*M$L] PYE MA8A7SHAMP/IVG+M+>B7>DVK+1M9 LY;6.YC3XZ)H,('F5F,N$J8Z;,GX#].6 M)&%A7RH+.4U]U@CY1LPWWP-+M'18BY1O:>-2#BNJ]MIN^RJ)PP.Z!1R:.]*\ ME:SV['*JN@HV[X#'U^*7\H4CR0UH\5C! 7*TQ(YU6"B8\TA?[@%:/8UZ++_( M1\JDHD9X&HK$0^.8YQ.A9J72#N.:/0@M,!3RKZH*2'A)4^7+*&;NF Q!YK4# MW Q!H+HV,D=8RXT7\"A.$L6&?;FYGX3:$CI-/'E<8.RZE89@JA#_>0KZN,(^ M0ATZ8*"X_^RWY#76LWDZ/ST/5=CCD_3B>!:IN>G\[/*_#OZOU'<561B7-2=U M3SOPIT(\>?:<;FWNM?.S].3B+#T].?%?@<9^>9S.CKUI<'J2GC^#4:SF87Z>7L-/CFXAQ6/K_\#L##&C;=A%*F _ \/3FY M2.WT[JM'_=?;9X;MYPFA=,5[8D508Y1,B\\HE"3SPHX MW1^;>]2B4]F''\))D1)SU/HH3 I<.!.LB];%B%: >]+@D,E/DRO7>4@\U-%" M&#M"Z8UIHZ+ B"DLN.DP)U:/3LLPJ&0R:NG"B388A-IC^-XVWJ,?+"Z5^V2&5O;2[%[LUJFUI'9]+SS)!1ZZH MMB,5^\&Y5MCFH0()4G I)H!'NLZ^(BK<;I/L5MMUC#2YV>=2N&+RU061V =' M%5T&AMI?L+VD,>H SN+%PH4.5(@.$NVUJM[GT7]GQ31U5,N$Y'L\."GYC5P9 M3O>/:"&(&Z94B(\< 3LSL0<>YV@B1 51(LJ'Z7.V,BZUT0!0 N+Z/+KX4J3VHZD7EF9' M!=_4E'*D AL+>169,:,9]@W.?*OQ1"N#N5D05D;W1$7,N9C9.L5#?AV4$T3I M1WQ%1,$@).X6A%Q[)VT(I>MM(%U&=WNN!FU6?;XZ!H]D9-LT%=CBX<"/;N!. MB)F2'X 4B4)]VA1-EJ^J)EX\:/)Z[9=/J;\=HVKXA'L@&A^!07R(XNZEQM ' M:4H/Q+2HIEL3=UADASXBJ6Z3!@K1TDT;/\SAZ<&8,&>/J,/)$DE%:0,99>/> M%KZF'AM9<.;3HFGC%2R6;<>1PJ$CE@M1V-_BFF%83NWB3EUF'S$W1__0#+U_EJ4/;WK3J;#B%P MI),!0:RI,6:@BL*PX>X MM$T$*MS6DF6/U]9]1&L8OHE#O=$*0=.O?0)\9 7OI]PY<^[#NI>GV:$UQ@62 M><_E(/LJQ4<,@7'>$<77_FS6\-Y7N@%V?VKJY:2BP/T5*\7A\6D[N\J/$M5Y M4):."49HKVB5-J+$"^@8.]@Y-(_ZM(^UG-,2-C4XI5X7;2**5WW6#TY?TJIE MLBU6IN)0$&=X@RY//E,CW>K(@F]+&V1J[L+@8J_NA0!R.5')H2X^"_)SNL9Z MO+2F7#OI07,$I>%B?,3^6GZ64:IUXF%I:3.H6!YLR3M,\)-/53Z\K;"Z>;>B M5 ,T5R%B^>TDAD//;1!@'_87&EV]#9<)WLK [6&PC 4;,VW*3O+B;YI%=X_+ MO,$.!PUG6W)+DW"8^@FH=-#J,\RL@Y=M\!>8-ZNINUR<2U.[YUBA=K-(5SK< M,O!/"F$T7!7OO!/\/AMV0 'A5TU?3-@FD/1E5_@M3G02A123\>_4N$=TZ98$ M5.V_$L:H@BD5=,Y'Z]#5F@4O4N&N6C21)-R/5RNF1- R!($Z7+9(LCEZ51*_ MMR(71QPEJ8*BA4FJ3,>8QZ]O1[BZ^27YN9G2KY/929I\8"I6AB3M4'_B(ES8 MXVCW6I_M?U?B.%<&GT?AR*$8*2"&%/( /-]150%\W!I? M=)%IE01K3&/=4='?B= \\54I#9=F!/DKS!P=+\ZZH#$&,38RP32TT'&KC8"0 M@U:B[*5PRIQW4\"PJLDPU(IR;=(U$]?N>("15 )S4;O=H)"P62PF,(6YD(-RKYS^.#O34.N@45BY M=GJMJP!JR)_OITU5^\-P=%9(2YH-ZO4=M?U^JV8C2Q_?.24CZR"D][ 4C+M_ M64ET=(D9$U&E@H9ME+T@06G7^2)SSFR_;>?=QB06G[C$6T2\>S'L^!-&2'%3 M@P;F^N60/49O?PNU^0#"\3A7QU\FQ\_<6X[> &5.\!\^T6ML0-!:K>?@IC,?Q5OZ^*:_[9I- MF2>GY\>3^?$3"=ZW);^YCHGW1U, [I>3:U>V T@F>O#6U\?[FF+R<#7\I!>S ML\GI\9,?0JF%],PP4?Y=U!N="PR#1;(#ZX@#):I\]6_CLE3OO-B.2J5@^9 ] MWJ+FO0:2#;J[6!^'(IY$8 VPEB:_ ^?I(1"..Z#33U-7$N,1@^I9HDC.[4H[ M.JHTY;*.,F+A7#HN5G2[U'8YW)E? DAHK-Z5!0=J!#IR+)NU]SUGW0[LPQS1 ML.TH7P6>0BVP+, 29A%:[!JYT]X<-9W"G]=HRNL(-$QR2#%NL^$1;9C%J+.. MJ ?4,: _2I%HI%G>"##HFA9@\HM@@,Z\,#9ORUN*:[DWVZ 5-[JQ,.,3C%?N M>1FP^\#M2)Q;,IX5:ES"%]4 (C-Q0**+VEH-6Z\RE#; ;JA"SGM>.>/+A<[I MJ2 BW9;+)3L05D$S][ J<4BW/M;$Q2R2ZN&5E9T'RI#2/"K=RU@82(U[*9'Y MAE:.7SAF$9(?O;2"U*RDK\,T:Y_;3:^ T::!SM'/[E3G_PFBWM66/;T95>I3 M5KS[))=V-@::@#(<_!JZ'\(-[#B+?;V#]GL3# LCI VI%'-98,>7G,9*.VU&^C.- MY]B\CTQD)V1W-520E^=.7M[PRW"3S^[,16C.+\:$YF?_&EUY =:U?!X$O:^/Q74HI4TM MA0=W]')8">JRWXNR<^&"D($TD;:-88$&]I MN":RS+/^L$UUJFX%_42>2RT4EU!0ZN47H5U?+.X:-X2.>&TU Z:*\Q1TRB>D M&99$,B@V2J\C9MTE(-N V?,NXB>!B^R>G>]4%XZ M;B'CDG^8O["/VOY+3H^3-+J8 R/H=TUU6&#L><&8OB)'B3PZ'F_L! SW/&"X M>RV>AUGPBZ?=JQ=/2PO_Y/!?V]S#O^1A>I-UV:L7]);T:U-5E(A1=R^/9D?! MMZ@VO3RZFOUP-3]Z"D_ZX:]>;+*E^9!AX@7&&Q?PZ/'T_.R(^^+I!["#<4K, M<^F:-?VY,B 26QP OV-JJ'[ !;#K"('WZG\ 4$L#!!0 ( !>(;ECW=LWI MY 0 ',, 8 >&PO=V]R:W-H965T&ULG5=1;]LV$/XK MA KT*8EM.6V#U#:0I"M68!V"9NN>*>EDL:9(Y4C9\7[][DA)MF''6_<2B]3= M=]]WNCLRLXW%E:L O'BIM7'SI/*^N1V-7%Y!+=V5;<#0F])B+3TM<3ER#8(L M@E.M1^EX_'Y42V62Q2SL/>)B9ENOE8%'%*ZM:XG;>]!V,T\F2;_Q32TKSQNC MQ:R12W@"_V?SB+0:#2B%JL$X98U *.?)W>3V_IKM@\%W!1NW]RQ826;MBA=? MBGDR9D*@(?>,(.EG#0^@-0,1C><.,QE"LN/^P\WX M%8>T[H[SSO8^^Z2N^DU1\M<973OQB"B@. 49$9&"3]FSNT[.(GR"_$M/) MA4C'Z?0,WG10-PUXT_^E+OI>G_;E;KAUC MF%V?0_\79N=]?[<>1'HI=ACB[NE!/+69MXW*Q4TZOIR,N3;)T8F2S=;!3#KA M*Q -JASH27KJF587(@-JL!RH/PKAK:"FT4)2RSA'8\&B:*0*+SQ*XTI (856 M,E-:^:U0AFTM%H!Z&TUD;+D,_ ; 4+WBBH :B5[EJI'&.T&QF4H-TK4(U.9> M%-+#E?B#=A]L359;84M/[JVG0'^3DAS02Q5XM77#(5Q4<2I 5-8Z8(*L6)EE M"#FH&B1>W(HP)DUH3.N\HT+47E)-&* MTRU##CSDE5'/;53F!L-9+!/8U'2GE#T8Z1 M6G[7)>L4JXOPIA>@'*7FN548*[)!NU8%8\5S* YTRE#X9EW2]PJ]4I0IS*MM M3,NI-X(*=17[X;F5H9)9+,*NLDEG_+2[H$$%Q2O U)B]K&Y* (5!! 96ED( M#6O0CONNM)H.0' MRD>NI=(AVWVE.]MB#A&Z:X^]UF2J:ZO7;$EY-=0V4O<4]EJ#&%QUC-.?9ZS! MN9YV 5+3X" WRLP*>E($OXW8T\)1 MG6J)YX5,_ZN0.!1@&#LG:KXOZ(.I03!4KS^@RW1?^'W)]'/H8"X[M33=\&WS MZC4!7PP!.2\-J]_P I(/7(LT:YJ]^#WARPU5A;:U)I>0TATHTJ]K(.? /?SQF75UZA(RVKL(UH#+ M<-VEL\:VQL<[X; [W*COXD5R9QZOXU\E+JG6*.\EN8ZO/KQ+Z.0+5]RXH+M& MN%9FUM,E-3Q6-(T V8#>EY:N*=V" PS_9RS^ 5!+ P04 " 7B&Y8-^Z> MK6(# "_"0 & 'AL+W=O#CD?*?T9U, 6/*E%-(L@L+:ZC**#"N@I&:@*I"XLE&ZI!:G>AN92@/- MO5$IHC2.QU%)N0R62\!&FXDD3#9A%<)Y>KH=/W"I\X[$QO3%PF:Z4^N\FK M?!'$+B 0P*Q#H/B[@^<@A /",/YN,8/.I3/LC_?H+WSNF,N:&GBNQ%\\M\4B MF 8DAPVMA7VG=B^AS6?D\)@2QG_)KM'-TH"PVEA5ML880F3:9HD5PZ??"B N![ MY990F1,FE''C-154,ES;$(LJ3)45E??>.;.^5H)J M!SCC<#R<'<>]/@BB.6)^EQUN2.Q1AE -GAVX^RWEW<9J0MW>^OS=#&N4_C9>/YZOG2XY!8Y7,S^-_0V964+V%G%C5 MB6X@K]FAMW]![[<5:-I8NZJ^Q?W0/^![$L[2/KW'HSYKST>S].)0>S;\COOA M:#KLGYA)?W:>9,G%,8FH=ZF6@ 5R3P=#_%%H[M=.VKU.KIM+^:MZ\[1Y MC?7E6 P!&S2-!Y-10'3S7&@F5E7^BEXKBQ>^'Q;XP@+M%'!]H[!GMQ/GH'NS M+?\!4$L#!!0 ( !>(;ECC-#,TAP( "0& 9 >&PO=V]R:W-H965T M]6SR:JMH)+O-5@ MZJIB^FF.0JVG7L_;.NYX45KG"&:3)2OP'NW7Y:TF*^A8,EZA-%Q)T)A/O8O> M>)ZX^";@&\>UV5F#RV2AU(,SKK.I%SI!*#"UCH'1M,)+%,(1D8R?&TZO.](! M=]=;]@]-[I3+@AF\5.([SVPY]48>9)BS6M@[M?Z(FWSZCB]5PC0CK-O87NQ! M6ANKJ@V8%%1@J-7P+T(;I2TI8'W,L-L MGR @)9V<:"MG'AUDO,+T#.*>#U$8Q0?XXBZ]N.&+_RV]%IR\#';U,#9+EN+4 MHP=O4*_0FQT?]0;A^0%I22P@[)WCI55#;&@LK!E@BY M$E1]7!9C.#X:16%\_M]FNC&L%JB;6SOH=%?JA@A.N"19JC9,9N;TKX^\PUSS M C63U@!10/I$WR=#;;J0-]#KO_,'_63/$_FC)(1/:,P8)#4\ZF*"_V(+@;!B MHD9@V0\J.>HY]IGJI.]'8?*L\F3H)X/X%+XHR\0>?>(G_7#7D_3]>#C<>EYZ M,\%.Y5:HBZ8_N>NKI6V+N/-V+?"BK?SG\+9_WC!=<&E 8$[0\&S8]T"W/:DU MK%HV?6"A+'659EE2&T?M F@_5_2H-H8[H/LQS'X#4$L#!!0 ( !>(;E@E M4!>K" 0 *(* 9 >&PO=V]R:W-H965T?N[$$MY[(U@M?PH(ANJXJIEVL0K GUI.5 ME#\L\:58>*$U" 3DQB(P7)[@!H2P0&C&SQVFUZNT@L/]'OVS\QU]63$--U+\ MQ0M3+KS,(P6L62O,-[G]#7;^I!8OET*[+]EVO''HD;S51E8[8;2@XG6WLN== M' 8"V7L"="= G=V=(F?E+3-L.5=R2Y3E1C2[<:XZ:32.US8ICT;A7XYR9OF@ M,+_*O/BD$:PVA-4%@9\M;S#P9AX85&$9@WP'=]W!T7?@(DJ^RMJ4FMS5!13' M ':UAM(]P9>TY.(MY"/21SYA(8T/H$7]P['#B_^KQSNX))?P]F>N= -RV'A M85-H4$_@+3]^B";AY0ECD][8Y!3Z/S?V--SOT@!)R8B^TX=BY4! L(ZA6H/I2LA]*[O%*T.03KXDI M9:O1.WW^K[6>CNYK[A&YMPQ[\HQ$/DW3-_2.C5>8D:==?O8\<30[VD]&44A> M@"F-8MA"5]&B? MCJ8]PG2Y@&)_I+!Q2TQAUIKW /5NYG.:R:EJ#.OOD^D3+M=G:MCB$A\;Q M@(I"++U1UH-];E7-36LE6-5W MLY0>>7$C:VU4ZQ['$:]'6+4;U'L0IGZ6) /+4S3DL5T9:<.[/TYG?I@=N-*I MGX0IFJ7Q-KC*\[9JA>N_ O!ZS#ES3_&>^U,\\Z?A['QP,/&S>'I._CA2@CV MA3 =-@4-_722]0>W0WAXQI$%DX\C"[8U[#P&^R"]O0?\[B*P^<1-1+9XGYW% MXQ ?6R$0S;<4W5..#P^2PV^,60-NMA#8\7AE;K&<2G)&CS &5(<1C6?O86P! MJX'7N6BMQ6A/+K6QR)K9,G67%6#^JH;5+S8"T?12NWQ*P0L7[B\U%B>01X.4 M*XGQKUZC8# W5* V;CJRZMK:="-$?]H/8%?=W'%@[Z:WKTQM>*VQ[=8H&HZG MJ4=4-Q%UA)&-FT)6TN!,X[8E#I&@+ /^7TM\G':$5="/I/L)@$V:2]N@6X;-'U\IJ6Q1:PDJB05)_?7 MWS-#2;9C)]M>](LM/F9X9N;,#*6KC75??$X4U%-95/YZD(=0?QB-?)I3J?W0 MUE1A965=J0.&;CWRM2.=B5!9C*;C\7Q4:E,-;JYD[M[=7-DF%*:B>Z=\4Y;: M/=]283?7@\F@F_C%K// $Z.;JUJOZ8'";_6]PVC4:\E,294WME*.5M>#3Y,/ MMV>\7S;\;FCC=YX56[*T]@L/?LBN!V,&1 6E@35H_#W2'14%*P*,/UN=@_Y( M%MQ][K3_6VR'+4OMZ#Q4!EM-)-$7ZQF_]0:\\YZTMMX>57;>+> MR6R@TL8'6[;"0%":*O[KI]8/.P*+\2L"TU9@*KCC08+R.QWTS96S&^5X-[3Q M@Y@JT@!G*@[*0W!8-9 +-S\23/)7HP!=/#-*6[G;*#=]16XR59]M%7*OOJ\R MRO85C "B1S+MD-Q.W]3X':5#-9LD:CJ>SM[0-^LMFXF^V=^V+,J='9?C+/C@ M:YW2]0 T]^0>:7#S[3>3^?CC&ZC.>E1G;VE_ ]7;%0/=B2NOU1 2E;54HN:-FL@TA$;;"_*-22 (!<:CQE0_4IL'J2]43V=I[,*()FTU9P M * X7:W%E2H%WW$"\'5>AD$ P4N'ANG2^2B%[5IH;TW*Y-J@9(Z _5&LYNU M6L$W0,&N0(EUV-+%H?4Q=NU@^_:;Q71R\;&/\!:8[Y"U2RD$X&->>$?#]9#+ MABF;$MZ"%;5^%J'W K^RU>DK4I@HN6S"QXJK.^+'>!.%\+HU^40UP10F&(I4 MJ1V;$9Y5T$_DWP_W*"I5&-%D@Y!;7U#OV;[:<55.=8'PU)09.;[F$ 3>W:"T M.)$)L-8;\>*Z,5D$LLE-FBM=H+%X)@38E\(OS\RRC7;@#K3E!C74R1FMH7M! M26039LA[B3)3IHVI%L@(38 M3P:KP,IVZ:RE:1OL"FW,!^@&_'T/ZL+;K1LMAV<)HNY0\6@L>0&[OQ#5'1JI M".!VAUR2"N>CI)>QI -? 7]@,J):ZD*H&J\)K!*VVG5E_DO1"N]M:C0CBP Z MDG79"_=Y6R!N03(Z97K#S-#REVF&L=/<0A67/NZTR&_[V,9_F_Y[7GF9%-NR MEUGXHX^;! ,MG+.O 'AOL@8/C[IH$,IUHT&O0"26[VX+( [?&J#GD>F/^X_Z M>3]9#\N57&S8H8T7UU!(U*:5;S/&"LO2QDEB%D8OVWR*[/K15NM3 M"4ZT;F<#>^S KWM1ZHNJ (CG[2I@T'T0,]763,YY@@[)!-8J-YZL.T[Z(5;$ M;VRA(ZX,O2^V<3\2.+B#-QXK:9[@A,@,)V?#^TOKT%I9 MZ.D3%E79@4B2XS M26P$?!,UQ;9THQEP XE5Z1G]5[?X_WIUWC_.WHQ6]=.=N?LJVP3#N<:*Z-HK#3$96'6L1,Q MMI#;O4R5;LY7WW$PB7>:V+)*VU3Q5H83,EB\$VJ M?:Y6THX0*Z'[RMGR*.T><'.GL.=W$5R?GD)7Z"% MH68T,>I0C(+>[WEW.9F\5_]K_XWWF_8^(D65PN]L8<[[=ZTDOD9\G%Y;@? MG2<7\RZ:_X^33Q#5LQVN_2Q&_+"3G/^PA[OE/^3%GK)3] O']]9MTQ-''*WS MG?!T>#EMJ]]L.!^WCPZ?-SR^[\;&O!Z.=+S2+'&["^LC9T SZ@_S!X\S]0 M2P,$% @ %XAN6'@'0=CG!@ !0 !D !X;"]W;W)K&ULM5AM;]LV$/XKA-<5":#8>O-+TB1 DZ98@:T+FG;#/M+2V>8B MD2Y)Q4E__>Y(6:*;.-O:[8,MD>(=[_TY\G2C]*U9 5AV7U?2G U6UJY/1B-3 MK*#F9JC6(/'+0NF:6QSJY#9+"=^""6*TL3H_/3-5_"#=A/ZVN-HU''I10U2".49!H6 M9X/7R0ZZ+8DP?-]R?^MT1UWFW,"EJGX7I5V=#68#5L*"-Y7]H#8_0:O/F/@5JC+N MGVW\VB0;L*(Q5M4M,4I0"^F?_+ZU0T PB_<0I"U!ZN3V&SDIWW#+ST^UVC!- MJY$;O3A5'34*)R0YY<9J_"J0SIZ_DX6J@5E^#^9T9)$CS8^*EOK"4Z=[J).4 M_:*D71EV)4LH=QF,4)1.GG0KST7Z+,P-D 0]Z OH/!^& 3F*H9FAGH/N3.W^4\9E22\)VW##7B33X02# MKJHP?R(<9L-\.W0K7R3#I/^.!EJ#2[+J8<@^XH[BL3 '_J:>MYXSG#'0B),JK&H)U0P?]+G.]]7C9:@[3[[?6V=?=V_((E M<90EQ^%$$AT?CX.)?)RQ&Q<:%"25*@+Z-#K.XV TRWK*;!P_VC_)HG3<[Y;D M2-&OFL49>F$!J$3YSWW^M4Y9-)E,N]%!EF:]PU+\LD^721Y0)5&23GJZZ6-5 MR*)LEX424!!;^ (62A:@$=^#< MYM>EJM=L6=ZN>)R25JQ.UXUGC,GQW)9@%^9 M9%Z8EN)7# ]$.]W 4;/>X>OE_5J.C\JB9=(QB4ER9NT:EXX!;N['I2!LV8J7 M3*K.X.]__=FP@FO]@(FSX;H:8==@0J!4H/K[% 5-]F:"EPB*49@P;CQ6X MI)NGOMN5(A=(V"9[R8P!9.5*E.!S3'H6M=J6RY=) QZUJET22C]O5U46"ZEML.L6<^2WN1XFF;JD\%;6O: M$&JFN\ ?3:;I=P1'X,; ??]?,T=FQ#PL6G"D].&UTE9\V:VN'69/HFRG*/7K\:W;OP\S=Q^P%+1^/9X?A3)KG_?AWP#"\HX,[)70E;J$2 M*Z60Y0K[]0W@2;A"N ,,P2_@BTR+%U@#5*-W9?!!$/D:A" F"">2D)[1'@" M1)" AA3H&N,5RR?6+H$5ZIU$]CB#1VXJ,L1'P^=&:*@QA1P[_A1#7[Q76*N4 M%D5['L'R_"?64!)#2%PE",;!-!751I3253?$#"A1_DKA?AMA5\24*0=H_(Z+ MBL\K/%LH(^B(Y?A*6'(W #H'X>Z^LG[=1:4Q]L5>#A&+J!%#5^T!. ]J MOGOS:-'W#]2"T(T2[>U/4;VPIID;] 1Y ?L3U&VV*R[FC5I*=QCK:I!3'B2O M*$0C)A"9Y$/D^QSG7K7;UZ+@W#4]2M(^V]/?WG/=\*G;@%%P*U.#7KJ[)VP( MJ%+["YINMKO>>NUO=?KE_F[L%ZZ7 JU2P0))X^%T/&#:WS?Y@55K=\(;EBDSLUYH00 -8- M 9 >&PO=V]R:W-H965T< ACP77.B%EQM3WHY&.LVAH'HH2Q"XLI&JH :G:CO2I0*:.:&" MCT+?GXP*RH2WG#O:HUK.964X$_"HB*Z*@JJ7!^!RM_ "KR5\8=O<6,)H.2_I M%KZ"^;U\5#@;=2@9*T!H)@51L%EX]\'M0VSY'<,?#':Z-R;6D[64W^WD8[;P M?&L0<$B-1:#X>X(5<&Z!T(P?#:;7J;2"_7&+_M[YCKZLJ8:5Y'^RS.0+;^J1 M##:TXN:+W/T&C3]CBY=*KMV7[&K>"#6FE3:R:(1Q7C!1_^ES$X>>P-0_(Q V M J&SNU;DK'Q'#5W.E=P19;D1S0Z@)O M^?I5,/'O+E@;=];&E]"OL/8RWF=I@$S)ZU?3, CNR&7X_;("YYM FLF!P',* M6A.Y<;.R4FF.E4%*Q5(@\@F4HV\H4^2)\@I:3H%=IH&FZ8^**;!:R;K2:"8" MIK)8,T%MO5J.5%;"( OV'E)A.JE#=0687&86NV%E8CLDWW)00';V(R39MAZP MHD1SL)T8PB6:H-&G5&X%^]DHL- O0)4F8#.78-Y!L4:=;>ZY;^@BA8-@2![0 M"%0OG"B&!QM!%Y.>.NNPUH4+'JYN+X>\!&5;+60#+'.!?=%AI%*DO+)FF9R: M,]%=250J7MS>)G=ZK\EN%V3UUJ54J1<,5"-JC6@A,6*TCEK/>B8REE(CE0T8 MIW8[C#RV>TCNS7'('/S?J6'?6)+3C-S$R7"*W8USVZA[,7*[>>27M+:>"!T& M23-MVG!L),GN1W?_F[^+;6\2'G'<%U(9]M.54D?\H##SKU9ZG?3! M[K?$1U ,*[>=KMJ<[*Q/TZJHZFS[)P57"?_";-7*2F."ZC=NZFK_C0T<=I+# M^'T&#$PH/"\IG:!X\7C^KC_5_\5-FI!T2D0^!WS#9DF_5DRFW:S)#S/UH-H_W@RDI6[V6!6N)YBVWW.2DVBO>H])B;. M>+*'"9)!, [VTW@0^[.SS+@Z"_JR_F1&[M?H.K97]1TWD .UIT&P+ZCQ)-D7 M5](;S_S3/%'/V&A,ODE#\<#)L'VR#7,9<-RLSNW*#8G"P6R6] C!=!"&DSXA M'B1)<%%D/(BCJ$](,"YQ1[!ME?93&7OFL8W7'(N#^NB]"?<=?4C>5Z9"(FC# M"E>7![KA&9\8>)XS//-UT[;UK46+R=L#)*=K7!/'!\3)"5IR@C9]VRYY[[-A/)ANE[TV.:.&QD*69>KFUU3@(3)IC MPG-)G7N1L\F:FVE*/%&@UD7 M!==/X%:OA QB&KP#8%L!JW4VC6N4%MWPVT6H#VE43FQO42ZW1 M)$Z4[J/<64VS@G!V=I:F>HT9X"-]9H,&>)F!LCEJZJXUEA:DX LAA15H)H&E MG@X9I%O^>R_SNULU-A5/<>K1M3&H']";'1]%27AZ0'VO5=\[Q/X/ MU!_F_Z(LP@B.CX8LBD[A;>W@4B)=8&M +=\*Y1J!&U@J2;YAQK6",#[]ZS<= M&RP6U"R.H#D[[L'@O2C!YFIM2([Y\ SV3/5NXAU$S&?]I)N(_&24P/D3;6)& MG3*LE!%VCXD&/F/]?1C[23R$STBN FHAQ8H[I^K4^\-1W(F29 1?7]VQMB[9 M8T9A'[XIRV5')MV=?CSH)-C 'X7#7>*E0QET#*9 O:IMU$"JUJ5MO*;-MDY] MUAC4OKRQ^6NN5X+6*'%)T/!DT/= -];9!%95M5TME"7SJX(;EA$[9=7NA$ -TU 9 >&PO=V]R M:W-H965TRP5>[/'6U5;+@3>OR=#H>/SM= M2UT=O'O#SS[;=V],VY2Z4I^M<.UZ+>WF4I7F[NW!Y*![<*V7JX8>G+Y[4\NE MNE'-[_5GBV^G$4JAUZIRVE3"JL7;@XO)J\LS6L\+_JG5G4L^"SK)W)BO].5# M\?9@3 2I4N4-09!XNU57JBP)$,CX,\ \B"AI8_JY@_Z>SXZSS*535Z;\0Q?- MZNW!BP-1J(5LR^;:W/VJPGG."5YN2L>OXLZOG8T/1-ZZQJS#9E"PUI5_E]\" M'Y(-+_9MF(8-4Z;;(V(J?Y:-?/?&FCMA:36@T0<^*N\&<;HBH=PT%K]J[&O> MW:R,;4X:9=="5H7X:*JE_U:H>?/FM $*6GB:!W"7'MQT#[C)5/QFJF;EQ"]5 MH8HA@%/0%@F<=@1>3A^$^+/*1V(VR<1T/)T] &\6#SQC>+._ZL >W-EN<&0S MKUPM<_7V $;AE+U5!^]^^F'R;/SZ 6+/(K%G#T'_?F(?!OZ$LW*M XDN./OAIJ<]B>YKE]OG^*!]?3[_6.=B&MU:\I;72U%;E6A&T&\ M9@Z99@7Z!W /^=-D^GK'DQ/QA?"41E9B(7-=ZF:#AWEK+42P\T@IH.[]+)N> MC\5-.V],(\N]R_VRH1X]+K5=-)Z("B$#"M)16H-GY&?QZ 'VIL1,GV?GSV: M_O[#QT^BB2CVK9^<9^,Q:>]'Y:!K\+T*J NQT)6LQ%]O+%^7^MT5\8N'NB!N[2E+-9-IWU!/2:=^4U[WVG-9\J\9NT^4I, MV7;P^FM;.'#CB\I7E2G-4BLGKLRZEM5&'!' Z?CUKU^N^-/D]3'K;]CSJRD+ M('&9^%#! \?5X7&W)2/SGQL+QZ:L$T>(1QQP;U6YR6"S2H2-E]V:9&>/+:60 M,8JC9&\@N2?3"2F6K;2R:HS-!-1/D2)H? 54<0'OA>C#"*Z5:V2#+X%;%TNK MV+L-,'0[_D!ZX,!1NS21KQ'MG6Y6@Q67LOJ:B7](TGL(^<(YDVO^QFR1!0*V M=HV5Q ^!' =8V8D2,AMY>D$_!"S"V(ZF!-- 0*Z%B+V7\8 <(5M)H,#FM=P0 MVY&@+< 4,5>Y60.WJ*6%BH _=.J'CCL27_:LB.Y))ORU'7\);FTU2-@%=2@C M2#QZ^LE+TM;)RY'XG;E"<,@P./H\1JQ7L:A;KQ ICH5>KR%J$%5N.M4LQ.'D M'/E369*+XFBB!*6TA$1V'%]HZQKZM91X1PK;":5W)ZG2L-OZ B5$ICR0T)$& M%20(CUTLK%F+!KDL\Q_OF6AK^GSXO"=*DFYL_++<(.MU#1DYZ+/1XHD$-Z"A M]P8?Z;=(!@XA*4_4ZQ:!>VU:J)['29M+.%"P&K '%(!T&6@FB)3M8CD(TT[D MLLS;DB5-SPOVL@ %+D$!*G(*'9X@MX'%3YZ_%JK42STO%0Z4*WTK\=$QTOB# MKFX5F?2&[:=0+K=ZSDKS/ZAM5$%9.D.L;5"KD =Q[;S4:\T$'[Z,;(!:",<, MX)CN>4YD'DX':TK5-&1\% /9MW@2.O\:XB)T<,7^ZG \ZG'XO?W6E(T>3*I< MX@X0K*JE9E8LVK*D][^W ,Y)$E%'^E:9!A:/I9W:C\ 1DHGK#:&-5O8@LUA] ME6A)U'1:*JXXQ,I:4T2KE"K@JG-EB9VBAH7HAK1#YG^VVFGR@L[[>"B=57H] M;RWTJ;"2>.L"'3N8^($]!0SPB91".6NYD5Y_D)'"]5G7J:?FBT<(7* MU"O;T>183$;C'S-Q-#WV_%'@,98NP&P7H)2M$^/1.:V:'>.HRO/,>\&;3^^O M_1(/B/W=V7'G_MEYP?]:!,*2XQ,=F.$"?R*_S -A5SE7S9U2%2!.SW]DB)/1 MZ!:'+0 L4'P1#E>BYU*6%5 M/0\ZLJ:CV3-/UG3TXMD>LL!P"P;M(>P)^M;<,WKU?1HWV%S^E4IW'_+_FP8^ M&P7%VZL\C_#@84UZ/CH?__C4" 7)EFU!H3'1=?;#'(\6"@Y>5DLZ%2<6X]$, MQ(/.,1M-+X)"$;^PIPO9;1VTJ%3(SSGU"=K[D+3ZL(,1[CAH,@TL%//R;+S>\B[E1B.XDL%A-9(@Q'/TXE W*L)V%AF<)#OP( MW+Y:JA$^6^F)N5OI?#4\!79WL1AYC=,0DZ5RSX>M"KEDRU(T8#2^%]H7+1!D M**24\A8D-^NN3H$J<=NWRMEVL%H8I$Q++G%P4)\E;OI,C\ /+ SLX.J&4P@" M/U>56NB8(R:IK2]E1N)SGW4;R/47)S[ &(@W69SG*5)=V3(1KC&Y"AND4SUB[,=//3D/<&W M)8EW:-@ J$Q5LKHN;?"_M=93._7K>-$ M')@APL+[Z6$^\/W5"L7\I>]R>:9EG1^07\$2M5A0O#(5Q0MR]. S$,(E#]BX M,VT:'')":5@\"O3=0ZM$'*7,-\,"CQ! SZ KSCN1J%*YY!^Y39*CR35^/_G+]X>8B;,G$O]IBZ2<:=+1O.6D) MS3;@8_5"D]/P53(."9%HZ]=2".ABHPO=$63OU9*C(0G>FG)8]*M;6;:Q'?9P MV4HCR=S8@L-KS&/@:V^U\^)>B(N;*W'VG!4Y9G-"AW0SIB=WTB>+!0Z3RR:8 M+5GL-](WE..K=3!!/[4A+VZ\R N?C3T.T",U5L,'0:WM]@ D=@XI"%EUV,FR:>&7*3@*Z'R MU'GO%P#!-$5@%?D=3GOWCA?V<9M@=O/3P: ?&:[A/J0/:3*?8SR3Q'M+(, MP1D$(!MFE"R3X-X2[T;V$IJ,\:=AGC-T42.>B!&)06\XT>?_QXM7]*\45$TTO)YY,K M6?#PH/$E"Q6V9!Q!CV&[#W:5=Q@!=[*X@[$KC!2N@HD;1"K?M(DQ*PWN[.UDC0C]3:\] M\P_/1K,T?/2SZ2@1>F39 M7):^:$\8ZCFD(;0=O.GT.>UR=:V6?[75(*KZ?KM9++8)I62&]' V.DMY$DM> MKUVZRSLD)\I498D[*!HE50L>QS5D MUWEA]7;C^T)TVDK=[>1?.JV2<\3Z;#OB37?Z7#RK3M2W,.R+ZN.\:PJQ/;7: M?<3O-N(=*K'85N%GLR3'\E/C+L'GX>CAY-EH'!>$[)G%MH 1=>;)KH]U+//V M/E3<>WE$F)6K(E2 *H[%[QNW5XI97WQWZKI7DI3 ]DF$-^-FJ 4/[J_+HCM4^I>W'E$.+"!E'FM2>C9[M-)!.H7C7W&J(?;C_ S*$3)Q4(O.U<;L M2:9">9B6S5U_#FI1F;7.1>S#.K(9&8)0_\RJ)8W<8Q6-\AU%A^*V).29=\-B M/(?LMVNJBAHB:_E5\;T"&%QKF=]^HM_XXB!T/+E'-%=;D@EZ&/CAFR1;,1&! M5(,9;@B5N$7)/X ZT.\6&PX\VS/D8/D^[^\ZJW04IQ3O#YA]^PR$DBOK6G/L M?8+Z47LRX5/H;3$ :H4\=;1P45&[,$74V4.;3=2:(>LS(4D/';#@ M!L@\?$D9I>8HL\A7,DF%^H1X""$<"=SJW:!-.WHR7Q'G^>?<^U$H9:L2B]S6 MR>N>DAM=J)]^F#P_>RUNE+W5N?NEN67-+H ME90OI^>J;KS-4"F0,6^YXST25Q?7O]R("_")_2I*R@M8?RDH582_&V\''<4] M9^GST,#_OE ^G([.DDL_K"R_P;113U1\HRW-I>4&B6#^%;[=-*&W@H]+*]>Q M1/K\^7,LB^JMV4VDW#L-)L@G)K'U<6>X%T(>4)*E\J2$&$>20'FA^O#($^P% M]X*[<2Z-AF$H.5] [0:?6=_>\>&STMT$V850V)465=^^B!%NT*CJ,H6K3__\ M\//)Y"52(W 'SCOC!EZ-.,(N,C@O/N%0;0JZ?;J^=[@ MGN#E;SA01Y7#94O$E+TCPC-RK.#^TO#,-;I?+V>HA.<$3"\GNTTJ0+HKA+A* M,%:JK"GIIP(=&2>B9=DE][# 1M?AOIGNAM9+[7PXA(BHI40-@N3:<9.BSMG3 MS#F>+&$0<6KQ^^AF)&[6E'!7%U&U_1#$3_C3(4C: MQ.OZ M,@&J:]@6A$6;B!'0Y$A&N7!KN@A.%* M0D>(*K:Y&V^I4]K#(WL*.YF_6/?AT0)W_YX9NLP89A"O7N_[(<9K\Y0:FM.0_%E'6!R_K_WT3G\;_+EWX MO^STR_T?GU D+FF 5*H%MM(EC@-A_9^)_)?&U/P'GKEI8+?\<:7@5RPMP.\+ M ^<(;E@D<_M=7@0 (0* 9 >&PO M=V]R:W-H965T/;QWWG@MU9-.$0UL M\DSHB9<:4USYOHY3S)GNR@(%G2RERIFAK5KYNE#($B>49WX4! ,_9UQXT[&C M/:CI6)8FXP(?%.@RSYG:SC"3ZXD7>C5ASE>IL01_.B[8"A_1_%4\*-KY#4K" MLS,Q\O<"#N-1&YCMATB#GHOJSSJD23DN;% >C:)33G)F>B/SG!ORLM' 1 *Q%(:+%8J8HQ[[ MAJZPC'Z\@YM5<-$1N#""KX20:K@5"2:' #[IUB@8U0K.HI.(GS#N0B_L0!1$ MO1-XO<;@GL/K_2J#*[C^VW"V9JYTP6*<>%04&M4S>M/W[\)!\/&$LOU&V?XI M]/^O[&FX;](@A"&Q>4E!0*A!3G,1,Q9FR1X>L[3*IDN4KA2YEM*>R]H NN M>P G8#"5T!*>< N%LM+VRBMX_VY$S!]_V?_>:O.*>BU$R;)F>[LIN-6>&LR] MC*M%?6;=V&RH.A%FS-#YG*S##O&77',F6,-S!KV@$P0!7%!3C?IPDS+R-%^) M#MQE%$Q)#MCS#H)+QQQ&Q[E_BX BT<+O5S(UY=**#JRHRJ0QI-4WJ4P*-TQ) M@CA0;;17[0)N-:5,PA/9(=Z,T^L@>)L[VK$/+/N0;*7PSI#%Z3'^46=$[)4I M'^"[,$SQ8^#AL']@^9P:N](\P6/@0\?N.A,8N5O,F3"RS-[T;6]PX*87DH_Y M5@G6@=^17L.#F_J7D1,<^C9OX9'"O84'R84AS](3]0\]46U#PI:7!O!#RB0F M_9=PSYZPDOA"EE&BMSU[J-NH\O"'7;ZNF:;'4N":"I)R[2M3<0I5^^QW#\I7 MN2K?5Y KVF?K]O)US;XLTBY\/Z0 ;FA0H#]YGRH888M,$8Y]!H":..8+@JD; MN?M&[D9:A.1:PS)B9 7IL^'TVB+5_EG8'=*C1^&1E-1G47=0[YSD6:\;UH0N MW!$Q2;BK0(J45:%MVT(^DT=-R_Y$6KH!0T.&KIL9%.4BXS&Y46%*CD!PW=VZ MDD%>IT&UH&F ZT.?FFW!8Y:1[N0ZBAQ0Y"7HE(KJG/9YW>)J)[UHF>L4%5(N M0R&UYK;/X<:0"[5CQGVO26PWH1ZH2XKN+B)OO3=^:S+(4:W<_*.IW9?"5$-" M0VU&K.MJLMBS5_,99=**"]OLER0:=(<7'JAJYJDV1A9NSEA0(Y&Y6Z8T)J*R M#'2^E/3\[#;V@F;PG/X'4$L#!!0 ( !>(;E@6 ><2Y H +\E 9 M>&PO=V]R:W-H965TYCS )29B0A J 5GR__G8!@@)EV4X:]\NU'RR3X&*Q+\\N M=D&>;H7\K-:,:?*EJ5OU9K+6>O/JY$25:]90%8H-:^')4LB&:KB5JQ.UD8Q6 M9E)3GR11-#MI*&\G9Z=F[$J>G8I.U[QE5Y*HKFFHO+M@M=B^F<03-_"1K]8: M!T[.3C=TQ:Z9_F5S)>'N9.!2\8:UBHN62+9\,SF/7UUD2&\(_LW95GG7!#6Y M$>(SWKRKWDPB%(C5K-3(@<*_6W;)ZAH9@1B_]3PGPY(XT;]VW/]F= ==;JAB MEZ+^E5=Z_6923$C%EK2K]4>Q_0?K]#! UO M[7_ZI;>#-Z&('IB0]!,2([==R$CY$]7T[%2*+9%(#=SPPJAJ9H-PO$6G7&L) M3SG,TV?7:RK9%/6J2"D:\+6B:*[3$PW:D[#E=6$[) YSBA/PL6KU6Y&U; ML6K,X 3$&F1+G&P7R:,,E%=J M0TOV9@*AH)B\99.S'W^(9]'K1^3,!CFSQ[A_DYR/K5@N>AE<"** MIIELE ,#A@QM[W[\H4CB^>OQ*A809H"WN!(JNJDI+G\$^;G>F0Q9(8\D>GV% M!.8Z?GT*65Q8%VLD=DBN;/YSB5AOPYT%5]BW\50IXBH?DW'CK7F@@/:RYQ9\L2+,X MR&:IC8T'W8NV@&6M4^DMY36]J1GI(/BDIPO41 8]%-QN;I:=ANPS1H>%&1K; MVMD^]"$-,!_!J<^FVS7')%,#'/H44?(-9Q:A@%9(.HI]DR(:LM"2?T&P0^Q@ M*@-A=TG;966DPR3!9,EA!4-+(#]!2/>Q<3@<+"',1A(,:93*, 4XNU6"KX@G M+]!O(5FS'GN\:5C%@2_(BH)L19\4S=-QFC9!:5,%!8TPT4 .*K51 B*; .4* MLI6;*P%;;Y=+&ZJ0RC;:HBB>(XKB;"0V !A$1;R#8_%I[\!W0_@C/LA1'^J& M D=0T?.,_CM:XUJC+PC?DRZC=OK81HT;P0!-Q PD*;WO": M:Q-8-HJ\XLV:J#?+(>]LH4+ O1U,@K7.?O@D6>@%US\[*']L6!6/AE7Q9%@5 M3X55]O\=5KC48\%3_!4\SQ$\Q1\3/,7!X-F%1U+<"YO8%C718W&31$_%#5#\ MN;>C)^*FM\]?/,^,QQX]@>BAL;'VD$W0 \')]"F&K0](J'CA^,?TH;F_0ALK/3+M3A'94!@_5J>WL7.16S)J$69N-3R'N M'[&XXMJK<+ M5T/>N3Z_&#+.>Q'&,60Q_UCJBMYAUQ^X4Y1.V_,"<[Y00QI3@U'VVB??HJB: MS8; I@//F9.00:]>(9.QQO"X825%^H:V=&7.'[ 5Y^S6^*8W_. W :,8=@94 MJL/0,JW9[F!BAQWP$S4]FVV3H1N1C"K1FI[2G@.9?&E3+X*R/Z#J,VAO D3* M6%>(5X&H &66D$4[V<.XQ#Q@ETP&NL3W&B&?5 M%/21H#_,4EUC3?/*P"-*7W_W__] N]8?83U%.NKCW:#IY[V;Q+^)R?E.YAT? MCC8'H]QQ5E0NYCG\Y-.\;VOW3?+)1X/?BDV[$\ M&'O,<0]W-'8_-#EZ2=T)C'NW,YRA8NF",Y?>L93?]^_.48RP;05+HG;V\%.A M.OTIM#L9>SXP_MI#_DG"\SXDQKTKZF]'SOV=\Z/=.=W<:UL^N=NW+B=<&<=] MZ+3"W=1$HKYW=A61/$B319#'^<#A!8 EFI'II8UQ$/\H3M,@R>?''@V *B%3 MMQK00$$WGP59L3@><8J!T]_[W? H/B99D0&K;$13)$_)&9,DF$70:WG1:>1, MQW+&P;R(?0%2A+PO9EZ *O-T3\C<$S(Y)FD1!W$1>S19F*9/">GEBB!=1$&< M1Z-5\M@7UCTYRHH@F16^0'DXF_M"#Z3)8A8LQL(GX:SPA/>>S:(DR).9+T*$ M3GM"BQ1-G%#B_JU$ EGA^:+W=T?S0]']>Q?^R/#=-YKU25'>=\8PD!S=R*5G M\7V![AO247S8V^/^A;XZPLU5[0"VGVI=QVB[K''+:]_HLB8M@OEA 2DH7HV26[L#RR6RL6O)6\=(V%\KKQL?, M'PU?K!5?)+/]5X1)%,X.OR,,#RWNK]VUO2I?L3!47>-U86-X:-DG7@5!13QZ MT]FU6$FO6M,.^0W&P;>FWDMP[!=[#886^"E[.XU!!3;L(54G70_W+>]Y[3$, M57UN5^2/RZ^C$MP(801X][!S>T6]5!(4Q2R(BM&^&R09%#C1:".$.B4.BKQX MC#N[M__B ODL#Z+<9P9520X,O4!\0>8@1!'D\\*-'?IHX\3[J*9A&ULK97;;MLP#(9?A?"* M8@/2^)!#@S8)T+0;UHL.0;+#M6(SL1!9\B2Y;MY^E.RZZ= &&+"+V#J0GW[2 M(C.ME=Z;'-'"4R&DF06YM>55&)HTQX*9OBI1TLY6Z8)9FNI=:$J-+/-.A0B3 M*!J'!>,RF$_]VE+/IZJR@DM<:C!543!]6*!0]2R(@^>%%=_EUBV$\VG)=KA& M^Z-<:IJ%'27C!4K#E02-VUEP$U\MAL[>&_SD6)NC,;A(-DKMW>0^FP61$X0" M4^L(C%Z/>(M".!#)^-TR@^Y(YW@\?J9_\;%3+!MF\%:)7SRS^2R8!)#AEE7" MKE3]%=MX1HZ7*F'\$^K&-AD%D%;&JJ)U)@4%E\V;/;5Y.'*81.\X)*U#XG4W M!WF5=\RR^52K&K2S)IH;^%"]-XGCTGV4M=6TR\G/SE=HN4;*LH4-2MQR:Z 4 M3$Y#2W1G$Z8M:=&0DG=(<0(/2MK98?8:$)*L3EORK&V1G"3>8=J'0=R# M)$H&)WB#+M:!YPW^0ZP-:?@VR57*E2E9BK. 2L&@?L1@?OXA'D?7)W0..YW# M4_1_TGF:]$U9A'@ YQ\F21Q?PZ+!P9)H\#U'N%5%R>0!7/E:^AE@,(SBC_M/ M%^W1_F2@Z@0]0DH7 M0_--Y0K1P"-G8)B@'D#UDU5ILUJ5SMQ3V$8@W$N+6C(!*WQ$62&L*G#NB)=1^""'2B/]++4T3+@TFN$#9W.3:K163DM MKT72MGU)4-]GRR.XW/UEZI+CKJB_J DPF;E!##5JA+/1..Y-1@GTX&QXF?2B MR V=S5DRB7NCR9BF=(=*]/U)'/IOW:#PJ,(+U#O?QPSIJ*1MBKU;[5KE3=,A M7LR;/OO ],Y]:(%;\7&V6I^_AA3NT>M3.@_:VB6]5. MW '='\C\#U!+ P04 " 7B&Y8D&J_Z20J #,C &0 'AL+W=OFA;?EJ>7+R M^M76%-6S-]_1=[\T;[ZK^ZXL*OM+D[3]=FN:_5M;U@_?/UL\TR\^%^M-AU^\ M>O/=SJSMK>U^V_W2P*=7;I:\V-JJ+>HJ:>SJ^V?7BV_>+D_P 1KQ7X5]:(._ M$SS*75U_P0\?\N^?G>".;&FS#JV/+$F>"??R/3/K,K8D/AG_K[#_0 MX>$P=Z:U-W7Y>Y%WF^^?73Y+>.SYV;,D MZ]NNWLK#L(-M4?'_S5RFW7P*\%/->]N>7;2.I5\S/+(,HME\K&NNDV;O*]RF\<3O((]NXTO M=>-OEY,SOK/9/#E=I,GR9'DZ,=^I \0IS7?Z3P-B[/0\]]GXW$A9W[0[D]GO MGP'IM+:YM\_>_,>_+5Z??#NQ\S.W\[.IV=^\[5OXIAW=U].>3'[L\Q9(Y%>; M;:JZK-=PRC3Y4 &$7_S'OUTNER??\@CZL/@VJ9NDV]A$?KNIMSM3[>7'EVE2 M5%G=[.K&=#9/>KAP'EZ:AQ;A^S/0ZG\#K2:PY'^:JD>P+^ F%U=7\&_1)@;I MO2G6ML$K0'@5&2!@QNLDNZ:^+W*\DJ*JZGN#=)VT==DCG;=)5\/C6=\T. +& MWI5VVP)9=9NBHGVXR8DO%%4.9-;LYPJ%C6EI"5NE,+0L#$R 7ZP; _-T&],E M6^273)UPMG"SE;5YF]R%F[35?='4%;"RSI3E'AA@VP&[I&G]KE=-O86]%%UA MRJ0U\!M *IQY;7#QIN[7&SP?[*_9XP:STFSY)*;*X7/?VC3960/@W=$9$0JV M(09>932M_9^^V.%^W(2VLLUZG]C5"E&\RO8TF873K?E3T0#XJ[S A7!&7BN$ M8[MO.[N%+W='N:C@RQH+TR9=8Q!:\^17N*$ MHQ87W[9Z$H03[*(MV@Z/45=XEX!G'1]UK6TLL,HT^#-%D#X M!5P,0"Z'*T \@X-G>!'#*+O@CS F3M%/@ #+"GX @RCZW$2SX>S<97B]> M>YM&H^#.0#C2705T0"!@]-;-$[9X7(B1AX_]V7]Q6^06&-#%V;?)K4XK2 (P M PW#KT="-NBL_/')@FN1Q B!UP%S ?9Q3LC\MP"^B;;&D;V#:!K792\Q1KH MDR#.#^#.BZJS*#/X0=@3W)D %[_*;0OLVB(Z 8?);U6)_!OWA$"S7SN M$5 W (IA^5 @.P!4L T0LB60'67=:3+&[=VW#W;X3=\.OZG[QGT%4J(MMD5I M&@1*!7*TY9W@)HZ+'"(,@(@# OPTAY]@$N MQ-7Q!"83>8!?(-J!>,Y)XB#? MJ8A\@=%V1#R.#NFQ)B=.B"(A%/"W'8PQ38[PS4D!H!M6$7A]>Z,B+KD\/Y\M M3O30M[!3@#HBV_M[7,V!8 SQ I)&46/O3=G3OEL_C:5I'(+@-'@VEC[X:>R, MR0-<,OQ2VAR(X,-'.%M'2/@;B!68_[8C#'P?RJ/DEZ;N1$.^9EZOYWW_R[4[ M;]&V/>X0]M7 0\+9>T"^!$@2V&_1;O1B5B G+>KB>,V YW6&.\<_'@RA('"9 M!+:P+BHE0I5>>(W]=J>$M=GG3;TJ^QH8+=-8Q-.<;O+#3>MV2A!"Z0_'*U4, M1\LK4$%QO&0BA9.BV@%$LT/VA<)D)2J.R8$/ 9ORU([?PHK)#BX/;@4(%J0G M&!< 'A#[-W6U;I DO=HC-\%+Z;7D0*)9QY2+RR.H\KQ18@:9*& !( FL\)@$ M)3D3?.B[3=T SR-&6(,VP0RJL98.@RM\DRQ>AGO%V:>A#G>)A\'E0+M^*?B* M#[;6;P(^%@VA;%=T/?-&%'*(!1."B.GP]&6R F9=%ATCM47Q#Y!7 5$!(YL% M3+8+N,3[) D%)(@B!_V#VQ._@N%M \FA;R G*D@%#2BERG&*[*XF4 MHLL>O3^02@1$E)9 @G9'P(4G%B?_SKH&H MQY+0ZK=]R?KL&#*B%0-&+A#L#U%;2*S@+YG(+-698XV4<+>DJ6_(HZV/NOV<94@!/_!:P+ M@ ZW<(^3=Z1$T/S$_>.Y%O^N$.UJY#Q(1 'JI]:@AX+1%G=-MW@$B MV\XV0)>JJ@#(8%EDD*B?^$M^@+WC^ QH!+@YG0\]%:A^(YY6%O4W-#]P+VV_ MV\$VY;I@J(6]P=H&[K4!?$)N@NB"-QVO [RCJCLD!I3\*F+=2503JAM28 ", M)*4024#EG">?JN13UM5W<(;7J>"&(K.I4&YFA..6#@K*E'HR0VD+!K;=XIZ.;@P"/V_X5S -<' MO0!,-1M9#)Q8]!-T04;*C0$^ M>V>M:I9V5$$T7D$4W1VU'A9.J,3#[W;7\;/=4-E"U9M]+\F[H$R1AZKH@VU64BAQ#1 MC>2N/,0# 20+&6FH/8Z9T(_"U9FYJI[W@L;CM@U"00[_8UVBXA!: )-F3VA9 MY;5E]NO@[+=$UAF,:^P&'"5;#6^'&5[>37^03&OW88 M_WH297] YL2B$_;W@X/D!V!T34^@'*.#?WI2I@[3-&0RH=G!>.COL@@&>W4N M,^TF)0=-<*VL<)#C!:_+?;\S>_[2RW[0]6!OM![*:R=8U'M+$PR_7:: E9E! MGBP"J[&L&J$+#=1>](T 3R.Z6(EV&NQ_/G):')C;NR[<7!OL+DWRWJKXO@<, MI9.@W9Y4AO00V0I.DB)RP.>#C0,9@O[],VJ<2]%A&G)K@-IB"B#3"12Z<"AT M,\EDX10;MBJYX@D+&LB]JOF84G?WCWX08?ZAL2$.2%!8DXSC G*";R M.R+2D3;HI8/8J'7?'(S C2RT-GD D/;).PWB0P=UN/ WBR=<3V\E#M4H.$_YDQ"S[RPJ(&P42=3 M^ 2,Z"5.RD<6#99=D@A_W'V.IAF[;T:V'WL6U48E+7./QC#<#R&J;(VB&S0! MA8O2@!UW^QWS;;WMT" 72#\ ?]Q0;">E,S3HU&=.S;A YA"(<@.'^:,G@Y^N MEQTG7G4^RD?'8/OXK9$2[/ KGT:N7R,C"@?D=7_7K?K2KR0J!X)@/[J^HV"Z M6R2\P'IDX'$M.EZ/P7),8WC2"9?A M":O:[X>Z V;\KSW7\DGG@G\GMO'_XX86C/E(R6S'.@7 +XH.(HP. MD4-+C">,%=7;(D.' ?LOZ?$J?T6C(X?8KF\RY[Z;C/!@($(#5"@Z*E1G G$) M--:7.9M"!M5*2R$YDP,@0*NT3(QU-;J*C[("3?>EJ#!>Q0 KFCCIE-IWZ=2^ MRVG-#34;G)[^"/QN8TK@7YP*3"Y5I$(=BO@AR(TUN7I$]19#%OB@!=:4H[\5 M8$TA*>2TPIPYJ*KKT1_6KS<%ERL'EZO)PWRH,%Y2-T>R,Y[\Q2\$ALTFO90TE9X MZ5 ;V1I4#0-W>IT\P.V*7Y$\XVY:C9Z8^"S']BI"#W&(URQ@R:SS[H\'(CU: MG;0V#<%+#!DCXI[R @?$!S;6;YWW89Y<*UW[-?WT3L[Z\)LCX3_ZG%('8 ]K MTQ"?$[]S#F(>K5OX3R#M-2.V>X$:]G!9%*[RFI77N:;0>W'BL[1.)G$4O7&V MZ?9I\DNIR0/O-8MC-!WKGY@O\;_NW*\^9R3&:L8FKYV2VZDB0R]R/+KG1:'$ M"R:U&F,N@&IA3@HJX>K*1B($NS0+'>VJ/3L-SK%LL=V'/'J$&^,A[PM*+B3- M$MUT,$*7P0R;!EF7][QB$!#=S#,26%O;;>J<927^VK<6%=.RN/<"26)PZ%LR MH-(BCOYD 0\W-> D$ (F&8G5VY 1TG3%_S*6FL%RQ!'\:N0 8>IS(K,L5I8R MLT"['=M"B4M3^*QEL4KVLZV,6@: M>5<)+E$@W<,#L:/DP/J2C+,4K2PX$%P'QUM=!&_XA)IJ;9RXY,"]\L$A9&,2 MF!)U@JEXD@2#1,G%),G\HZYS#"B-4MO3'HVL ?;LDH, 3M4*3V'D5[D)6!!X M=+UYO-8)?.*VY 09&SEN&Q[U V>B#$.Y MPV?F)QK+')LC1*N"1,H .B]C\&!8C0TSM^T5ATI@->9Z5=6S^PJ)DP(['4=J M81Q\A)7D,Y/J"\[2 (F.>I%N=56C+Q#'(_F^I&W>V>X!_>^\@FX%M5Y. TGJ M#&B.-*NL:+)^B\HXY5HQKA/*L)S;HG>G++Y82BZ""9!;LOD] CMT[B P8 <@ MR]DA'MGY\\1A+CK%K7,3A'#IY/(QJ(1/]A6:\!A$)3VETKPRE[?#QPRFP(EC MA61C&$EJEY3 D RFBN\ S]&VK&4HN@EJ!NDV%/[]0J,EZ-R*I1)#2(HPD#I6-WYO-\XAL;PCE2\J(+ M9&8Q3SZL1"HH #?DCW\P-NY_,U MW?['C?M/XQPM"7)O03TQJ">BF@J2?RA A5D [%1^Y)&$1F4Q/ *+NTCP.X4Q MYE;#*_"NUJ$7$_> 5^*O\,BJ@0I,'!1/0,)VS#G*CNA6/6ERMFDTH:MHHSNS MSGO:4MR;W) 177!RBLA> +4B,*>[AG.AE1^J@'HYQZ=34P23A%G1MJ;!F5M" MV! EG2L6T+6PB'A=ZT8G-04E\$89D8\O2=IDN102G)L[>Y.ID(C;=*#<6A>L4SU&;AN5%FV$F+@X)UARR1AQ=?NV#R[?F1TL2*TQ#2: MK)"\";!4])/3_5I/GL!MD-5)RN.]W8O>2KE#',O$/ HUYQ2/ S52R+Q"+LS* M%X4MQ!PULG/>) P=!'U:Z?KYTV\NT95E8GKP M(!:L8*B 7%AXUJJN9AK7F1BLC"!*\Y"00D(%9AA8*-A]39D:]V'I=?)B-/ ML3-[-=H+<@Y0[-:M".K+ ,C!T3A7S6\! 1C0=;^KI?P$0*,*E3]+I)+HWB.> M.]BA,YH\+ @_M^)>&SNW7&U>2U*-Y$]7CM;8Q8.2!:/I,8K[M*B>\)HC=(V5 M9/.[N@&&1!(/HZ^QBN64F48BLVX=3J+ 63$8AB)$G WD::S5L30" M?W<^PZK>N0Q0#N:KXX<2N((#LM.F$XV_K7$O>Z>A#;TN+.'L5TRB;$5[J84A M$W]WSJ 5^?DC$!:1B'KMD4ZJ=$-ARHP11R&K-('5XYR(5#:2JK5 MTN M.6J#1/Y[&Y8#1FPI2AU[/.5KX(#%J).W*)S3X,#LH2UI$ +A)@04]R<#%Y70L%&)NIN&Q6V:R[$05 M^718:1GF"XCJP4 YO@TY2N X)>32$*,D/P3^.)^!UJE#G&PWS&]VNQ9N1C%_! .<-,90^?/%Q7SI\O[QTI\O3N>O M_3?'4O@XYNX]SN5^GDS1CB]P7DS7*7\. ]S_5>'H//DX M(:1]*)\4"!&'3A$9JQ\^K#<5&*@QKB<=.(ZQ!E)*<:Q;F)=ZK%#U*16ELJ_9 MIJ9:B(B@ 7X$>J1:9Z9YL <\_+?;X^[N'ZYOW[HEUWW!N6I$1'R6P'%]X#T, M:98+RUG N8?%_F?B/TP_BVP#"JS2_.&TG&.FM2UH:W0EXU-D9:!E&*;).$YXG>ST,1A/2653_4 E$]RE/;]:-%>E,#4;8;>L+#BFU MM-FJ.N?M>42'C+BV=SG%!]&,%D]&QI?XSY.WDHL\!4))D@C2\C!(O]]A1+CD M(A#41:MU&< FW@6#(N_C]AZ;\S:2(7G!"^ MPAA=)S"H98L7"7=7%V+%%5NK)(+W1'X0%JBA,&5-F2>EHB< [*Y3$:A'3U$. M21ZJ2.0H=!F8_W_Y:,/V"./5ZQ%;]R;,%!2\@U8>IFBF\KLYE153)D&Y'S)K M#2R/J2$!Y%*N!''DXNB8GSP*5-&AZS?\'31$^P"2A@V(5&MN6JDV$2,C=QDE MLB$^V8Q$_.2+<4/^E T:>@1"=Z/$'\*]PW4>;4T8"6FAM.O44NM.,"P3']+4!^KDT+ M+/-,$TK&A*/4>6L/!^&NL(^N.E.ZJD@8&KOX M4_&Q/\Z8#LP6[+BR:R4##;4IK05/KF]ODM+D]GR?+:X?(L2$&YI:-%I M9BSE_V'(=?PTR&/QMMAJ)G6D1)M2B65+GI?::7?T/2I_L-5:@I&="\U$T:!1 M ]CM8F61H7$P6.H=(L^).6B;HCBI_ H0B7LDY/[:'YDB2N0;%^.1> 16ZW6P M7T2'B%@O*RF/M[/1:7E1MPC>#K%65S3&H2$*(.//6'#0?D,E+">GW_[M__]O M8A3OQQD%\PGB$2_(L@&C"([:OOS;EC\.4AWQ/%E>+M*K\[/@F]/%57JRN J^ M65Q>I!=75\-+2.06=.!%>G*Q<)]>I\N3U^[367IU=@4XC8[A<'%8:GD>+KX\ M3Y?1-XNK97IQ=CGE6_#5QXOI^F')(_W5?#WB37CZXQ$K0?,)OB2!BD[%GK)G M75\T+3:%,0E;UF:%Y@ZGKG( E 9P%%7R;D:J;M& P$)MZ?&@RB*[$&[$3QY%9/6;]JV!WT$O(,P2CIS#^.)).:"GNHP)N;DH+9M">X MV@>6M]\("]6 MKG62)FI1N-O=A/3W.$C=R 35T5WX/L>$Z>8ZQ;XQ+&^ M@H+HN.$'ZEVDVO#/GW[R77%BO:B;EB.!0T)<2VHRZ\6+8SQ,5WBT$"=TZXBX MD.2"=O3:2!$:SSE 1XD0AV:;Q]C',2%$XZ:5Y A*W=+,MF'9(%S2\\7Y?.&U M++J YXM%X/=TT^5!D@:EI;%K$/T-FJ[12K[&,G7"TU>,/3^=G[M9PQ9/W:9H M)*@5)7^XV31WVB5RL9-Z]$Q2]83%;+:AOH2(5Z:-]4#)JO'V)_8.8F66*@Q= M/QJPBV9X.WSU?*-,Y)&K8HBOSY=77GD%%22G@ SBID^? )N+#$$3=#H8GVT$ M3\AHNR.CB^XLRA<6M*7SR"2#@TB&CJ5\$>E^V(68'U_=R :>5FT74<#&8%1^ M T3.QN%@5*)I/8G\OL('PWQ<8H*_T198+33EILTP8%I-61H45^?YXOYI2<< M8!Y%(PD\6$(/&@S#?Y[\;J5:EL-_2-7%!A1;O0../H: 5\Z(S1[[9IR[2SHN MTDFY9_MNH-1+@S7, 7.!3YA 2P$P=PVS4_;D=PC3W"3'Y%CJ$_EK?981N67L M5]_I4 P$6(OT?FG650P+-(^:CD]"M:'3GE9!C3MZY83+>9 M$'T'VSS!%K;B5O/E8\DM&"%'-*F_96;,#\P+[)J*5=$9C_3E9&#NT*@7\HM\ MI+Q :L:JL6U$*0ZBOQ1:4QKJ,%#>@T@%"RK[HHJ*1 *U[J2(DC <"Z2=>=T% M#T,[4",$63>LY<;+]BB %"4;^(XC?A)JC>M,E.1%CLD0C32E5$OA7V>YC%LR M([BK P86S<_^2%Z5/U^FR[.+4+<_.4TO3Q:1_I\NSZ_^]NW_3@V[D<%R#X>D MZND$_E9(8BR^)9Z2>;/E/#V]/$_/3D_]5V#*7)VDBQ-O,YV=IA>O8=39J>)M MD*>DV1LZ&,TML&BN+CWHTL7B,KU:G 7?7%[ RA=73]AX6+"KAU#,=!N\2$]/ M+]/EZ2+\:G&"AI[?Q]GK]/7920I:I/MJH/,]U>F5.MM$3V_6ZX9R8F&V!2Q] M :QM>9F>O;[@A]+SR]/T'%"(3Q5'EM.P<=%7T2==_#,S9=:7!U2I$P5=7K ^ MS6G F"[.M;XN)1LSWF?*;R99J&_=LIANO_+>:2CDQ2C:+^/L\D_/PAY6:F7E MCGZD3Q.R,JJDZ#B,.M;/:KSQU5B7JSA<*JF3-MI@F)@]['"@WBAGZO(:[9$N MIZP?UQW(X*$'WK?5X.>#(_CML-QV/0$])P_AQKKQG^DP.[!_.:V37YM BKFK M#Q9KBWS79(9Y0*'%8W*0%C_6#VAMI'(./X23C24LK&6/F.^ZN#Y\$$:*%,+R'6@ZF8XNB)RX#@4V'N>9Z=5K>1,7A47\QSB'# M..$1!\%=W6U/%1FF@[ODB^([\8S)%="[@=@MBIOJ3C=5 M(3+45S$4U7U=8F0HJ [4(N8V]1J@3P(.U@MO@7T49!][NZD:KV26MA$.J.Q( M/R3LQJI6JN6Y+O/0!OTIHYJI5.PLYX)BVY *C\@0H+ -7NG6?$%0N-,FYDZ[ M)(VT-COF>KEF]-4%$=D'5Q41 ^_:$]A1U!CUT9MXL7"AB6+T00&+-C/Q]2E/ M;%1!_46-H'R/%R?=!2*7C[.1(EP(0KLI]3]!CH!M CE(@G/4$:""0!Y5I$QW M[TF#O@+:$">-BUL?H=S?47:)7B!!D_&66X/C>F&PL4$;V,>Z#3G7"3&M@$JX M%8#VB<<.9J 5$09*>JQKP:7NH$$_']^$$()!+)>M1@>Q8Q=(6PMY8[BO M($O'=3UV(<#( $&3..P"$?66H!;-(\T>L#Y?@1DSFF$7?>-?O)%HP3_W:,,F M##UA$7,N9K9.\9!?!V4Z4888DX@H& 3$PT*K&^_,#G?I6LI(S^W##N1!TW%? MBH'Q/1G9U'5I00X& S^Y@0=9 )2? JA(&.HSVVBR;%/6\>)!R_,;OWQ*W5X9 M5,,GW /1^&@;Q(88G8X_V%1I'57&(BKL'RQ\R(1\* 63TI8=<*!ZC@3IHU?QN((7TME M]9FI"B%]6X_K)NCT'VEKL0];@J_"'MP'=8#,J[RV[B-_PS!7'(V/5@AZ+1X3 MX",K>'_NP9US5_*C/*T=6F-<>)SU7.ETK /#B"$PSCNB..2_F#5,^2I\O['% M=)>P#[X*%6[HI[I:STK*S[@FQ7K4;S$YXWCIRB/+C#8\+?THT?('G2DP70U- M*VW4@+?G=8GX(K'C=A:]8&6L*:D6DJIM+"7[:+Y1"/*S?G"JG38N(#-H8TN. M[G&] )@=Y&BVTL^4G U-T09YOX=[<.%T]R8?X2.HCU%KM14YAUWK55Y:$_B= MH*,Y@NX08B?%3FY^ED&JK2+"ZO)ZT+1@<"3OV\%//O%]^EAA@X/#HG*-N5V' M@.77BEG.)FB"G(EAU[71U9MPF>!U2MR@"HO)ILM8?).ZQ72CN1NS*SHIU;BM M5]T#[O4==DJI.0&8.C.-TM3?,7$2#E.'"Y47M_H,2[W@'5[\!>:(:YHZ=P^@ MJ=US;)FX6:2K*EX(""**F=7?@U>>S) [(LZSZ?L7$EJ?JN,X7$14BG MH""@?U77 UZF'DFVJOVIPJ!H,*5NG7,O._2>F^#];-P5DB:2XI+QBN:4R$V& MX*:F2ING7G;I&\ MIQNV?29%*7H=);]2B\M51['FGYR2\\1!D<8\<29^+*71 M=T%=W_Z6_%S/Z=?9XC1-/C+I*Q>7+N,_P!1G M!T4M@JEM[FCS>KD:>HU8!C?H7O_U,[9:+"[3D;-CZ1T;CJS 9**09F:V\_FXCF>"FD7H^+!34;Q+W0B)N M>( 1>G@ZS'92B<"PH^Y&3G,] *L+(6NSZ7$X4V-$>EF:KV=6\4 =OKGJ17W? M,_@THQQT:L/?XFLZ@V0H/)#N/-B>;U2N&WS16%_W9+10B37BL:;CZ,_&W;ST MA6$U5T<%>5PL49P ,UW04(BD 9G8&L3JN$51@,A!AV[V0CEEW;NA8%A9&TPY M0&5@UM4S]Q*# 412"0%'7>R#&NAZM9H)HYFQV+BJNI:(<1&'5%*_QTZ:JW6-: MALFEE=<.[;:.WC'R7MT"++)]QRE#UE^([V$U)C=M;"77V"4HS415#GI_4A:/ M)&>XCD'&!2O\L5WT I.Y? (?'Q'A[G47QY\P%H^'&KPM1;\AU>4@ M YL8/I,7.>F90^M ^P=5VDI;!>U*C;%'O+P">?MVO\N/SU4E/T!I.$GO5RB>:UFM$WB;ZM43BK%U9+D<-W:LJN3VOB6A[G280=K)@6>0LU6$T ) MLVE;;/9[\-80U'1R?U^CJ=\CNV&40XQQAPVO:,C@>0%"EOP!^DR;%_Z-A0-HJHM.,PGD M13N#;I,!)'\5"-"=Y[;-FN*.XI;N/7YH7(X>+,Q\!HN?6Q4'[#YP*Q/GELQ_ MW34NX>O: )!&',P8@FA;34O8&)0VP&ZH2-5[UCFWT*5&T%-!QD%3K-?L==D$ M[T@)"X.'>.MCB5Q/)JD\7EDY>* (,I<4U%,M\(T/$+QRQ"]*-W M09&:E?156&[@:QSH?7/:;-4%K M;J.)D6KU>STNE]9*QY1AZ9NHPM2LKBIB&,)>P98%W+Y[G0VXE97(=2VE92@(-V(;TNJ';N.,I2 M!P(A VDF[6[#0B5\58$-@]]IXL 4YO!Q#7BP^-X3O&]'$.2VL81U*7RT13FW MI"U@7OR.WHDQF+AH(]N/)T"-C>UPX@<"0;@**@9HN.[)!Z(_O?LH'=5J"43Y M9X*"TGB_EW06[]\N*+/.L/WR[0*IN M!?U$#E7MU2"AOM3++P)[KF]#T-XI8?1"^T^!J>(\!9WR">GC)Y$JBGUO:Y*H M>)L!V@;,GD\1/PE4Z1/+H>;^P$#/9C>F&ULK59MCYLX$/XK%CU5K60MV$" W232;GNGNP\]19N] MJ^ZC Y-@%7#.-IOVW]\8$B#7;%2I^P7L\;P\\^;Q_*#T%U,"6/*UKAJS\$IK M][>^;_(2:F%NU!X:/-DJ70N+6[WSS5Z#*#JANO)Y$,S\6LC&6\X[VDHOYZJU ME6Q@I8EIZUKH;P]0J"#JC[+PI8++_5( 5O15O91'7Z'HS\=P%Q5 MION20\^;S#R2M\:J^BB,"&K9]'_Q]1B'B4 :O"# CP*\P]T;ZE!^%%8LYUH= MB';4M=5X*E'.+M=],HC:DK7<-7(K<]%8SWV+AIVXGQ^-//1&^ M&&">?5&-+0WYM"BC.%?B(>(#- M3[ ?^%6-'R&_(2&CA <\O*(O',(0=OK"GP[#)>][W=%EW:ZM;LU>Y+#PL&\, MZ&?PEF_?L%EP=P5Y-""/KFE?KK%-B[8"!WVE5='FEHBFP(:IA(6"&($YZRB/ ML-5R!QH=6\L"R!J1R!P/-3Q#TUYV[;KQMV]2'H1WY+7__X#0QV(AF&JH-Z"' M=+L/=Q]&WLF&V%*U!OTS[U_-_,MQ/''\0GC*:!9'$TK(,AJP;$)A:4*3+/LN M\IC\)!K-)31(V+";41[,AEU$LR@C3\J*ZLPXFN+QU#B/*3^CL(S3)$JOE%@\ ME%C\PR6F(5=-+BLINDL5*:846-6D-1@DJ_!&M*#QH@+2X$B13:YJ('M,7\=W MJ<2N&W\JX6>-$HD-8,A653B"\!XK<.'JZZQX;E^]B*\7-WQ?W">&_Q7YGZ-+ M8W9C3GF43-,=A#0-V%E)4!YGKP[_8LBF)!:[W M1QS1C,ZB@*:<7^H_?S*O:]"[[E5B2#=K^M$]4(>'SWT_[T?V_M7T2>B=Q)!4 ML$71X";!;M+]2Z3?6+7OIO]&67Q+=,L2'V^@'0.>;Y6RIXTS,#P'E_\!4$L# M!!0 ( !>(;E@#(6184 , - ) 9 >&PO=V]R:W-H965T)XN@3PE!!L(1 L>_:W@.649 F,;7&C-H0I)C>[U'?^EK MQUK6W,)SG7V6B4L7P31@"6QXF;D/>O<*ZGI\@D)GUO^R764[F05,E-;IO';& M#'*IJG]^4_>AY3#MW^,0UPZQS[L*Y+,\YXXOYT;OF"%K1*.%+]5[8W)2T:9< M.H-?)?JYY97A"6!OA"Z5L]AF ?*:KS-@3YE"3G2N2+#=>>@P&OF$HD9>5',$;-+4//-[@ MSVH_5'(%.#P,2 -T:@LN8!'@A%@PUQ LGSR*QOVS(^D.FW2'Q]"7ESB028G9 MZ0T3*5=;L$PJYE) 7F9<"?_E0#F'"CD>Z@HQ:>ZEVC*N$B8R;6G=BD-AA3,'FRE1+5E&YWA^-M31K;]P=D__U_!5BJ?_U[S6@D\M2P\'*(N M=B]WD'\>H=MK=$AMBK$W[?C]T*7%IMDNXXZ]X:K$PXY%[!U.$RH0!/(U&"2R MYW$#]1C%WG02MQ3#7CR;M U&O6@\([>V581F=W#&O?%P]A/N$0:.&@:.'LQ M?YQ*=\NT$*4QU(6:C#7S:=,-X[3OOC+V4+"G&Y4 MY[CQXFZTW^#^^P(,K[RIJ^]Q/\POAB'JS>(V]\>C-J4[HUGITE;ZD2#J'M?P$/#$K9NV1RP0?26L,P?>=6%VVB;Y\JSZI;^;EZ]==YB M?R4V(X,-NO9/)LA[4[T?*L'IPM_9:^WP!>"7*3ZYP) !?M]H[?8"!6@><(;EC1-D[^? ( /\% 9 >&PO=V]R:W-H965TNZ5QJRG0:"S$BNJ MS^4:A=TII*JHL4NU"O1:(.FLB=VI="9KPYG .P6ZKBJJ M7A;(Y7;N#;U]X)ZM2N,"03I;TQ4^H/FVOE-V%70L.:M0:"8%*"SFWN5PNHA= M?I/PG>%6'\S!5;*4\LDM;O*Y%SI!R#$SCH':88-7R+DCLC)^[3B][D@'/)SO MV3\WM=M:EE3CE>0_6&[*N3?Q(,>"UMS?OJBK,VKXHK_7>:R\%AP?![O& MF.HUS7#NV9>O46W02T]/AJ/PHD=:W$F+^]C3!]MH>G)A(31 M!?ROT=X!5DM4S3WT!MTEN0^! 1-@2EEK*G)]]L]'WF.AV H5%4:#I8#LQ5:9 MH])=R@<8)A_]41*_B1!_$H?P%;6>@K!>9@V*L]_N/<.&\AJ!YC]M-UD[,:]4 M@\0G8?RJ#Y./%"MW;0+(]=-BR^EL8;13$OK MT*A<@MTOI#3[A3N@\_ST#U!+ P04 " 7B&Y8@FM>J80# !-"0 &0 M 'AL+W=O5U#*W<()G,/$5[XMC)WPEO.:;>$)S)_U MHT++ZUER7H'07 JB8+-P;H/K563]6X?O''9Z-"8VD[64/ZSQ1[YP?"L(2LB, M96#X>H8[*$M+A#)^[CF=/J0%CL<']L]M[IC+FFFXD^5?/#?%PDD=DL.&-:7Y M*G>_PSZ?V/)ELM3MD^PZWSAR2-9H(ZL]&!547'1O]K)?AQ$@]4\ Z!Y 6]U= MH%;E)V;875)73)A"!,Y M@9\-KW'A#;GXQM8EZ,NY9S"617C9GG?5\=(3O $E7Z0PA2;W(H?\F,!#D;U2 M>E"ZHF<9/T%V1<+ )=2GX1F^L,\\;/G"?Y/Y1PEW=-''=+9XKG7-,E@X6!T: MU#,XR]]^":;^S1FQ42\V.L>^?,)BS)L2B-P0/-%6HK;C^I\F<3;,J212ZH&8SE"3O!(0+4&U1\+^Z#D >M?,)@=C:>3P">OP)1&V*KA9<[%=G /W"B: MOK%H/ EG[S GPKG1-!E9X>PM_NX5CTL.:A0S="GUQV88Q"1 U*#T_MT:T1F2 M#Z%H@DN1DG"K4I\-(XG2<_P'0J>X=4U6I%DYH^M M),28<0]X8.MV3S-9U8W!F/WFND3+C=DQ-8KLTC <68&/1V^2]F2?&R6X:2R" M5?4-V? 7:PUJ9B-X&ODH?93]@\VRD.6)@Y%.A[33F!YE<2>%-JII.]Z$BPF> MVBW&'<#43:-HI#Q&(4_-VDB[O(?I>.;ZZ> 5)V[DQRA+ZVMRFV5-U91M_>6 MMT3&6=M?#]X7X4=<#O&RG-P; !^C^HY=]02P,$% @ %XAN6&XAL<12 M! ?@P !D !X;"]W;W)K&ULM5=M;]LV$/XK MA+H6"6!;+[8E.;$--&F'#6BPH,G6S[1TLHE2I$92&\\+_=2?=<[ $,>2R[TRML94UWXOLYV4%(]D14(_%)(55*#2[7U=:6 MYDZIY'X4!+%?4B:\]=+);M5Z*6O#F8!;171=EE0]70&7^Y47>JW@*]ONC!7X MZV5%MW 'YL_J5N'*[U!R5H+03 JBH%AY'\.+J\3N=QO^8K#7O3FQ-]E(^=TN M?L]77F ) 8?,6 2*PP-< ^<6"&G\?<#TNB.M8G_>HO_J[HYWV5 -UY)_8[G9 MK;S4(SD4M.;FJ]S_!H?[S"U>)KEVOV3?[$UP/='.18?J*&KI=*[HFRNQ'-3MQ5G3:28\(ZY^05#[R<\. %<-0/0*0!B1&RG,3I//(H?\)8"/;#I*44OI*AI$ M_ 39A$S#$8F":#J -^VN.'5XT\$KGKI9HS<[K6?3X4)7-(.5A_&N03V M_[P M+HR#RP%6LX[5; A]?8?IE=<UR)G.K,DA_]%TG>,[ MO60T7RS0%AJ]5U:UU6&HB1XUW9ZS11B>D]O&R^2!\MJ%U8_8G-$-X\PP>(;_ MA<2C.$T' GK>!?3\S0&]H9R*#$CSKF2<:LT*EC6!UP5YC\^I.!\^[F>1]+/Q M.)SP)R+7M5+6B,<6.U.0294[^Y./6:9JG,(COHXNXC%Y).:&PJ)]0'C6/>^9 M.QREB_3%VL;>%RFV8_1J.>"J=IR-DD70K>:C)&XCZU\XO+=.1K,H'@B N N M^,T!T)BB7VZ.X_&DTX>/^(^=W7[^YMYNR,?T 1EN ;L-V\^X FI]@K0O!]P2-(Y)'FS0^[JJN)@ M2PO&25?;7=@**<9.TG>7 DYMK3%RP%G#Q_]?&6JI5I3ESHC-VV5?MHS7A^0L MD7"MW&5/%IN+HZ/^Z%SQ;!KWVKWJ=9NX21KUUM%HCFGENEHREL6XQD.Q[@&2 MDQN#X=20@\=L1\6V"0&!7>O;DA:?G"AX<5H\7[3K4['B]WK"$M36=;Z:N!AL MVL-.VC77'YN>\GE[TYG?4+5E0B._ E6#28*5637=;K,PLG(=YD8:[%?==(=_ M$$#9#?B]D-*T"WM ]Y=C_0]02P,$% @ %XAN6-<4I)VM! \PX !D M !X;"]W;W)K&ULK5=;X;$( &V M4\6C7D[2[LX\R'-M, +F2B)/]]7LD,)!-[+B;/'"1..?3=ZY"DXV0 MMVH%H,E]GA7JU%EIO3X9#%2\@IRK8[&& K\LA,RYQJ%<#M1: D^L4IX-J.=% M@YRGA3.=V+F9G$Y$J;.T@)DDJLQS+A_.(!.;4\=WMA/7Z7*ES<1@.EGS)=R M_K&>21P-&I0DS:%0J2B(A,6I\]D_.8N,O!7X,X6-ZKP38\EU'PY1H+4"M;RK MA2S+"Z[Y="+%AD@CC6CFQ9IJM9%<6IB@W&B)7U/4T].K(A8Y$,WO09'>=S[/ M0/4G XW01F 0US!G%0S= >-3\E44>J7(99% \AA@@)P:8G1+[(SN1;R ^)@P MWR74HVP/'FL,91:/'6#H<_95VL'SVJ8T3M2:QW#J8.XKD'?@3#^^\R/OTQYN M0<,MV(<^O<%22\H,B%B0M11WJ4UYK#B2OL!Z/^['=R/JL4_DK9]_ Y=UI G& M"?(YR"96YD;-S2>]M"!Z)4K%BT3UWYS&6SW/2RFAT"<[!;Y I)GS?@]\3V7 M^>/NA.^.QV%G(@@9N=%< T'C22;BCCYUQX'7&8U8J\E"[\GZ/G-IV*[F!ZC1 M2HT\AE%8 !J1[+;A)9N8&T7#9M1CE+4!H_AEERU1T-'R79]&K=[PJ2D!^BWH M*@3!N%5@;$@N[W'#4? D_;O.'KKAD'4GF,M&?G?"]0-O3V6&366&!U>FA%@4 M<9JEW.XG.*-70,Y%ON;%PV_*;# E.@;)$FE\I845^'%\<]QX6Z$72RWD@Q5Y MKJ+W\WG;"H87*[CMFI:P^M\+'MD$JDRW'EG4'K&NPI4^=&Y'=;9UP^^2 G]1 MT.E;Q3D4L$@U"5#!7)Y5O+R/02E+N!90&+@,T1(3$-Q/XUN"J";'JCCV_#YJ MUO>@;U'\B.8D2_-45S)-Y>%7K5#/5[Q8&JO( M'<_*"IEG^%O$BQ@J29]59&J-/S"!)-&RA*-R_0BWXOM?'M^%1L_0T- T/!GY ML*<(HJ8(HH.+P 0AJ9M-)SZ$*P7HZAY6QQQ+1*<[?B/VK_3:M-Z1RJ_AAW?=-F&NJ[\(V^824<[UHLRPA<2B+'2WUP7C86<4>A[J7A5WN%_9+E*C M--UXU$K[KA>$Y.@;9ME/;$SI(D43J@(0:Y-\[3(A;7<7-F*XQ$4;8PVXBGYD M0C?GJ!MAUSXBG^,8\S0A4/7O%GQ$6TK>L,[1B]TYU.WBP\=[JAL-Z2N2HQ/& M3OA^/7J'1_D"\'2RD#U-T%[@CGW<5RO7)3OL M^&6X;]U:W@7VWHB'X:C?G:%!T'^NL0PZ!Y$MQ2Q25V=29K9YD3WN3K( MM.+5(;EA'*;ER.@, ,D) 9 >&PO=V]R M:W-H965T"W5@RX #/E1'[.BN@I/I<5B#PSU*JDAH4U2^U$0#/R2,N%-QTYWJZ9C M61O.!-PJHNNRI.KI"KA<3[S0VRKNV*HP5N%/QQ5=P3V8+]6M0LEO47)6@M!, M"J)@.?%FX<558NV=P5<&:]V9$QO)0LH'*USG$R^PA(!#9BP"Q>$1YL"Y!4(: MWS>87KND=>S.M^CO7>P8RX)JF$O^C>6FF'A#C^2PI#4W=W+]$3;Q]"U>)KEV M7[)N;).!1[):&UENG)%!R40STA^;?>@X#(,##M'&(7*\FX4%@?&M0C>--7+\)!<'F$ M;=*R38ZA3^^Q'/,:Z+=TCM,3)S^8 <3IKVP'^[$I)<$ MHX/&^'<4=GV#P8C,%A@ZWC/J 0^0 UY[FH2[@NH/TEUQI9WY*-AO$W?(QGWR M61K*"WSV'3N4EB:/>:)1V%.&P%T6#KB+II6EXU*7?2^*XJTAQ M7Y)]G=KO7*]X(BOWB-"8#9CNS4W;:MMWRJRYGG?FS2/GAJH5$QJW=(FNP7G: M]XAJ'@Z-8&3E+NN%-'C\;EK@6PN4-<#_2RG-5K +M*^WZ2]02P,$% @ M%XAN6,XB97V8 @ 708 !D !X;"]W;W)K&UL MK5513]LP$/XKIS AD"J2.&W:0AN)PJ9-&AH"MCV[R;6Q<.+,=BC\^YV3-LT$ M]&';2^([W_?==W;N,MLH_6AR1 O/A2S-W,NMKP77)1>,FM\MSJ9J=I*4>*M!E,7!=X M$^O<.H>?S"J^QGNTWZM;39;?L62BP-((58+&U=R[#,\70Q??!/P0N#&]-;A* MEDH].N-+-O<")P@EIM8Q<'H]X15*Z8A(QJ\MI]>E=,#^>L?^J:F=:EER@U=* M_A29S>?>Q(,,5[R6]DYM/N.VGI'C2Y4TS1,V;6P\\B"MC57%%DP*"E&V;_Z\ M/8<>8!*\ V!; &MTMXD:E=?<\F2FU0:TBR8VMVA*;= D3I3N4NZMIEU!.)M< MIJFN,0-\IFLV:("7&2B;HZ;L6F-I00J^%%)80;LG#WPIT9S.?$O)'86?;A,M MVD3LG40A@QM5VMS QS+#[$\"GU1WTME.^H(=9+S&] RB< L8-$!OJ@[BJCA MB_[+4;QU BW_\&U^UU[GIN(ISCWJ'X/Z";WD^"B,@XL#ZH>=^N$A]N2>VC6K M)8):@'TU8$%W W[[I_K!8DIHHA/82W8/!B2C!YJHVI->< MOH*]NJ;=Q@<(V8"-XKXC',33&*Y>2'M&F3*LE!%VCPG' \9&>S,:Q-$$OB+U M.:BE%&ON9D+B/68:C.!!62Y[,NDC'D7CGH.-!]-@ MLG.\]77XO98O4*^;P68@575IV^[OO-WLO&Q'QCZ\';PW7*\%U2AQ1=#@;$RC M2K?#K#6LJIH!LE26QE&SS&G^HW8!M+]2RNX,EZ#[HR2_ 5!+ P04 " 7 MB&Y8\' 'DNH" 5" &0 'AL+W=OY-!:.G=E."_]^MM-F+7UA MXTOL.]\]]]S9/F>X$/)9Y8@:7@K&U"@JS2C'!PFJ*@HB7R^1B<7(ZW@KQ2.= MY=HJ_/&P)#."?:+ MICH?>3T/4LQ(Q?2C6'S#93ZQQ4L$4^X+B]JV&WJ05$J+8NEL&!24UR-Y6=9A MS:$7['$(EPZAXUT'A@<1KS$YA:C3@C (HP-X49-YY/"BCV2^*^$:KKL;SEZ> MOBI)@B//W Z%^.A3YRP8'"#;;+L7>*'H8\^ M]<(@&L!'1[,O6$Q1-GMC/R$<4PXZ%Y4R'-7)?Z.N[M^+QW\G[)HE[K2R_^\(E^R!GE"AAFQC4X/8\]D/4C5 M:E*[Q M3X4VSXB;YN;=1FD-S'HFA%X)-D#S)S#^ U!+ P04 " 7B&Y8'% #MH,# M !"" &0 'AL+W=O3=NC9V!QP%V#F(- MGGWT[*ZTRV2K]*/)$2T\%4*::9!;6UZ'H4ES+)BY4"5*VEDK73!+4[T)3:F1 M9=ZH$&$<1<.P8%P&LXE?N]>SB:JLX!+O-9BJ*)C>S5&H[33H!_N%)=_DUBV$ MLTG)-KA"^T]YKVD6MBP9+U :KB1H7$^#F_[U?.#P'O OQZWIC,%Y\J#4HYN\ MS:9!Y 2AP-0Z!D:?+[A (1P1R?C<< ;MDF,&%$I]X9O-I M, X@PS6KA%VJ[5_8^'/I^%(EC/^%;8U-K@)(*V-5T1B3@H++^LN>FCAT#,;1 M"8.X,8B][OH@K_(-LVPVT6H+VJ&)S0V\J]Z:Q''IDK*RFG8YV=G90A4%MQ1E M:X#)#%(E+9<;E"E' Z\^L@>!YM=):.DL9Q&F#>^\YHU/\/9C>$]4N8%;F6%V M2!"2R%9IO%=+?L3S8P[7=(/C=.[Q7)N2 MI3@-Z'48U%\PF+U\T1]&K\^(';1B!^?89RMZC%DE$-2:GH*T@$_T+ T>TWF> MZ6..0*Z73.Z@LESPKY1G@72Q,UBSE!:LR[R+"+U\S2Q-\'/%2QW3R5WZJE"W*FT'NSWEL[E_82>%\*<6=I? MDG?8(WS%#6>2M9A?((EZ413!)57%> "+G%&D^4;VX*V@3"@*P#-V&%UY<#\^ MC7X5 V6BPS^H;?8K5\YTZ$RU4-:2JK^5MCDLF%9$<2!M_"SM$FX-7?B,9ZI' M6,&IO$O>1<<-?.C@(_*5TCM'EN:G\./>F."U*[_!!VF9YJ?(^Z/!@>=+JLS: M\ Q/D8\\W%<4L*H9+)FTJA)'8YL,#\+TG>6JV&G)>O G4CL[.&EP%7O#4>CN M+:PHW3NX5UQ:BBSUF/^HQW0=Z7>B-(1/2F4IZ5_#'7O$VN(=>487O1O90VUC M'^%C12+LU/4"]<9W+T.5JI*V+O'M:ML@;^J^\ RON^M[1HY*]]+79!I=C"X# MT'7'JB=6E;Y+/- M4H4?YM3D43L [:^5LON).Z#]VS#[!E!+ P04 " 7 MB&Y8^MCU^C8% !$$0 &0 'AL+W=O&>DX%J*+2])Q\N]W2%TB M):[2+MW3'FR+TN''[]P^4C[:5O)&K0 TN2OR4AT[*ZW7A[.92E90"#6MUE#B MDV4E"Z%Q**]G:BU!I'92D<\8I>&L$%GI+([LO7.Y.*HV.L]*.)=$;8I"R/M3 MR*OML>,Y[8V+['JES8W9XF@MKN$2])_K29@64*JM*(F%Y[)QXAZ>1 ML;<&?V6P5;UK8CRYJJH;,_B0'CO4$((<$FT0!/["LRK]DJ5X=.[%#4EB*3:XOJNUOT/@3&+RDRI7])MO&ECHD MV2A=%]D&7Y3FBQ.)+5EDACC6CFPKIJ9R.Y MK#1)N=02GV8X3R\N5T+"Q/B5DJ0J,-=*V'#M?Q97.:B#HYG&98SQ+&D@3VM( M]@U(CY&/5:E7BKPO4TB' #/DUY%D+ M8#J<[#9+<4ERGT&>$DKVNL]%IF[(4@)@ #%ZH#210@/ATW"^-_&G\1R-O&GL MFP&+S*PIPR=T&@'^W1H%!5VZK'(LHS_0]B;QIQ/1 %^!9. W&.<.A=&RBGHRBGX[G+2*Z@5T?!%;2>H-,D- MJ9JX91C#QZU;E\CX$C^K1+XTU?ZLX4G3#9>6_J>&OL!,UW=.UMB7259KFMUR M'HK"RL##\/T=R"130,YEE@#YM-%*(Y#I):&'E8AU1DG@B3'"?0?K['NO'\X,!DH=(OTI1:HMS0/S8 M1RA_8!.SYWAZA+DA]=U^SUB>?,C3C;^E//G2/8ZV.5SZGH!':P2>'VR[9-]/W99&/<)!=,PZI/N3-D\=.=# M\FP:QCWRO6^$RD,K5[E1<3VYT#,]F65+4\?+$.O5B?OJ57_W;A"S G;1/69ZG\L;&! MP9IH[YSU(OZ8T-- MA:?'NVEOYM<[9M-7#VTS&/Q;.94_8[!Q.!^9Z@RUZ?4 MY3Q$=?"C84_2GYZL_T_2'G1T5])>FC/FQ6XTGZ/(\OE GOG8H3SJ1"SZ;A'# MDYC,\,4OJ0^PNQ1H',PHT",098#;\TWCDW$/NLTBW4CCLU&>6H?J,^J3SFA" MW0B-AS(ES7&\D3Q%_CO9&9R +0E+X,/0TQV.]CK,C>/0I?%@@W69CR<9.MCQ M\$#BN7$0CZ'#DXW6+!"$@4N#/A@>/P($[-7G:Q(AB=@-HGCLA#OKO=D6(*_M M^[O"K6-3ZOHEM[O;_45P4K\9/YC7_R]\%/(:W2 Y+'$JQ=.-0V3]SEX/=+6V M[\E7E<:W;GNY I&"- ;X?%E5NAV8!;H_3A;_ %!+ P04 " 7B&Y8%&Q& MEA8J"QY*"IN%OWQ2[W$,FV& MCC"G'QI;YGTHZ1[IDDUHH]3NPWA7[8B=R M_!^9?UP%-BS]3L2^//I-Z4QZ*XEO]Y=?D=C2IUTAD(E8U@NL_3V(ELJPF MZ?7XJX..#GW6@<>?7^A1L_%Z8QYX*59%]M\T49O;T6)$$K'F5::^%OM?1+=! MLYH7%UG9_$_V7=O)B,15J8IM%ZS78)OF[5_^O=L11P&:8P^@70 ]"9B^UH/? M!?@G ?3ZE8!I%S!]:\"L"YB=!M!7 N9=P/RM 5==P%63K';O-JD)N.++&UGL MB:Q;:UK]H:V%7*' M!R)^":<^^>,^(#_]\V=2BD=]T*IZ=Y4;+H5M3P5O!],>_!HM?#O-NTR++NVS M7-,FYKI9,,R-N>/R?!,=*?4/RO8;KO^:LH_DS'LY[SHYVU3; J=V8%T4/I0[ M'HO;D3[KET(^B='R7__PYI-_VQ2#A 5(6(B$14@8 \$,O4P/>IFZZ,O?JNV# MD/6)4(I=(15_R,3+(5R2'R\?;;IQ@H?JIH7-&U@]D'A:>C?CIV,Q(+L+D; ( M"6,@F"&&V4$,,Z<8[I78)<4^)VM9;)NQ3MV"9.))9.4[LDYSGA%99<(F!R=Z MJ!Q:V.)(#I/WIX) =A@B81$2QD P0Q#S@R#F3D&LJFV5\7K8K$\/2=6.H_4@ MZ$4:[_1@_J$4?U5UP>>9'N'S/+:JP]G/4'7,+>J8GJ@#V6&(A$5(& /!#'5< M'=1QY53'1YWPF+=SJY?<:YW$0NLET;7C[G>;$IS,H4JX.BL;_HD.D-V%2%B$ MA#$0S-#!XJ"#Q=_0 2\))SLA8WV.T-/\>JBA"J4+R2_1BL1Z)E5M=W6L32O. M?H=J96$Y:TQ.BPJRQQ )BY P!H(9SZ))NMWQ5#:3Q:PH MK7,3)VFH %K8[%@ )]F_V"*\V")"KC(#P8P\>9/>)9FXR_^S7I+HZ4&BYP9E MJM.4\HJBUQ)'BNBA-Q:L^N.GY%GP:7M&%ZY(X=Z E!:"*5%4!I#T4Q%T%X1U)G1 M.Y[K>Y7;] K(74,WJB^'<]0"^%*M^1)YY5)Z-XJUB@OA^4%G2TXP/< MGUE' E #T-*MY]E&(,S6VU[[W$Q\2R*^QUF5Z,.Q\5W5 M1I"89W'CO.FC44^8DS2KE/Z]O6A5V_*O7;WZY.YR<(+GEE&X'H>?9OB\&5U, MYU>G*;8TFRW\&3W+,M0C0]',+/>VR7[MI[DZE5F1/^IY5.N,U"=>:Q*A M)EE',P93'K7-I*!F&90606D,13,ET1MFGMLQ.QI;W[=C:ZL*H/87E!9 :2&4 M%D%I#$4SI=*;9=XU^H*^!W7-H+0 2@NAM A*8RB:>6=/[]U1MW':7HXD"A/AV4%D!I(90606D,13-UTQN"U.WH?=[I MTTHCE?K"FYYM2OF\+N2>R\0N&N@]@AWMN#JV+:E4FJ7_:ZV$N-CN9%HV%^&3(P_0FG.HSP>E!?3<1J/7]G$# MU.B#TAB*9JJD-PSII;O]7O$(W7&#,X^D!5!:"*5%4!I#T4QU]-XDG<.'%E#K M$4H+H+002HN@-(:BF;KIW4[J=CL'#RV@5B<]MSJ]A77B";4ZH;0(2F,HFJF' MWNJD;JMSU3S-)219%7E]"Z!L1R)?T_(;^4%^*\BAP0_RM?4GVLL@ASM2]JG: M'%I9)03U2:&T $H+H;0(2F,HFJFSWB>E<)^40GU2*"V TD(H+8+2&(IF/B[7 M^Z3^A7L4-5 Z4%'K;!/=V,?[_;?4JW>T"B"KA=#T7_?*#!8(U.:%TD(H+8+2&(IF2JZW@OT9O!Q!36(H+8#20B@M@M(8 MBF;JIC>)_0O/AP\N1U"+V+<]"'[Z1">TRQ!*BZ TAJ*98NB=7]_M_ ZJ6]VK MEDI=P.KGA.O7CECU G6'H;0 2@NAM A*8RB:*:S>0O87\.H$M82AM !*"Z&T M"$IC*)JIF]X2]MT/F@^O3E!#N*-=J$Y0G_;;]]H=EAY>"?FQ>1'BR?*5]R%L7^S88]KW3-YQ^9CF)")T+6#?3OZZ)0+U_J#@XOT%S^'U!+ P04 M " 7B&Y8C_.'EC\# "5"0 &0 'AL+W=ORE9M[D-E*=+IF'!XD4EW34/G] M#FIQ6'NA]SSQR':5MA-^MFKI#C:@/[$>ZMH*F3#^&S2]\966>/S\ MK/[>>3=>GJB">U%_8:6NUM["0R5L:5?K1W'X&P8_L=4K1*W<+SH,V,!#1:>T M: :RB:!AO/^GWX8\'!'"Y 4"'@AX2HA>()"!0%Y+B 9"Y#+36W%YR*FFV4J* M Y(6;=3L@TNF8QO[C-NR;[0TJ\SP=+;IRXW$%FW8CK,M*RC7Z+8H1,B =2"[''H M;0Z:LEJ],UJ?-SEZ^^8=>F-@Z%,E.D5YJ5:^-J9L:'XQ&+CK#> 7#(08?1!< M5PK]Q4LH3P5\DXTQ)?@Y)7?XHF(.Q34BX1\(!YC,!'3_>CJ>H>>OIX<7W)"Q MP,3ID9\N\%SN>^UH7MNVI!O5T@+6GNDY"N0>O.SWW\(D^',N;[]2+/]%8BPO)S&,$X7HZH MD_CC,?[X8OQ?7#3)?Z8\/^LHV4U;,V>NEDZ.(HI@LXHB0 MB<,98+1+B:MS' [#Q3*YR6> 21(%"]L'3TS[1P=6 W+G#GZ%7$OJ M&_4X.]XM;MV1.IF_,W>._HKP0Z:_L'R@X0C5LC61PG9I=)OM+0#_0HG7' MXI/0YI!UCY6Y-X&T +.^%4(_#^P+QIM8]C]02P,$% @ %XAN6#?ZDNX_ M P ,0T !D !X;"]W;W)K&ULK5=M3]LP$/XK M5H8VD#;RVK1A;20@F[8/2!6%[;-)KJV%8W>VV\*_G^V$T)>T I0OC5_N>7+W M7,\Y#]=[)2;,28=V;2S2(5\J2AB,!9++LL3B^0HH7X\@_*E5+RLP=J#DK#JB9]J(38 ?GP M$-2 8!<0'0"$-2!\*R"J 9%5I@K%ZI!AA=.AX&LDC+5F,P,KID7K\ DS>9\H MH7>)QJET4N4;\2F:D!DC4Y)CIM!EGO,E4X3-T)A3DA.0Z!O:,,YYN<#L^8O4 MR5\!6^K]TPP4)E2>:NW=5N1<< M<,\/T UG:B[1#U9 L4W@ZEB;@(.7@*^"HXP9Y.NWPX/6N#9 MV^'^D6C")GVAY0L/\-U6XNLDY)SEA)J$$05EF](54]3.9,Z7"[G .8P+',%=+%I?\"%"LHD,04 M6BOM*-5[\]\E6=81V9:$<2-AW%D%Q5TJV"59UA'9EH+]1L'^QRJH@L5;%>0G MO6BG@O;-0C_Q_&2G@O;-_$&_GR3M%31HG!\<=?X6IH+,0.B/WH04@"9:')*W M%]!1IO>FOTNRK".R+0631L&DLP)*NE2P2[*L([(M!7WOM0GS/E9"-6[SN]'W M^OY.!;58Q8$7[Q10BU641+OUXV[TDB6(F>W));+M8-5E-:M-WW]IN]V=]2MS M'[ ]ZBM-=9FXP6)&F$04IIK2.^]KET35GU<3Q1>V8WW@2O>_=CC7=QH0QD#O M3SE7+Q/S@N:6E/X'4$L#!!0 ( !>(;E@VI#NEF@( !,' 9 >&PO M=V]R:W-H965T:B[T MR*N,65SZOLXKJ*D^E0L0.#.7JJ8&NZKT]4(!+1RHYGX4!*E?4R:\;.C&[E0V ME$O#F8 [1?2RKJGZ.08NUR,O]#8#]ZRLC!WPL^&"EO YFEQI[#G=RP%JT%H M)@51,!]Y5^'E)+7Q+N ;@[7>:A/K9";EL^W<%",OL(* 0VXL \7?"B; N25" M&3]:3J];T@*WVQOV:^<=OBA;U"H7<[/ M6U'C1E3TCJ@P(K=2F$J3SZ* XC6!CPX[F]'&YCC:RSB%_)3$X3&)@BCN$33Y M>WBT1T[<93UV?/&_9;TO8PUATD]H[_JE7M <1AY>9@UJ!5[V\4.8!I_ZW/XG MLE?>D\Y[LH\]&T/)A&"B)&/*JJ%=Y;L3Y6_6E!E6ZLJN).[W-'>Q&N\I^Y0K: MSO@8*WY3H'_3-,_%+55X+#3A,$?*X/0,-:FF!#<=(Q>NBLVDP9KHFA6^6J!L M ,[/I32;CEV@>P>S7U!+ P04 " 7B&Y8 !L6'/4" !8"0 &0 'AL M+W=OL!*K>K!@OL%1;OK9%R0&G!E3DMCL:A7:!";6BJ3F[ MYM&453(G%*XY$E518/YW#CG;SBS'VAW&FDE2\8>].9'.K-&VB'((9&: :O'!A:0 MYYI(N?&GX;3:3VK@_GK'_LUH5UJ66,""Y;])*K.9=6:A%%:XRN4-VWZ'1D^@ M^1*6"_.+MHWMR$)))20K&K#RH""T?N+')@Y[ "=\ > V +<+\%\ > W >RW M;P"^B4PMQ<0AQA)'4\ZVB&MKQ:87)I@&K>03JM-^*[EZ2Q1.1G<9A\FU%'S\XX>A+7[#>DRQ^)[*#0/IM(/TA]F@.:T(IH6LT MQSFF"?2%KJ8(#(7NHIO(F;CCJ;W9#TF/47#F'QK%@\Z\46K02@T&I?Y4?V:< MID1W6X&2#/,UI$@R=%4"Q^:T3WQ-&N[I"H-)1_MS&W_XSV:[GVW]Z;.06H8M*S6Q66;DEU7VY/V^O!A9F* MG?.YNC;44_Z)IKYS7*H:)2J].:P4Y>ATK%SB]1RO-Y*59K(MF51STBPS=?4! MK@W4^Q5C(;E@;OH[,+P( $\% 9 M>&PO=V]R:W-H965T=!8(H:&F9FJ@6).Y72#;,XU=O M!I8Z4&-".(PO H:QB7-4[^V MTGFJ.BNXA)4FIFL:IO_<@E#[C$;TL/# M[5U"T&>MFP+:["/[4KC+!A92MZ M-%Q)HJ'*Z$TT7R0NW@?\Y+ WDS%Q2C9*/;G)79G1T!4$ @KK&!C^=K (1P1 MEO%[X*1C2@> #$[P4D \ [%_25>5E+9EF> M:K4GVD4CFQMX;SP:U7#I3G%M->YRQ-G\AV8EH)F%ZJ0U>"X%\!W;""#G1.(E M.BDE.3\[(">&2W',A,,"D@<7Z7):@ M&&JY[6N)7ZEE"<6,)-$G$H=Q<@2^>#\\?@D/T)71FGBT)O9\R;]98G]#.]/@+X:JR)#6 M$+P5I%3=QE:=&$''_.F37OJD[GW9Y7A0NZGH/N)Z$A'-KL>87DLPN>[NJ;EG M>LNE(0(J1(6SSYA ]^W;3ZQJ?0=LE,5^\L,:7SS0+@#W*Z7L8>*::GQ#\[]0 M2P,$% @ %XAN6+T;*!]D @ .08 !D !X;"]W;W)K&ULK55=;YLP%/TK%JNF5EH+X2/I,H*T)II6:9.B?FS/#MP$K\9F MMA/:_?I=&X*2BG9]V$OPM<\YG&-T;])&J@== ACR6'&A9UYI3#WU?9V74%%] M(6L0>+*6JJ(&2[7Q=:V %HY4<3\,@K%?42:\+'5[2Y6E#1A^LB4VRDO+!%M?%S NL(>"0&ZM \;&#.7!NA=#&[T[3ZU]IB8?KO?H7 MEQVSK*B&N>0_66'*F7?ID0+6=,O-C6R^0I?'&:=_U>J'+^@O(+\@T>@#"8,P&J#/WTX/C^D^)NWCAGWM M?@.MIT3@P,(IQ-D?NN) =I1O@=#B%W8 S@PS:+O5'1_X.4_"X+GK =0D'D?# MII/>=/*JZ3MI*!_RE S<41PGP3-3 [ XB2:39Z[\@\:V0_4[51LF-.&P1F)P M,4$%U0ZJMC"R=KV^D@8GAUN6.-M!60">KZ4T^\*.C_[?(OL+4$L#!!0 ( M !>(;EAI"+TT9 D "M@ 9 >&PO=V]R:W-H965T>T22VNZ:I-:J6JZ[3.Q;V(T7ES 22KMCQ]@ MXL.UX:&0PY?&=CC/O8_O,?[E'+B]>$BS?_.ME(7V&$=)?KG8%L7N[7*9K[6<1 FB]5%_=KG;'61[HLH M3.3G3,OW<1QDW]_)*'VX7!B+IQ>^A'?;HGIAN;K8!7?R6A9_[3YGY;/E4643 MQC+)PS31,GE[N?C->'MEZ'5$?[GP%MI& MW@;[J/B2/OPA&T=VI;=.H[S^5WMHCM47VGJ?%VG'IM?+(MR\M44ENMFHN\. M$S5[)OI>KM]HPGBEF;HI.L*O?CS<5,.7Y5MV?-_,X_MFUGIBROO6Y>X@9W7+ M59_6M_DN6,O+1?EQS&5V+Q>KGW\R'/W7+J],8HIS<70ND/KJ>G]3I$40=9D\ M1-IU9'4&N5_9ONY9%\O[]NP[CG(MW3X>I4S+.D[+@M/Z*//\K?;;>KV/]U%0 MR$WY82[=K\.@.EUT3?:@Y[2F\5KXKNZ?S+;K,,<3;O=T[>-T;3C=KWUOH7TV MG.$+USZ9U/E1IFX[7O> MA-I_VJ-]W#E3UN]Q+C75.WV3&X(Y(2$:C';/I*:Z)V P,#% ]Z^TW_,B MC&N0^%C^H=%-K'@ 1_LN@ZPK\@I'3K5.\&%@^NA,^N"Q-^FAVNAE9U)3O1/D M& YSTK/R#Y>:ZIX(R("8P9'T> !#!UD_!P(9Q$ &AJ!W^S#:A,E=MRT8.WJ5 MF=14IP16AL^ MB:],C#]*MO?#!589O=YS@)5)8&7:S-G.BE9<:JI[0BL3%Y 8LAT/('R0[7. ME4E@96+N>X)N00N M:3W_-#PP ((.'#K5>ZLYA7FH-_/[ 00KCE[[.:!+$'0)BSGS6?&+2TUU3_@E M<%V+(?/Q A <.A4[P1? K/1U??RE8WLG-L['#MZE>= +4&H)9C;>((5N;C4 M5/>$7&)Z*Z\)5:H;PC3UTP9\1S=/"*.GG2>(AP3FH6,*#J &:[&)2TV]ZH!0 MRV)NZEFLH,6EIKHGT+)P1>OY)]R! 0R &CATJG?"+ M3D)+M_7B!54:O]QQX M91%>6M2XSF[A@.#"! \P2'3O5.:&5A\OD=KC)K%8M+375* M(&4Q-P@M5KCB4E/=$UQ9N(Z%\*();>.%Z0O_M*C1'*9::=L_5:1:1CX7) MYYB"&"^PRNCEF*/$9!%26O<& =&D&#IWJ MG:ZIYX MR\:%*T0<3:AZ8>C9Q?#.>1.EKYAA$PC9&(1@2F("P.>I--U&4SM_AL M5O[B4E/=$W_9N*3%<%+& X#Z!HZ<:-TA^'(P&PU^ /JI!"N/OF5D#A)SB,0< MYF:BP\ID7&JJ>V(R9^YFXL ;O\' $=.M4Y YF!>^EMNPW748XJUKL6EIAHE M^G*8FX8.*WUQJ:GNB;X<7-E"_-&$*@T5US_MIS@=-^VYKNBY&Z]U.QX&HZ?\ MP["!14:OQ1S5)X>@RV%N[3FLJ,6EIKHGU')P@8OA7(L' .4.'#G5.G&6@S&H MG>N *UB+6UQJZKVHQ%O_QQPY1)5N+C45/=$7"ZN M=R'F:$*5FHI10^]ASE<@B%WZ,[ X=S$/(('&+U.<]2F7$(PE[D7 MZ++2&)>:ZKZU7<+<-PL.#&""<_0<*.82BKF8E'[T<]#/*GB T9DP!YZYA&::IP@S6/N17JL=,:EIKHG.O.F;_+DG>_?Y)_A27-0&T\\ M2^^F$X^PR-F$BPZ.B5F:-:Y1&@>FQ,AB7FNJ>&,R;NQ4Y, "Z M/@2'3O3N$X'Y&) ^5CW';1K]P'YAK$4R+C75-M&7S]QZ]%D1C$M-=4\(YN,Z M&8*0)K0-(9YS>F%(\Q'!@ -&EPY%3K1%_^P :AO9G?#R!8 M]%GQBTM-=4_XY<_=GAP8 , WCIQJO;53Z<"=C6F2%]F^WGK\=9B\+K/_KARG MVR3OEJ7S[%G:WK24?==2YFU+9]FW5&]M7*H_8^=2_7SK4M.S3K>\[CI,V.*T M7;-L;>1>;:/_*&ULK591;]HP$/XK5E9-K=01 M$@*L'40J9-7Z4 FUZO;L)@=8=>S4-M#^^YV=D %-63?E);&=^[[>S;[21 MZDDO 0QYR;G08V]I3''I^SI=0DYU1Q8@\,M4[5ZP2XW(R]P-LNW+'%TM@%/QX5= 'W8!Z* MF<*97[-D+ >AF11$P7SL7067R=#:.X.?##9Z9TQL)(]2/MG)33;VNM8AX) : MRT#QM88I<&Z)T(WGBM.K?VF!N^,M^[6+'6-YI!JFDO]BF5F.O:\>R6!.5]S< MR9%/9=CV2KK21>05&#W(FRC=]J738 02#=P!A!0@/ =$[ M@%X%Z'T4$%6 R"E3AN)T2*BA\4C)#5'6&MGLP(GIT!@^$S;M]T;A5X8X$\\4 M[B!E7L])P:DPA(J,P/.*%9A:0[Z0JRQC-D&4DQM1[C*;KM,$#&5W:N8]Q"ZUU)2HN+78M.N&^3--E$M /TZ@/[1 *92 M&R+G1%,.C65V%/ZO>6^3+&F);$^V02W;H-WR&;0I8YMD24MD>S(.:QF'K93/ M\$WY')3&]*\6R?!-\02=BX/B\7>NOAS4PK40FJ1R)4QY4]2K=9=RY2[G@_4) M=B]EL_&'IFQ];JE:,*$)ASE2=CM#]%F5[40Y,;)P%^RC-'A=N^$2.S!0U@"_ MSZ4TVXG]0=W3Q;\!4$L#!!0 ( !>(;E@(]DP7^P( !P+ 9 >&PO M=V]R:W-H965T./(@&0Z"FE MF5@8B93YA6F**($4BW.60Z;>;!A/L51#OC5%S@''I2BEIF-9GIEBDAGAO)Q; M\7#."DE)!BN.1)&FF#]? F7[A6$;+Q.W9)M(/6&&\QQOX0[D0[[B:F0V+C%) M(1.$98C#9F%\MR^6=BDH5_PFL!>M9Z2CK!E[U(-?\<*P-!%0B*2VP.IO!TN@ M5#LICK^UJ='LJ87MYQ?W'V5X%6:-!2P9_4-BF2R,P$ Q;'!!Y2W;_X0ZD*O] M(D9%^8OVU5I?[1@50K*T%JMQ2K+J'S_5A6@)[.D[ J<6.!\53&K!I Q:D96Q MKK#$X9RS/>)ZM7+3#V5M2K5*0S+]&>\D5V^)TLGP&E0-!#I#-U@6G,AGQ#:( MZDF4XV?UO:1 IU<@,:'BBUKV<'>%3D^^H!-$,G2?L$+@+!9S4RH6[6A&];Z7 MU;[.._M>072.)O97Y%C.I$>^_+C<>2LW506:,CA-&9S2;S)8AKX8E6[:K].' M[$+D.(*%H4Z1 +X#(_S\R?:L;WVA_I/9FXB3)N)DR#U4E9KV!:Q4;JG2AWX7 MVC-;K=RUP0>M1X)/&_#I,7"W#[Q2>6UPSYMTP >M1X*[#;A[#-SK WDM9@PFL0 I$T+W0VHA*J363OI6<= MA#F;V78GS/!N8].TKGQ[,,U*FV82[3 M0-_WW:]%"5X32B3IOQ)K^_:5X7E! MT UYN,J?.J^GKH(W6ZV+[AMO,-^23"B0C9)9Y[[2\ZH5JP:2Y64WLV92]4;E M8Z+:5^!Z@7J_84R^#'2#U#3$X3]02P,$% @ %XAN6-SDCGT_ P ^0H M !D !X;"]W;W)K&ULQ59=3]LP%/TK5H8FD ;Y M:I.6M9%&81H2TQ"P[6':@YO<-A:.W=E."_]^MI-F_4@C)C&M#ZV=W'M\SO&U M>T=%;H$):[, S<9+? < M[D%]7=P*/7,;E(P4P"3A# F8C9T/_OED:.)MP#<"*[DQ1D;)E/-',[G.QHYG M" &%5!D$K'^6, %*#9"F\:O&=)HE3>+F>(W^T6K76J98PH33[R13^=@9."B# M&2ZINN.K3U#KZ1N\E%-IO]&JCO4V=B842TEF),65V2Q#7U0. EVSJG+,T^-+4)A0>:+3O]Y?HN.C M$W2$"$,/.2^ESI$C5VF.9B4WK?E<5'R" WPN(3U#H?\.!5X0MJ1/7IX>;*>[ MVIG&GJ"Q)[!XX0&\+E?:Q%5HO78T^3>HK M@6T)#QOA81=Z,BF% *80-?6!*,%30HDBNE2.!:1<9)"9G?Z0IJ+40WC2UXHI M)%,IW%9*ND;XDWO29EG%HV]YF#MGF?B#X6#D+C>M: F*HK )VI+8:R3V_H-$ M]./J29E;;DH!7;&R &&KY6>;]FZ"?[=R6P7]._PMQ_N-X_W.!6\XFY\J$,6^ MYVWN]/D2@:[-;Q M?E#<"Z)VMG'#-NZ\H_8NYC9V\6M>3*\$MJ5VT*@==.[-=_O'#-DI7NKMF8-N M)4RS8K;)5I9V87?G6K>K>Y4 /0,6$OD^*CA3N1ZA##^WF=$-%-9 \1HG,CA= MAVG8&#'\.R,R(E->ZD.KM<.+?:@6\;V-DO3.O$$0[U3NH3C?V_CX.Y7L;C0F MIBG\C,6<,*GIS#2*=Q;KDR"J1JN:*+ZPOU,0)D"_GW&NUA/3 M_C3=;O(;4$L#!!0 ( !>(;EAL[8;[Z0( /D* 9 >&PO=V]R:W-H M965T]X(]6S7@(8LDVYT!-G:4QV M[;HZ6D)*=4=F(/#+0JJ4&NRJQ-69 AKGH)2[?K<[<%/*A!.,\[%[%8SERG F MX%X1O4I3JEZFP.5FXGC.;N"!)4MC!]Q@G-$$YF >LWN%/;=BB5D*0C,IB(+% MQ+GQKL.1C<\#?C'8Z+TVL4J>I'RVG;MXXG3M@H!#9"P#Q=<:;H%S2X3+^%-R M.M64%KC?WK%_R[6CEB>JX5;RWRPVRXDSQ@X)!HI8U,2S"N(&6B>--MZ<,>P'L+X)< _S6@_P:@5P)ZIP+Z):"?.U-( MR7T(J:'!6,D-438:V6PC-S-'HWPF[+;/C<*O#'$F^ %HFB:?R$T<,[L3E),[ M4?Q.=E_.0S"4<7V!(8_SD)R?79 SP@29,-B+?ZUE+ M9 >>756>736*_)F!P@072>D:;/$>T5#G5D'T.2>RE\@Z\#K#L;O>]^4XQN\, M#F/"XYA>QZMB#E0,*A6#1A5SO"Y0PR5)0* >3JB("8WQF&3:6'WK2EGMC]#( M_MY\:I,L;(GLP-5AY>KP/\^?89M^M4D6MD1VX->H\FO45BZ-3LBEXYCC7#J. M.7&E2217PA17:S5:U6\W>=GR:GR*=5U1AOVC*8K"&54)$QIU M+Y"RVQEBCJNBT"HZ1F9YZ?$D#18R>7.)M2DH&X#?%U*:7<=.4%6[P5]02P,$ M% @ %XAN6&\2IR.I @ L@8 !D !X;"]W;W)K&ULK57O;]HP$/U73EDUM=)H0OA1UD&D ILV:=6JLFZ?37(A5AT[LPUT M__W.3II1"F@?]B6QS_=>WCO;E_%6Z4=3(%IX*H4TDZ"PMKH.0Y,66#)SJ2J4 MM)(K73)+4[T*3:6191Y4BC".HF%8,BZ#9.QC=SH9J[457.*=!K,N2Z9_3U&H M[23H!L^!>[XJK N$R;AB*UR@?:CN-,W"EB7C)4K#E02-^22XZ5[/!B[?)_S@ MN#4[8W!.EDH]NLF7;!)$3A *3*UC8/3:X R%<$0DXU?#&;2?=,#=\3/[)^^= MO"R9P9D2/WEFBTDP"B##G*V%O5?;S]CX\0)3)8Q_PK;)C0)(U\:JL@&3@I++ M^LV>FCKL +K#(X"X <3[@/X10*\!]+S16IFW-6>6)6.MMJ!=-K&Y@:^-1Y,; M+MTN+JRF54XXFWQ%JH&!#BS65260]L2TP\!D!E+)CH]P61^;>@<% MLYB!52!JCO,Y6L:%N2"VA\4F8BE. KJ]!O4&@^3MF^XP^G#(U'\B>V&QWUKL MGV)/OE6HZ MJ!ZTJ@"6'W8V>.TLBJ,]9Z^3XN'@_9ZS<.?ZEZA7OBL:2-5:VOIBM-&V\=[X?K,7 MGU)#KOOG7YJZF]\RO>+2D+.<**/+*Y*DZPY93ZRJ?)-9*DLMRP\+^JF@=@FT MGBMEGR?N ^UO*OD#4$L#!!0 ( !>(;EA F?YO2 , "H, 9 >&PO M=V]R:W-H965TS'>,_Q0I HN>J MK,7<64FYOG9=D:V@HN**K:%63Q:,5U2J)5^Z8LV!YH94E:[O>9%;T:)VDIG9 M>^#)C&UD6=3PP)'85!7EOV^@9+NY@YV7C2_%G&?SQU/.X(2,JDEJ+IL MX1;*4BLI'[]:4:>+J8G]^Q?U.Y.\2N:)"KAEY8\BEZNY,W%0#@NZ*>47MOL$ M;4*AULM8*MS?Y1)Z"I$4I+A3LVV.*SL\NT)F"H*\KMA&TSL7, ME! +X%)WG[!D?>>UM53BF6GDALKV)!5['@F'IR!SEP6MH*UA!#0]2OPVV" M/8*G,W?;KX0%A:?3=?XHJ02D^@B5++-GT A$O:C^ M-/ &"5A $S+T/P:1T+/[CSK_T5'_7YFTNXY&L3#QPV'=+:A@0@;)I6/4Q#M0 M][CS'1_ML106H+HLMS99?,HF.Z58>B*QO9)-NI)-_K7))N,O5A3%@[,>@RZ) M3P9'/0;Y/:$]W]/.]_1_6VPZBAH%0_MCS"7&?C3P/T;%!SH,>W]_K+U_Z[&6 MUX\6$!P,C%M0ES@(!JV86F"$'"@][@T:^*CWC\]J5A4P&BRLZ>#Q6S@.8S+, MQP(C9(*'^5A@.!@>AML;HBK@2S.,"I2Q32V;^:/;[0;>#V;,&^S?Z$'8#&=_ M99HI^C/ERZ(6J(2%DO2N8F6)-X-ILY!L;4:U)R;5X&=N5VJ8!ZX!ZOF",?FR MT &ZOP?)'U!+ P04 " 7B&Y8WIG%I#L$ %% &0 'AL+W=OGQ*:>>.AN3?A MXR'+94(SF' D\C0E?',+"5N//.R]W7B@BZ74-_SQ<$46\ CR:37AJN57+#.: M0B8HRQ"'^^SD9>H#."!&*I*8CZ>8$[ M2!+-I/+XMR3UJG=JX.[U&_MG(UZ)F1(!=RSYB\[D9[O='R=53JG!R_#6+60I( MDE<0Z!(]0,RRF":4F%YAG0['#C7M MJAO;AJ]=VXW&=&%SN&#HV!GT^G(M5B2&D:<6$ '\!;SQ[[_@7O"GS9TFR:*& MR/:M:<@HZ!^I."8HL079IO4I: MKT;:I]<8A#"CO)0@U-Z3*+TSO1*IQ3)^1DJWVA2%60?W*H'Z-0;@7IBBA*95'Y?=M?79&GC\4 M\4[UA)U)?6>2)%:]V+:X=P\EVZ+PX42S1@7M([T6;G,/G;E':H,0DL;HNUI/ M;W*Y9)S*#?K['M(I\'^LJIR,Y]80C;)%3;'MN[DMP/#/5V"XT1*L4;:H*;9] M^[95&':78=]6JC*1-%N@A*DM/B:<;]2_VC7A,[N5!5W7M9[4AD3NI-XK>ENK M87>Q9DHUJSHG[NR!TB1;U!3;OF?;(A#W?GZ>.2NNL^UKDBUJBFW?OFV)B-TU MXMGSK/^_280'@?X$+V@F4 )S11FT^LHQ7IPY%0W)5N849LJD9*FY M7 )1_\=T@'H^9TR^-?0+JI._\7]02P,$% @ %XAN6#U)8=0U P GPH M !D !X;"]W;W)K&ULK99K3]LP%(;_BI4A!-)* M[FD+;22@FL:'(<1E^^PFI]3"B8/MM+!?/SL)(31NRZ9]:6WGO&^><^+;9,WX MDU@"2/22T5Q,K:64Q:EMBV0)&18GK(!XT1V MADENQ9-J[(;'$U9*2G*XX4B468;YZP50MIY:KO4V<$L>EU(/V/&DP(]P!_*A MN.&J9[_4PF[[S?U;E;Q*9HX%7#+ZBZ1R.;5&%DIA@4LJ M;]GZ.S0)A=HO8514OVC=Q#H62DHA6=:(%4%&\OH?OS2%Z C<8(O :P3>9P5^ M(_"K1&NR*JT9ECB><+9&7$$XHD03$,3J:@<2$JM8 /=S-T-'!,3I0*G2_ M9*7 >2HFME1\^BUVTK!%I89)"?(=[\BS_%\@_SR\W+OH]Q656E+X[6E M\2H_?ZO?YVIA2K1V#LS.>FF>B@(G,+74VA/ 5V#%AU_#BQ5]V<^C&A MX[0Q'U"#%C78@WJ5KR"7C+^BIA FNMHDZKPY&FW2]6-<)PC->&&+%^[!NU;; MUG.)*5D0-:O4TDZ>$"OT;F8L8]B#"+WQ!F@_QA_Y9LZHY8SV<'8FO@1526FB MVVGRMS,\ZJ7A1?[0G,>PS6.X)X_S).&E2@->U*$GP%CD8>_-(V^CQOT0U]G" M-FK91CO9KM7YG&[=7DRIX[W10GS AN#IV#W%6 MG"&<,2[)[VK(1#ON@0PB/_0W< U1P=B-S+RN\WZB.3N)[YG$]+V\N^O:>.U# M-87M8.V]!7MQ^8/Y)<( H+ M)7-.ADK/Z]M0W9&LJ"X41X !D !X;"]W;W)K&ULM5E==_?$K,$%@"R5XE!>;CWL/YX@K="1-=HP_B#4A$CSE62&FWEK*S:7OB\6: MY%A,/90G?RZG7E R(AE9R!("J[]',B=95B(I M'O_5H%[SS#*Q??R"_JD2K\3<84'F+/N7+N5ZZHT]L"3W>)O)KVSW!ZD%127> M@F6B^@6[.C;PP&(K),OK9,4@I\7^'S_5#=%*@*.>!%0GH+2J[N4I4G9Y\96^YHE@%<+ $M)"Y6 M]"XC M!I "_@3G+-[AX_D4 )M>$&V+.KHG$-!/G*OK;[34X^W ./J@X\/>: M;87"%1-?*JKE _U%3>OCGA;JH75-%A<@A+\"%*#0D#Y_>SKJIONJ@9I60DTK MH0HO/*F53/+V>",S7MDW+\4&+\C44YU/$/Y(O-G//\$X^-TDUA%81WK82 ]M MZ+//G D!YICS9UJLP%7.MH4T*=[#1!5,^?%XG(4H39.)_]B6\EI4A^.HX3BR MR0%+B0HF 22@87J[$02$TLKT-"" M=@36T9PTFA/'?3EQ*=T16$?ZN)$^=M.7QT?%-DZ"@X*TQW3XI0V_U%D_3H\> MGZ3C XJ&&-A#$09ZP Q.Z<5U5OO+EJ #/G5,IQ/'?81:(S@\I1.#[^ ++6B^ MS8UTK9A#B]H56K<%].@,70_/T.GX[ JM*U^/T- ^1+>["K@AG+(E.%/^ZYE@ M+LZ-\NV \3[5*-6:>:I4/=!#^TAOJ77\U%OK5LS!+]L16K<%M(> D>M:M[J2 MP?(=H77E:\,"[8[EA%JW \+ 4NSOX5.@-BK0:@9F\VKZI^9N*]QJ>P;+=X36E:\]$+2;H#>;M!JG,Y>"47SHT^"Q"^J& M=6?$V@@T/6JBB/W4^:I4K5I0?:5C_Y2[W=M=LC![_H]; O2M@7%KDO=Z8*+*[2N M?.UDD-W)G%#J=D"(++7^'O8%:?N"[(LL5W=JC@)RS!^(!!G!@IC?KU//X@JM MJUE[%I2Z+F^K"1HLWQ%:=X5<6Z'P%2LTN+Q? 8263[D]]52MVDN%=B_U]OV M8W<5Q4?; JAW4Y:B=56AW5D.L:0W59H"2(YJ&H!#UT&SMK-B767IL:7B\ M1X+20U=O" K#Z("1W]H7+#=EOV"^HH507Z5[E15<)"J=[_2;:JMPCLF MU7A=':X)7A)>!JC[]XS)EY-R]['9;9[] %!+ P04 " 7B&Y8UOD<0D8# M "6#@ &0 'AL+W=O17-$6)?+.D+(9"#ME*YRE#,,R2 M8J);AN'J,<2)YDVRN7OF3>A:$)R@>P;X.HXA^SM'A&ZGFJGM)A[P*A)J0OTWLF1WJI$N(8)1S3!#"TG&HS\]HW+9601?S":,L/GH&RLJ#T10UN MPZEFJ(H008%0$E#^;- -(D0IR3K^%*):N:9*/'S>J7_/S$LS"\C1#26_<2BB MJ3;20(B6<$W$ ]W^1(6A@=(+*.'97[ M8@T-!&LN:%PDRPIBG.2_\+4 <9!@ MNF\D6$6"=9S@O)%@%PEVUP2G2' R,KF5C(,/!?0FC&X!4]%233UD,+-L:1\G M:M\?!9-OL7[TP>7%)W A!;+6[L M;W)%;A MZ)08H)0"AO))@K#3(E=89N/&.B;PZQG(SPVR(J!@:E@4$G M TT%YYGNP6+.<&381T5WBO);JWCG)KFE1[?5XRRF3.!_^6E#E]V^=[=FRQJ. MC[V[M>VH!_DG@BJ6AJ6E8:LE>0PX354/ZU6/C.//K%7ZW/^^GL0J%$8EA=$I M"H,F"J,ZA4&-0JOTN11Z$JM0&)<4QJA=6*XBE" MLHE9"L0:@5BUP]DJZ!.4#0=.L+5A0(9N,[#&2 MC2-B*D"^7U(J=@.U0-F*>O\!4$L#!!0 ( !>(;E@ ^?%:XP( *P( 9 M >&PO=V]R:W-H965T8_%T!92OAX[O/ _@Y*88Z75-WQ M]1>H\^D8OH136?ZB=1WK.2A92L7S&JP5Y(15_WA3^[ %\-LO ((:$+P6$-: ML$RT4E:F-<8*QP/!UTB8:,UF&J4W)5IG0YC9Q:D2>I9HG(HODT0L(46PT>=" M@D28I8BK#(1>70A@"E&"9X021?3LZ1@4)E2>H4_H83I&IR=GZ 01ANXSOI0: M*P>NTK(,N9O4$JXJ"<$+$L:0G*/0;Z' "T(+?/1Z>+ +=[49C2-!XTA0\H7O MXH@MW8J_;>*L+$B/,9^8(4M MV8JA4S*8)V,5^T'0B0;N:CL+2Y0?]?]%[^6N%KBGSQ(51F'/KJ_3Z.L]A:8**\C-F>=S=$,89@G! M%$V,W>85_G6]4>9)GU% UVR9EY2<_;9E>ES./5>8VB[ FV$[;G0;-[K'W7C+ M!>]:MF-_RPYC^E['OF.]1F/OORRZZAVL%?J=L+NGZ# JZ/:]_3/N;M424\>_ M8;$@3"(*HH7I3E9<:5+E9E,].?$R!,@)Z?.Z9B-1\H M\5]02P,$% @ %XAN6-1WK=W @ Z0< !D !X;"]W;W)K&ULM95O3]LP$,:_RBE#"*25I$F3_J&--$!H2$Q#%+;7;G)I M+!P[L]T6OOWLI WM&@J;M#>)[?B>YW<^QQZOA'Q2.:*&YX)Q-7%RKUC_^&SQ4F9Q!T/X/O^3X\3J_@Y.AT5\8UZ V_W_#[ ME6[P/K\E'K61U0J]=@6[[4>J) E.'+.O%@U%+V#%-/%3 M- M6)M?'1E]R"]L_,*#5=G=1JU%"?]#4:(&+_KKHG2 FS-09)O20&DVECTWS!#; M2:/".\2TJ M-;*G&YK%2"&CG/"$\CDD0FD%9ED.4@WVJ#I!V!^T4PT;JN$_;^+AGF$P& [" M=L.N]WHX>@4*V"8 MF3COK&\$9'VOU!TMRNHLGPEM;H:JF9N[&*6=8+YG0NA-QUX/S>T>_P902P,$ M% @ %XAN6,48)F'&$@ 5BD! !D !X;"]W;W)K&ULM=W=;MO( 8;A6R'7ZX;-H.7B,NKU1I?+)%M= M7+UMOG937+W-'\M%MDIOBF#]N%PFQ?>?TT7^]=U%>/'\A4_9W7U9?^'RZNU# M+=/5.LM709'>OKMX'[XQ86]\J\L_;K>^3BH M_RY?\OSW^A,S?W?1JWG]#I=+&JJVI'_;-6+EXW6 W<_?M9E M\[>O_C9?DG5ZG2_^G5:G,ED$9K7YYJHS^O5M'Y[65:[5V_DD''_-5>;\.Q&J>SEO& M*__X,/( E]6_R\L_3O3\C_-SY!4_)L7KH!>]"J)>%+7LT+5_^/N':GC4;X;W MVOX]_,,_IP^O@WZO&=YO&2[.V/E^>'3GY?E;#]O^,_S#XW3VLO6VG=?G#V_; M>7/^\- 3A/[+=TF_\?H_\EW2LGL_;[A!.U?_!'NS?DAFZ;N+ZD?4.BV>THNK MO_TE'/7^V98R$HM)3)"8)#%%8IK$#(0Y.1Z\Y'C@TZ\^I0_)]VJN4@;Y[='L M>HFNV26QF,0$B4D24QMLV&#U;/7I:C .1]5Q[&DWE(>O"@>3WG#@OLPCO6 =OB;L3?9>9#8O&NV^*(R&[;$:O<1JY(U5]>[E MKGKGLTK7ZSI5-\GW(E\L@ILB+[=OC:H/[XID&2SR9-66+Z_?-5\D%I.8(#%) M8HK$-(F9T4&J?XH&XR.)';\D=NQ-;!71V7TZ^[TMH_\-KM]_$I^#][.RFC"V MY]6K=\TKB<4D)DA,DI@B,4UB!L*<6$]>8CUAW^Y,R!R36$QB@L0DB2D2TR1F M(,S)\?0EQU/OX?FWU3J=/=83TV,3!N_XKL&='OR(<7["; ));E&0F"0Q16*: MQ R$.8$,>_9T:^__/,?U;Z!K9E$M1C6!:G*K^;\]%;I-C6J&TMSH[C0%H3>Z MO]8S@"JSCW4/T(3X>$:]4N>,^O.)#[(5!-HII"-8UJAM+.\4:;[!R M>J][>Z?U8G2; M4DJBE4TZAF*,V-K*V;0F\+4$6V/J&:+(*RPS$7[9Q.[. T M6#95:^M!%ZV84$VBFD(UC6J&TMP$VZ(I/-4T/>6+IVQU%\RJ]U]9=:1-9MDB M*[\'[ZN#\+P^$+>&&"V?4"U&-8%J$M44JFE4,Y3FYMHV7^&0/346HIT7JL6H M)E!-HII"-8UJAM+<1-O2+?2W;GO3XU?UM8/9.MA MG3&QO?;O1N?HHH4:JDE44ZBF4MV% M1C6!:A+5%*II5#.4YL;;5FWA%)X8H]T;JL6H)E!-HII"-8UJAM+< M:_]M51?YJ[KNLXLM>&(B[-]LUZBBFD UB6H*U32J&4ISHVJKNG&"WO4"U&-8%J$M44JFE4,Y3FIMT6>E'$3C4BM,=#M1C5 M!*I)5%.HIE'-4)J;:-OW1:?ZOC][#FZ[@5-3#W0I&:H)5).HIE!-HYJA-#>Z MMNB+_$7?#\R2!^>=@_-ON'-8T?8.U22J*533J&8HS0VK;>\B_\*U3O/DYK>3 MDV6TWD.U&-4$JDE44ZBF4UMW[[%W]?^S?<.:QHZX=J$M44JFE4,Y3FAM6V?A'1^MT4V;)> M-;]<5CG.JF OJC^K!]5O]^KK/_^=+A;K0";%7=X:<+0=1+48U02J2513J*91 MS5":^VU@V\$(;@C?IZ['<%2+44V@FD0U MA6H:U0REN=\5MDCLPT5B'RT242U&-8%J$M44JFE4,Y3F)GKG/I7^(O$'9B7] MUEG)Z&!2PMZ%DKT-)7L?2O9&E.R=*-E;4?X_JL.^K0[[_NK03DJN-Y,2N9V4 MM.:4[*&N42U&-8%J$M44JFE4,Y3FIMEVBWUX96 ?K0Y1+48U@6H2U12J:50S ME.8FVE:'_5,K YW;NC;O'O-UV;;H_^?^X?T5HUYO?PZ!EH&H)E!-HII"-8UJ MAM+O[[[VY?]>M^K9%0;+,']MO_++5=F\H M/AGV#F<0:)&':@+5)*HI5-.H9BC-?2*&+?(&_B+OQCX1HSGB-D&==YCZ;OW= MZ [Z!\GU[T77Y**:0#6):@K5-*H92G.3:TN]@;_4NRFRO C.FP'[J:[S!52+ M44V@FD0UA6H:U0REN6&V7=P [N(&:!>':C&J"523J*903:.:H30WT;:+&YQS M$\\SYQ#]@SE$V#*'0#LX5!.H)E%-H9I&-4-I;DAW'@CG[^"J.405S8=D$7Q) M%LVSNWQ/AAL4C9Z/"<@G_3G>.*-F>H)E%-H9I&-4-I;EQM?Y*OC!]?#!JW?,@5 *S14$Z@F44VAFD8U0VEN M6&V%-O!7:-?N%<&O[)5CV]BVIA5MU% M1C6QU9S'L8[VOR\ENDV%:AK5#*6Y M:;5-V<"_H.YCMLJ6C_7C%?_<#37]F^D<8+1 0S6!:A+5%*II5#.4Y@;=%F@# M>,G< %TRAVHQJ@E4DZBF4$VCFJ$T]Z'AMFD;TDOFANU+YJ+^WN.HK_U;[II6 M5!.H)E%-H9I&-4-I;EIMNS;TMVM=)QI_=@V_?W>Z'KY1+48U@6H2U12J:50S ME.9^0]B&;@@W=$.TH4.U&-4$JDE44ZBF4 MUF ?KCT[7&[OWW;GO*(=&JI)5%.HIE'-4)J;5]NACL+RXJT M^JA(ZTEO:U G!R>C6N[>Y]]JYZ2BW1BJ2513J*91S5":FU3;C8U.W6;R_)OL MC YKJ):C*=I\H9I -8EJ"M4TJAE*7";%\UT M(ICE3^DJ:6\E3E!A%"SS57G??BH-;=503:":1#6%:AK5#*6YT;6MVMC?JKF3 MX3-NXM"::72U&JK%J"903:*:0C6-:H;2W)3;1FX,W[=RC*Y<0[48U02J2513 MJ*91S5":D^B)[>\F)U>XG3K#MA5VY\/CEC-L_@UU#2>J"523J*903:.:H30W MG+:?FW3IYYJI0SIOCKS5ULKJC5W]P=Y,H_[3=3I[+.K91E*] 3QZ78]_XUV/ MS:@6HYI -8EJ"M4TJAE*<^-O^[P)W.=-T#X/U6)4$Z@F44VAFD8U0VENHFV? M-_'W><^W^=M,-YJC=E)M[LB)N,GA@^-:)QYHM8=J M4DJBE4TZAF*,W-J:WV M)EVJO<]-4NO7-">06Z.*MGRH%J.:0#6):@K5-*H92G,3;5N^"=SR3="6#]5B M5!.H)E%-H9I&-4-I;J)MRS"[4$[0 M7@_58E03J"913:&:1C5#:6ZB;:\W\:^TZSB7.%QK%[7,)="R#M4$JDE44ZBF M4&'IUV1+48U02J2513 MJ*91S5":&VA;ZTT'\.0"K?50+48U@6H2U12J:50SE.8FVM9Z4__M,&7V+9T' ML_OJ&)VNFZE%D=RE]6.9L];[8VZYW1HDW#MOX=]BYY2B51VJ2513J*91S5": MFU);U4W]5=VQB<0/+A/Q;ZWS41GM_%!-H)I$-85J&M4,I;EYMYW?= S/,]#* M#]5B5!.H)E%-H9I&-4-I;J)MY3?U+^_K_I#/+;C_D,]>?_]IXOXM=TXK6N>A MFD0UA6H:U0REN6FU==[47^?MS3:@6HYI -8EJ"M4TJAE*02C4+!>SG& YR7**Y33+&8S;RW:XDVW_^KZ7&[5L%J&6>? E MK7)=9$_U38^+?'GR7BW/6W">]G)X+<:)'>D>8K388SG)T^&,YP7*2Y13+:98S&+<7[?Y.M.&GVSV#6+;1#I#E M!,M)EE,LIUG.8-Q>M@<[V?8V,YV;DV?/5YV M7H<[>3W[P7?.-.,'.Y03F^M^I$9;0Y83+"=93K&<9CF#<7O)'^TD'WYDWC.( M91MM"%E.L)QD.<5RFN4,QNUE>[R3[1,/S^O+]8.;'M[KE%BT"6 MDRRG6$ZSG,&X36XOU_=I6L9)F5R]7:;5?/BZF6O,ZI-R]6%YYZM!D=[6L7[S M/KJX//AZ'+Z18+]+;:5.]U?>?H(KN[ M?_FDS!^JK%\$7_*RS)?-A_=I,D^+^@75G]_F>?G\2;V!KWGQ>_/7N?H?4$L# M!!0 ( !>(;EAQH "\#@< /1 9 >&PO=V]R:W-H965TU=.VTODTROIU.JR MUROB)OS(7,J=)/Y:)7K"2C21649SW<[P][.4UY9SJICMW*Z42L M599R=BM1LDJ0Y MXT4J.))L?M6Y#B[) )44L8[$J$53_ M>&(SEF4E25_'OSMH9W_.,O#P\0O]?35Y/9D'6K"9R+ZEB5I>=<8=E+ Y76?J M3FS^9+L)#4I>++*B^A]M=F/['12O"R7R7;"^@CSEVY_T^TZ(@X!@^), O O M/P9$/PD(=P'AL0'1+B"JE-E.I=*!4$6G$RDV2):C-:U\4(E91>OII[Q\W^^5 MU*^F.DY-9R+/4Z7?2%4@RA,4"ZY2OF \3EF!WJ O@K^)*8]91A\RAO3G3=)R M ,J85KM KPA3-,V*UWKLUWN"7OWZ>M)3^L)*?"_>7<3-]B+P3RXBP.BS/N^R M0.]XPA(;T-,SVD\+OTSK!GN)A,5O41AT$>[CT'%!L^/#L2.<'!\>>&83[M^D ML.*%_^=-*@LDGUIG^]DLP[/_ND@H21H!@EHS1 M7L;(1Y]><[ZF&;K3.KI$VP8/JN R73Y-@U&__#?I/1WJ41^'AXYQI#XN#.QQ MUBP&^UD,O+.XH4KGRSNQ7C#T2:S3(J6>/;*@8$LQ0;[Q4;GY)]QO5LX<@]WE.T50,(9JEQL5?CPJO&;$GS%4T7 MO(L^9/I%D3H7GQ?2=O%!P@@0S!(OZ)NJK0^;Q78\("5!:02*9FMY4 $',*FL M@5-5??YDYB>TU@V(9NN&C6[XE(2VBS[,:,/^13VE^<_26A,@FJV)*=0#;P'K M2FOH%=8+-!-Q]>%RNR/0>AV41J!HMJ"F9 \BX$3G]0"MM82D$2B:K:4Q#H'? M.1R?Z/R<>[8Z2'1#IVZ@?@&*9NMF'$/@K:0;$]VP7KI%KD0'6OQ#T6Q-3/D? M^ MWG>AD)I1B7?1%2+5$,RJ%'N1THGY6ZS4):@F@:+:.QA0$8^#\!FD!9J T M D6SM326(O![BN/SFY]CF=*!4S90*P%%L[\I-5X">^OKIO2VB[;2V[B>W?PG M:2L)%,V6Q%@"["_EWQ5Z'29I(KHSFJ5S(7GJ3&Q^3-O%"$HC4#1;0N,.,(9- M;!C2!\Q :02*9FMI7 7VNXJC$UL#Y^.:'Q1N(Z=NH.8!BF;K9LP#/ND+?^SX M)M^9VD!- !3-UL28 -Q@ @1?H!M&X[)D\^8VT/X!*(U T6P-C2' P#T$#-I$ M *41*)JMI3$2&*B1T,!YSQZ:OGWS$UKK=@[C@(UQP">U$W"]GX#'XWIJ ZW_ MH6BV)*;^Q_ZZ_2^NJ$Q%MRFQ@3850&D$BF;?9F"L0 C<5@A!VPJ@- )%L[4T M'B($:BLT<(YH*_@)K74[AW$(C7$(3VHKA/6V0C"*ZD6;_RRM-3F' 0@/[O_Q M%^YWZ1.319JPIMSFY[1>C["W_IS##(3&#(3 G800M), 2B-0-%M+8R+"8SH) MS.2V%=._>!.4L"*6Z:H\Y%343ZWN 41*;&\&=(H(ZB*@:+:(QD6$)[45PGI; M 8\<>0[4#$#1;$F,&0C]1?P=Y4JL,_\](7Y&ZW4):@J@:+9^QA2$P-V$$+2; M $HC4#1;2^,FPF.Z">US7$-OH3G'@1H**)I]PZTQ%-%)O87(T5L8.NZX!?4% M4#1;$N,+(G\]?Y\_2TZ[Z \FY,)=Q?D);5^.:<0,# MX/;" +2] $HC4#1;2V,C!D#MA0;.]7K1=$^(G]!:MW,8B($Q$(.3V@N#>GL! MNRRI_RRM-0$U KV#[> YDXMJ6WVA5]N:J^T6ZOW1_=;]ZVK#^@_';X)+LMV M;S#;OP?PF6KOR@N4L;E&]M^.M&!RN\5^^T2)5;7I_$$H)?+JX9+1A,ER@'Y] M+H1Z>5*>8/^'#J;_ 5!+ P04 " 7B&Y8EBKEH&<" ".!@ &0 'AL M+W=OPDJIUKSBFU90V2V8%N0.'-0AO)'&[-DMK& *L"2 J:#(=C*AE749Z%L[G) M,[UR@BN8&V)74C+S9PI";R91'&T/KOFR=OZ YEG#EG #[K:9&]S1GJ7B$I3E M6A$#BTET$9\7(Q\? GYRV-B=-?%*[K2^]YOOU20:^H) 0.D\ \/'&F8@A"?" M,GYWG%&?T@-WUUOVRZ =M=PQ"S,M?O'*U9/H4T0J6+"5<-=Z\PTZ/:>>K]3" MAE^R:6/'HXB4*^NT[,!8@>2J?;*'K@\[@'C\#"#I ,ECP',9T@Z0OA8PZ@"A MU;25$OI0,,?RS.@-,3X:V?PB-#.@43Y7?NPWSN M1YS+9UI*[G".SA*F*E)J MY;A:@BHY6')<@&-%.3XZ(0<$:[(%1<"QV8SZK (3T7++N&T39@\ MDS!.R!7FJ"WYJBJH]@DH5M]+2+82ILF+C 64 Y+&'T@R3-(#!#T\.P(O7 MP^,7U*3]0-+ E_[/0 ZUNZ4;':;SKG%N&U;")$);L$.7OW\7CX9=#K7I+ MLN*-R/;:..K;.'J)/?_1@&&^<40 V@*!!S1*"X<:V!)]#D3>)==Y/#C+Z'JW M+T]CDL%X/Z9X&I,.XCZF54%WWE0)9AD&ULK9U;;]O*%87_"J&>%CG B<6K1*>V@=B<2PH$ MQXB1]IF1QA81D51)RG:*_O@.+Q8UXF@DNBL/L23/_C@C+G-SUB:'5R]Y\;-< M"5%9K^DZ*Z\GJZK:?)I.R\5*I'%YD6]$)G_SF!=I7,FWQ=.TW!0B7C9!Z7KJ MVO9LFL9)-KFY:CZ[+VZN\FVU3C)Q7UCE-DWCXM>M6.!#5]\U](=]-=Y1EDHJL3/+,*L3C]>2S\XG[LSJ@:?'/1+R4>Z^M M>B@_\OQG_>;+\GIBUST2:[&H:D0L?SR+.[%>UR39CW]WT,ENFW7@_NLW.FT& M+P?S(R[%7;[^5[*L5M>3<&(MQ6.\75??\A6M/I%(X@F M6N[")*NU^U 5\K>)C*MN'E9Q(3[6>W]I+?)4_DF4<2.J#Y&HXF1=_FY]M+X_ M1-:'WWZ_FE9RBW7<=-'1;UNZ>X3N6%_SK%J5%LF68JF)OSL1[QH 4SG4W7C= MM_'>ND;B/^+LPO*R.-_*8IG,;GYVU^JL[2 M'"_%:_U:Z-1G)(Y57PL+&EA]8O)\XWIV_>]J^KPOK&&[2TTS,FP6:)I1Y! 8 M$L9!,$4,P4X,@5$,=WF:RETOD_3BI]7AEY8\H;22LMS&V4(K!R-SK!Q:V&QO M__F>[_@S[T .R(T2)(PB80P)XR"8(JW93EHS\W&FT52^:8XMSZ*LDNS)VH@B MR76G4;=&V%A-F7OF6+]$7.ARV3OCB#EN9J7-*:!..\AA,R2,@V"*=N8[[LNBX'@G!GVB/6Y? \W9[ISL"1W:-(&$/" M. BF:,>Q>Y?+?J]ZMEF;\K3NEI$Z5CL=;5\\H4XZFG:.HY,.M'L42F-0&D?1 M5/GLF:3.>^4C7D6Q2,HC^C%B1^O'&1Y3@EE@![-# 0T;^G;@^+7GJ IHV'!N MAV$P#P_F_]"!,"B-HVBJ-MQ>&^YI1TCGH,>%/.-Y$JG(*NO'+^5$?!/_:CZ. M7^)B64_K%O)=_-0(ZS%."BN-BY^BLNY%44K2*E_7R4U.A"2A6HG,M^(S]'BV^EA;N'Y0NG$/A(3=)H#0*I3$HC:-HJH1[)]TQ6J:=V="= ML]^O8ZV';F:,EA/418?2")1&H30&I7$43=5=[Z4[/JR$XT!=="@M@M((E$:A M- :E<11-E5_OWCMF^WZDQVJFC5:@N6]NXY;J_+<(V@\"I5$HC4%I'$53U=8; M^LYX1_^/O7,_K>2@OGY'VS^%LR^"PU.X,QH1:+\HE,:@-(ZBJ:+IG7S';.6/ M\U'-L-%RF0]LB"#T0W:@;#J5%4!J!TBB4QJ TCJ*I%U3VWKIKPV9Q+M10A](B*(U M:11*8U :1]%4^?7>O&OVYLGK1BSJ2Q;6B4QX6M%!7?@3W6DO<[$,5ZU$_S>! MG"!TDT<3@D*_% :E<11-553OZ+MF1[]+G]9_K;.,43-MM+R0M A*(U :A=(8 ME,91-%6!O2'OXJYM=Z&^/)0606D$2J-0&H/2.(JFRJ_WY5VC\7I.2H6Z\2>Z MXQWW0J'](% :A=(8E,91-%5@O?/NFMWMK_'KL0FJ.7*TLI"T"$HC4!J%TAB4 MQE$T56V]\^[.<-D4ZKA#:1&41J T"J4Q*(VC:*K\>@_?-7OX9V13J&]_HCMO MD\-+TPS5C B.)F3R[D@*_1(8E,91-%5!O:'OF@W]+EV>/2&%NOM06@2E$2B- M0FD,2N,HFJK OJ+@7N)2*+3$ *5%4!J!TBB4QJ TCJ*I=_KW)0;/?/G^Z11J M!HP5W8GN./;Q&2FT(P1*HU :@](XBJ8JK*\B>"VMI6.^ ^!]*UF8H:.%B%U8![NR#G9I'>S:.MC%=;SAQ5RV>O.AJK&^JN"9 M;?QZV:CS4RRTP "E15 :@=(HE,:@-(ZBJ?KKBPY>@$NQT"H$E!9!:01*HU : M@](XBJ;*KZ]">.;K_]^98J'U""@M@M((E$:A--;1U"N7-7?D<]1F58WUI0;O MA+=ON_;Y*19:=8#2(BB-0&D42F-0&D?15/WUA0HOQ*58:)4"2HN@- *E42B- M06D<15/EUU<"VDPYEBIS%H*0)%4Y=_[4L1 MOMG[/ZL":V:,E124%D%I!$JC4!J#TCB*INJN+U#X#BRU^M#Z!)0606D$2J-0 M&H/2.(JFRJ^O3_CF>R+>[BDUW'UL)HQ6G3O(+C/;#09W'VO::9=HU+3S0]\= MW%<,'06#TCB*IFJ@+Q+XYRP3]'DCX8ND7>.J>=9):7UX^/RMU#X?PHP<+0IH MB0!*(U :A=(8E,91-%6&>ROP^[A,""TC0&D1E$:@- JE,2B-HVBJ_/HR@@]= M->@$S7"+YITY=+3^;.";RP;C5H#QAT:U,Y\?SLCO MS-LZA0OW_,\^KM3;V!W2/Z;OX'4$L#!!0 ( !>(;EBK._") M$00 -D3 9 >&PO=V]R:W-H965T37, :)Z:V@>'?UW9"@&SPPFQX@-CQ M.;[W^-KWXO&.BS>Y E#H/6.YG'@KI=;WOB^3%61$=O@:!Y";+B-C/@/'=Q,/>H>.%+E?* M=/C3\9HLX174E_6ST"V_8DEI!KFD/$<"%A/O =_'N&\ =L17"CMY\HR,*W/. MWTSCGW3B!<8B8) H0T'TSQ8>@3'#I.WXKR3UJCD-\/3YP/[9.J^=F1,)CYQ] MHZE:3;RAAU)8D U3+WSW-Y0.]0Q?PIFTWVA7C@T\E&RDXED)UA9D-"]^R7LI MQ D #RX PA(0U@']"X"H!$37SM M 5VK3.&*U2$FBDS'@N^0,*,UFWFP8EJT M=I_F9MU?E=!OJ<:IZ>N*"+B;:>52],@S'4Z2V 6Y0]^L9KK_80M"QP!ZD#HZ MUN:M1%\,@.8H!@5"VT7S)?I,J$!?"=L X@MDF5'!_+ C(I6(*/27(+E"VE1 M\[UF,;@9(\G;W6NRX@PD^M?.@)X%30AE\O>QK[37QG8_*3V< M%1Z&%SS$H>;(U4JB3WD*Z3F!K^6J- L/FLU")V,,20=%^ \4!F'48-#C]?"P M 1Y?#\<.;Z(J B++%SDC8&[7*3F)@":E"Z9N,Y,YHN[EFB0P\?09)$%LP9O^ M^@ON!W\VJ=0F6=P2V9F"W4K!KHM]&M,M32%/T9X"2YMT*_!#BSNV4?IL* MMDD6MT1VIN"@4G#PDSO%B;]5MS;)XH(,!Z<;L!,$X:AY%PXK289.25ZH?$,+ M :"SJ4ZE(!42.CLV:3-LM"#JCVIG2?,X/.S63A2G81^,A%'E]LCI]J?WM:[\ M]$;:*U6LR7;=\EF MV M./_C"X74L7+&[7OE1FH M9*EEC6AT]JE+<#LF;L#@SL45/I:LV%G/79.>W 2'U#!RY2'4E]9&YR5?R5KWJK^ZD'>RM3ZY^9>RM[EW*D*2Z]GHA8TEPB M!@M-J>L.O42BN$=/_ 5!+ M P04 " 7B&Y8A! >6O0# ! #P &0 'AL+W=O1YD5OA@CJ+F>E;\<6,[6594++B0.RK M"O.W1U*RX]R!SJGC<['92MWA+F8[O"%/1/ZU6W'5@;;RS-B+;OR9SQU/SXB4))-: JN_ UF2LM1*:A[_-*). M.Z8F=I]/ZK\9\\K,,Q9DR%_*S^SX!VD,A5HO8Z4PO^#8 M8#T'9'LA6=60U0RJ@M;_^+4)1(< HRL$U!!0GQ!<(?@-P7\O(6@()M1N;<7$ M(<42+V:<'0'7:*6F'TPP#5O9+ZA>]R?)U=M"\>3B:8LYN=.1RT'&*K6=!#8+ M<@>>ZJT V!K(+:E7J)!O0&TVH.:5O0"VTU !"B'VBK^G.>$&NU1*F+[]*,"J MQ KP4THD+DKQLY8UU$^&:EZKON^!"X2>B9BY4KG2 /.1;)K1\/QU9Z.G[Z7#$C=^N ML&_T_+$5ML:UY@5VGDXX]V*',S)W5$81A!^(L_CA.QAYO]IB\!I\T&5KS(B,W9])99])9BZ8W$+@()O?/%POL?\F@C&G<6%D[" MWIY>6E%>_^S:49%]A\#.C0E^0PYMR!!V4_!7W37^,XLV$;4Z() M52KLJ:QOU&UO6P8^F.*GU_^HRT-3LIQEZMKR(^8J-0A0DK62]-0A< "OR[6Z M(=G.%##/3*IRR#QN58E+N :H]VO&Y*FA!VB+YL6_4$L#!!0 ( !>(;EB: M(C&[^@( )@) 9 >&PO=V]R:W-H965T9)RZ=^/DATOR=R@ _*2 MZ$(>GT.*E$8;(9]4BJAAFV>%&CNIUN65ZZHXQ9RICBBQH)V%D#G3-)5+5Y42 M66*=\LP-/*_OYHP73C2R:S,9C<1*9[S F02URG,FGR>8B-VAN#43(7XLE, MOB9CQS.$,,-8&P1&?VN<8I89(*+QN\9TFD\:Q_WQ#OVSU4Y:YDSA5&2//-'I MV!DZD.""K3)]+S9?L-;3,WBQR)3]A4UMZSD0KY06>>U,#')>5/]L6\=ASR'H MO> 0U [!:QW"VB&T0BMF5M8-TRP:2;$!::P)S0QL;*PWJ>&%R>*#EK3+R4]' M#RF3>&$"D4 L8-R!T/\(@1>$+82FKW_[*I^C!+& 'Z5)1VN,*HAN.X0I_RM5LAC'#M6W0KE&)WKWQN][G]KT MG0GL0&VW4=L]A1[5&H&ZC-)TEGBQM$=JC4H?9[>27N'U+9YI5.LHZ'I>&/9' M[GI?58M=X \'EY>-W0'A7D.X=S(]36ET7RC8JDC7WOG(D[ M$]A!'/I-'/IG3MQIO&[=3WJ05^7M7T+"GMM.__0T4J]&ZNZ0 J\%Z4#TH!$] M^+_DW^Z:W,PTN3;5@W,F_$Q@!]J'C?;AF1->X0WV*[!S7*7_VOB=,#PJ47?O MDLM1+NW=K^A26A6ZZO/-:O.\N+:WZM'ZA)X=U2OA+TSU9KECTDW;^?;0C- M@T;1U"^)'_<R+*5>L-.DP4N8@7QJ'KB:V3U+02JH!6$UXK 86[?N31;J>!/P3& C=L9( M*YDS]J(G=\78LO\TVI66.18P M9?0W*60YMF(+%;# *RH?V>87='I,@CFCPORB31L;^1;*5T*RJ@.K#"I2M__X MM?-A!^!&[P"\#N = H)W 'X'\,\%!!T@,,ZT4HP/&98X33C;(*ZC%9L>&#,- M6LDGM2[[3'*U2Q1.IK,2<[B:*.<*-&65NDT"FX) +C*0 MF%!QJ?:>9AFZ^'R9V%+EH)GLO#MOTI[GO7.>ZZ%[5LM2H!]U <4^@:V2[Q5X M6P43[R1C!OD(^>Y7Y#F>/Y#0]'RX-P#/SH>[)]3X?3U\P^>?K,?0 MTRU3,,RD^\6-:' .8TLU! %\#5;ZY9,;.=^'7/I(LNR#R/8<#'H'@U/LZ=NU M79MKRQ:(-=I"@=8@Y.&=:ZUL*4-#J3OE.O7B.')B)['7NRX=Q[E>\"UTHOVX M;" NB-TXC/NX/6UAKRW\7VWP"CPG8EA>>"POC$(G/$A[>AP7.*$;Z ]C3]YQ MW+43Q^'UH3Q[IS%5P)>FP0MUL5>U;+_P?K5_0VY-ZSQ8GZBWI7T*WFC:A^D> M\Z6R!%%8*$IG=*VRXFVS;R>2-:;]S9E4S=0,2_4^ M]/VS 0_5>L;)I VDCSHZ5B;21*-FT?D!"([;.;7!L+ MQ\[L:PO__'"HF.?M>SQ*^Q1S*ZUPLJR;ZJ$\CE!2*7V]<;;>F?Q M4<8'X#G;X='1[I)>O43SY?\I_J'E&Z9TL-,SATN M;,,+F 9T_2V8-039IP_1:/#UD$KO29:_$]DS!=->P?08>W;-L:B$6K*"SID1 M\Y5S$WM(OY9GZ'F<&:ZSX2@:#^D4K'>5>9F6GI.'[J7E+]/B<30X2P5NU+8'OI^MC?12^\=>_,S,M?6"__1M,Y\S/O_UPCN8D?5O2# .,2:'VA-6X#MT'_R\G^ E!+ P04 " 7 MB&Y8,>Q?&V0" "&!@ &0 'AL+W=OTGL]F8RB46C2\9A)I%JJHK*IRF48CWQ F^S<Y:<5< 5$QQ)6$R\R^ BC6R^2_C%8*VVULA.*[B"LK1$IHT_':?7E[3 [?6&_:N;WMOT,TSLGR9*)7[1>LV=S3R4-8H+:H.;#JH&&^?]+'3 M80L0C/< 2 <@SP'1'D#8 <)# 5$'<%+C=A2G0THU36(IUDC:;,-F%TY,AS;C M,VZO?:ZE.64&IY,9?4(KA68@W2O$,T I4UDI5",!?41W\Q0='YV@(\0X^EF( M1E&>JQAK4]LRX*RK,VWKD#UU H)N!->%0E]X#ODN 39-]YV33>=3\BIC"MDI M"H,/B/@D'&CHZG X&8"GA\.#5Z8)^WL('5_X/__+#&.4UST0%Z/B[4.ID2+J6 M8N0HK"VNDA$AT5F,5]N:O,P*_/#<#W;3TI=I(2&C3WU6.P;>^H=6()?.Z13* M1,-U^\KWN[V97CH/>;8_-2;;>N(_FM:A;ZA<,JY0"0M#Z9^>F9YDZWIMH$7M M?.!>:.,J;EF8#P5(FV#.%T+H36 +])^>Y"]02P,$% @ %XAN6&0ZHFM# M @ B@8 !D !X;"]W;W)K&ULG95;;YLP%(#_ MBL6D/;7AELN6 5+2;EH>.D5IMST[< "KQF:V">V_KVT(RZ:$2GD!VYSS^3M& M'**6BV=9 BCT4E$F8Z=4JEZZKDQ+J+"<\!J8?I)S46&EIZ)P92T 9S:IHF[@ M>7.WPH0Y2637MB*)>*,H8; 52#95A<7K&BAO8\=WC@L[4I3*++A)5.,"'D'] MK+="S]R!DI$*F"2<(0%Y[*S\Y7IAXFW +P*M/!DC4\F>\V"FGTEY1V\6&GQV4-E+QJD_6!A5AW1V_].=PDJ YYQ."/B&PWMU& MUO(>*YQ$@K=(F&A-,P-;JLW6",L *MA,"L M 'WL2D:NTCN8.#?M:>N.%ER@A>B!,U5*])5ED/V;[VJS02\XZJV#4> ]I!,4 M^CX7<./0]N?D@-[_JU)Y Z*\(7W ;9[[GMAC<%EB MGWO2'RH0A>V"$J6\8:IK%VVZSYTKW+CLL]<\"A G0SW/.U7%B-AA^/\D;4$L#!!0 ( !>(;EC4 MWM>O+P, .H2 - >&PO.RUI^/3X[35_P(<:'K:P5Q'>/[[G'O@NV M&-1F)=C-G#$3+4LAZR&9&U-]BN-Z.FCH\[=Z>6^_\0!IR0.DIZ_@/2L@_-:#*-.=ZG=]&-+Y ./L;"+ M%REZ1A!&W _HL?(WDL!PP7%3D-&@4')3EX1XAV6G)8ONJ1B2,15\HCE$%;3D M8N7=/7!,E5 Z,K8A;+HN>.H'#W>]!;W2\)1<*NUR^PS^]Z29O@>L+1#(A6@% M]HAWC 85-89I>64--]DYGT!1,[Y=55;A3--5MW=.-@'N89-,E,Z9;M-TR=HU M&@A6@!S-9W-X&E7% !JC2CO(.9TI29V&=40SL+13)L0-O$@_BQWN9;%5MPY4 M3;9#*Z@9>AIO /\VF^?>INV]BC>J^+TR7Q9V.=+9T&CL6K."+YV]+%H!&'L7 M9Z=5)5:?!9_)DOG%OSCA:$#7<=%<:?Y@LT&K3*V#:1+=,VWX=-OS6]/JEBW- MNIV6!:ZY]P8U_]U]GC')-!7;HFWO'_(NOUIQ<_+\"\WNS\J^XJ#(Y.+P-3:G M[:&+3-^"R#=1[O[ABTRR@]08-^?WUB5AYXK0>B.XB@W)#[C8B4W2:++@PG#9 M6'.>YTP^N2E8>D,G]B*_PV_GYZR@"V%N6W!(-N/O+.>+,FMG7<-&-+,VXV^P MO&[:W@-M+BYSMF3YN#'U;.*&D1W8K,T' O:1*_<)(UB,Q\((8%@>3 $6XZ.P M//_3>OKH>CR&:>L'D3X:TT=C?%0(&;LOEB<*59EB1IBNWH>!Q4,,;V M+4WA)\R&:8,(+ ]D^K.]QJN-=\CS?8#5]+D.P5:*=R*V4GRO 0GO&T1D6;C: M6!Z(P*J ]0[D#^>!G@K') E4%=.&O<$XDF48 KT8[M$T178GA6^X/MA;DB19 M%D8 "RM($@R!MQ%', 6@ 4.2Q)V#>^=1O#ZGXLU_MT:/4$L#!!0 ( !>( M;EB7BKL

-8?20$3;8T.P6BP^0"X99K>]9!:G$4QG7-?M<>BL16>F@*S@U7"E^]JH>K]H ;U=">2CA@5W4/ M3@>YA&VC9 W?7K./7'%="=87UT6 *0*8OAH@.[GD$62&0&8O"+G2E6F ,;"$ MS\6%S!'&_ 49O\,QLX4M4T60!0)9O!KDDKM]!%DBD"4MY+IK&FX?^LK)G9;P M,0[=_*RJ3 ?=/()\@T"^H87\Q*5E-UQU(N)YB_"\I>6YMKP6,%CW-7+,BDK( M6PX(;,JT\!'D.P3R'2WD2M_""2 K$7?:9(Z-SW-:)-!P"Y)\^)6UBC_*1/S; MR39\+H9$)4)LD0O!W;ADF#$28F4\#L">WX^9,$$DQ(;X;$Q])Y7J[Y^$)*1W M@8!QY\:J33!%),2.@"',=C#RBGMH!.YH3VO\7EA6==;&F)@D$F)+K/?&^BED MO*8'O#!Z-VS58C/J$Y@D$F)++$W32#_H*U!6D'\AB@I=_3"Z8))(B"VQWG,K MIAOHO0&P"7?]63C%I)$06^-*>&G[#, V0HNMA&*&<3#FPWR1$ L#C0+_I'&$ MQB22$DL$Q\QB3$PC*;%&T(PPKB8Z(R'WRU-*8"?7@<_]$K-AGDF)/8/&!782 M8V*B28E%,P2&GU8/$TM*+)8X.?P4#A-*2BP4/$*P&!-32DJL%#1#C#LQ9I:4 MV"QHAAAW%$PP*;%@T!0QPLPPP634@CF2(QX[48R)"28C%@SNP3S&Q 23$0L& MQRQB3/2A%[%K<,PRQL1_3>2S4R>8:Y)R-V#Q[2IC$FYIZ,V#THYLCD.>:>G-@]CUERRKYP MW]FPR@(#D@H[6G-@]3YAG=2W# M4:Z.K%KEF'MR8O<\8:Z[ME7]$P( K;C;LZTR=S$FNN9"[)[1A&+*H$<%!LA% MT!ID^!@3*;L2$#,KJ>20X4R,B;DG)W;/#YCG8BNL%6$RU.^/,3'W MY,3N02=JXW$3LU!.;"$<,\Y%.6:AG-A"^'PRQBPP"Q7D,R!D/CFZZ05FH8)Z M!H1.>^/H46 6*LA7_;%I[P@3LU!!ONZ/8(YO.F:A@MA"QV?G?3*.,=&U?_)E MG8#YL<=0NQ@3LU!!O?Q_K)HAC#1QWBPP"Q6OM+335W/\V\0L5) _ MASMZTU?:QTN.!6:A@MA"QQ:BGG>A$K-02?VV ']@MXY="MM_/$PSSJ6KE'&= MC9_"E9B#2F('K;23->@[/$J T9*=60O9X]F[4B4FH+(7T.SP%E\-=T2+^D]H MW\'^BJOJ$O(!_!G>1LB+L$RX[91:PKZ_](7A]>&EP,,+C1_^ U!+ P04 M" 7B&Y8=TMQA08" #Q) &@ 'AL+U]R96QS+W=OI>/7;GKAWPZ M7]GTX[&;SLMQFX9N_=YM<]+ELDWC[8SF^>EVYN+U<\C_,['?;/;K_+-?_S[F MT_2/P>E//[Z775DWZ.%Q/EW0YR-UY5LUX\N;-*EVD$*0 MU@\R"++Z00Y!7C\H("CJ![40U-8/NH>@^_I!#Q#T4#_H$8(>ZP?)$F5<$B3- ML";06I!K(?!:$&PA$%N0;"$P6Q!M(5!;D&TA<%L0;B&06Y!N(;!;$&\AT%M1 M;R706U%O)=!;9Q_;!'HKZJT$>BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'HK MZJT$>AOJ;01Z&^IM!'H;ZFT$>MMLLX1 ;T.]C4!O0[V-0&]#O8U ;T.]C4!O M0[V-0&]#O8U ;T>]G4!O1[V=0&]'O9U ;T>]G4!OGVUV$^CMJ+<3Z.VHMQ/H M[:BW$^CMJ+<3Z.VHMQ/H':AW$.@=J'<0Z!VH=Q#H':AW$.@=J'<0Z!VSGY4$ M>@?J'01Z!^H=!'H'ZAT$>@?J'01ZMZAW2Z!WBWJW!'JWJ'?[G7J7Z?.0R[7G M:XW/_TZJI_.]^?KXR_+KY.R]7'!.MQ7E^2]02P,$% @ %XAN6/\GIW7C M 0 ;"0 !, !;0V]N=&5N=%]4>7!E&ULS=I=3\(P% ;@OT)V:UCI MU_R(<*/>JA?^@;H=9&%;F[8@_'N[ 28:)1I,?&]8H.UYSWJ2YXKKIZVC,-JT M31>FV2)&=\58*!?4FI!;1UU:F5O?FIB^^A?F3+DT+\3$9%*PTG:1NCB.?8UL M=GU+<[-JXNANDWX.M>VFF:X K @ $0 @ &O 9&]C4')O<',O M8V]R92YX;6Q02P$"% ,4 " 7B&Y8F5R<(Q & "<)P $P M @ ', 0 >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( !>(;EBR M>_ JL < #,S 8 " @0T( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ M%XAN6%J2X@XI P * P !@ ("!L18 'AL+W=O&PO=V]R M:W-H965T&UL4$L! A0#% @ %XAN6.?S#N_+" 2L M !@ ("!I24 'AL+W=O(;E@2+*'F(RD "B$ 8 " @:8N !X M;"]W;W)K0$ M !S# & @('_5P >&PO=V]R:W-H965T&UL4$L! A0#% @ %XAN6#?NGJUB P OPD !@ ("! M&5T 'AL+W=O(;ECC M-#,TAP( "0& 9 " @;%@ !X;"]W;W)K&UL4$L! A0#% @ %XAN6"50%ZL(! H@H !D M ("!;V, 'AL+W=O&PO=V]R:W-H M965T(;EAX!T'8YP8 4 9 M " @7%O !X;"]W;W)K&UL4$L! M A0#% @ %XAN6*3.S7FA! U@T !D ("!CW8 'AL M+W=OP >&PO=V]R:W-H965T(;EA$[9=7NA$ -TU 9 " M@3]^ !X;"]W;W)K&UL4$L! A0#% @ %XAN M6"1S^UU>! A H !D ("!,) 'AL+W=O&PO=V]R:W-H965T(;EA05+TAXP( $P& 9 " @>"? !X;"]W;W)K M&UL4$L! A0#% @ %XAN6)!JO^DD*@ S(P M !D ("!^J( 'AL+W=O&PO=V]R:W-H965T(;E@#(618 M4 , - ) 9 " @2O1 !X;"]W;W)K&UL4$L! A0#% @ %XAN6-$V3OY\ @ _P4 !D M ("!LM0 'AL+W=OJ80# !-"0 &0 @(%EUP >&PO=V]R:W-H965T M(;EAN(;'$4@0 'X, 9 M " @2#; !X;"]W;W)K&UL4$L! A0# M% @ %XAN6-<4I)VM! \PX !D ("!J=\ 'AL+W=O M&PO=V]R:W-H965T(;EC.(F5]F ( %T& 9 " @?[G M !X;"]W;W)K&UL4$L! A0#% @ %XAN6/!P M!Y+J @ %0@ !D ("!S>H 'AL+W=O&PO=V]R:W-H965T(;ECZV/7Z-@4 $01 9 " @:CQ !X;"]W;W)K&UL4$L! A0#% @ %XAN6!1L1I7," 3%, !D M ("!%?< 'AL+W=O&PO M=V]R:W-H965T(;E@W^I+N/P, M #$- 9 " @8X# 0!X;"]W;W)K&UL4$L! A0#% @ %XAN6#:D.Z6: @ $P< !D ("! M! &PO=V]R:W-H965T(;E@;OH[,+P( $\% 9 M " @0$- 0!X;"]W;W)K&UL4$L! A0#% M @ %XAN6+T;*!]D @ .08 !D ("!9P\! 'AL+W=O&PO=V]R:W-H965T( M;EAL[8;[Z0( /D* 9 " @3HE 0!X;"]W;W)K&UL4$L! A0#% @ %XAN6&\2IR.I @ L@8 !D M ("!6B@! 'AL+W=O&PO=V]R M:W-H965T(;EC>F<6D.P0 44 M 9 " @;DN 0!X;"]W;W)K&UL M4$L! A0#% @ %XAN6#U)8=0U P GPH !D ("!*S,! M 'AL+W=O&PO=V]R:W-H965T(;EC6^1Q"1@, )8. 9 M " @: [ 0!X;"]W;W)K&UL4$L! A0#% @ M%XAN6 #Y\5KC @ K @ !D ("!'3\! 'AL+W=OMW< " #I!P &0 M @($W0@$ >&PO=V]R:W-H965T(;EC%&"9AQA( %8I 0 9 " @2Y% 0!X;"]W M;W)K&UL4$L! A0#% @ %XAN6'&@ +P.!P M]$ !D ("!*U@! 'AL+W=O&PO=V]R:W-H965T(;EC0 MU^K*APD *YO 9 " @0YB 0!X;"]W;W)K&UL4$L! A0#% @ %XAN6*L[\(D1! V1, !D M ("!S&L! 'AL+W=O6O0# ! #P &0 @($4< $ >&PO=V]R:W-H M965T(;EB:(C&[^@( )@) 9 M " @3]T 0!X;"]W;W)K&UL4$L! M A0#% @ %XAN6!)+8BVB @ ?0< !D ("!<'@$ >&PO=V]R:W-H965T(;E@Q[%\;9 ( (8& 9 " M@>!\ 0!X;"]W;W)K&UL4$L! A0#% @ %XAN M6&0ZHFM# @ B@8 !D ("!>W\! 'AL+W=O&PO(;EB7BKL< MP !," + " 4^% 0!?(;EC#@_LV%04 %0I / " 3B& 0!X;"]W;W)K M8F]O:RYX;6Q02P$"% ,4 " 7B&Y8=TMQA08" #Q) &@ M @ %ZBP$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4 M" 7B&Y8_R>G=>,! !L) $P @ &XC0$ 6T-O;G1E;G1? @5'EP97-=+GAM;%!+!08 1@!& "$3 #,CP$ ! end XML 79 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 80 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 82 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.0.1 html 186 322 1 false 68 0 false 6 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - Consolidated Balance Sheets Sheet http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets Consolidated Balance Sheets Statements 2 false false R3.htm 00105 - Statement - Consolidated Balance Sheets (Parenthetical) Sheet http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical Consolidated Balance Sheets (Parenthetical) Statements 3 false false R4.htm 00200 - Statement - Consolidated Income Statements Sheet http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements Consolidated Income Statements Statements 4 false false R5.htm 00300 - Statement - Consolidated Statements of Stockholders' Equity Sheet http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity Consolidated Statements of Stockholders' Equity Statements 5 false false R6.htm 00400 - Statement - Consolidated Statements of Cash Flows Sheet http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows Consolidated Statements of Cash Flows Statements 6 false false R7.htm 10101 - Disclosure - Summary of Significant Accounting Policies Sheet http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPolicies Summary of Significant Accounting Policies Notes 7 false false R8.htm 10201 - Disclosure - Fair Value Sheet http://www.hudsontech.com/role/DisclosureFairValue Fair Value Notes 8 false false R9.htm 10301 - Disclosure - Trade accounts receivable - net Sheet http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNet Trade accounts receivable - net Notes 9 false false R10.htm 10401 - Disclosure - Inventories Sheet http://www.hudsontech.com/role/DisclosureInventories Inventories Notes 10 false false R11.htm 10501 - Disclosure - Property, plant and equipment Sheet http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipment Property, plant and equipment Notes 11 false false R12.htm 10601 - Disclosure - Leases Sheet http://www.hudsontech.com/role/DisclosureLeases Leases Notes 12 false false R13.htm 10701 - Disclosure - Income taxes Sheet http://www.hudsontech.com/role/DisclosureIncomeTaxes Income taxes Notes 13 false false R14.htm 10801 - Disclosure - Goodwill and intangible assets Sheet http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssets Goodwill and intangible assets Notes 14 false false R15.htm 10901 - Disclosure - Accrued expenses and other current liabilities Sheet http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities Accrued expenses and other current liabilities Notes 15 false false R16.htm 11001 - Disclosure - Short-term and Long-term debt Sheet http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebt Short-term and Long-term debt Notes 16 false false R17.htm 11101 - Disclosure - Commitments and contingencies Sheet http://www.hudsontech.com/role/DisclosureCommitmentsAndContingencies Commitments and contingencies Notes 17 false false R18.htm 11201 - Disclosure - Share-based compensation Sheet http://www.hudsontech.com/role/DisclosureShareBasedCompensation Share-based compensation Notes 18 false false R19.htm 11301 - Disclosure - Retirement benefits plan Sheet http://www.hudsontech.com/role/DisclosureRetirementBenefitsPlan Retirement benefits plan Notes 19 false false R20.htm 20102 - Disclosure - Summary of Significant Accounting Policies (Policies) Sheet http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies Summary of Significant Accounting Policies (Policies) Policies http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPolicies 20 false false R21.htm 30103 - Disclosure - Summary of Significant Accounting Policies (Tables) Sheet http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesTables Summary of Significant Accounting Policies (Tables) Tables http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPolicies 21 false false R22.htm 30303 - Disclosure - Trade accounts receivable - net (Tables) Sheet http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetTables Trade accounts receivable - net (Tables) Tables http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNet 22 false false R23.htm 30403 - Disclosure - Inventories (Tables) Sheet http://www.hudsontech.com/role/DisclosureInventoriesTables Inventories (Tables) Tables http://www.hudsontech.com/role/DisclosureInventories 23 false false R24.htm 30503 - Disclosure - Property, plant and equipment (Tables) Sheet http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentTables Property, plant and equipment (Tables) Tables http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipment 24 false false R25.htm 30603 - Disclosure - Leases (Tables) Sheet http://www.hudsontech.com/role/DisclosureLeasesTables Leases (Tables) Tables http://www.hudsontech.com/role/DisclosureLeases 25 false false R26.htm 30703 - Disclosure - Income taxes (Tables) Sheet http://www.hudsontech.com/role/DisclosureIncomeTaxesTables Income taxes (Tables) Tables http://www.hudsontech.com/role/DisclosureIncomeTaxes 26 false false R27.htm 30803 - Disclosure - Goodwill and intangible assets (Tables) Sheet http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsTables Goodwill and intangible assets (Tables) Tables http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssets 27 false false R28.htm 30903 - Disclosure - Accrued expenses and other current liabilities (Tables) Sheet http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables Accrued expenses and other current liabilities (Tables) Tables http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities 28 false false R29.htm 31003 - Disclosure - Short-term and Long-term debt (Tables) Sheet http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtTables Short-term and Long-term debt (Tables) Tables http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebt 29 false false R30.htm 31103 - Disclosure - Commitments and contingencies (Tables) Sheet http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesTables Commitments and contingencies (Tables) Tables http://www.hudsontech.com/role/DisclosureCommitmentsAndContingencies 30 false false R31.htm 31203 - Disclosure - Share-based compensation (Tables) Sheet http://www.hudsontech.com/role/DisclosureShareBasedCompensationTables Share-based compensation (Tables) Tables http://www.hudsontech.com/role/DisclosureShareBasedCompensation 31 false false R32.htm 40101 - Disclosure - Summary of Significant Accounting Policies (Details) Sheet http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails Summary of Significant Accounting Policies (Details) Details http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesTables 32 false false R33.htm 40102 - Disclosure - Summary of Significant Accounting Policies - Reconciliation of shares used to determine net income per share (Details) Sheet http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfSharesUsedToDetermineNetIncomePerShareDetails Summary of Significant Accounting Policies - Reconciliation of shares used to determine net income per share (Details) Details 33 false false R34.htm 40103 - Disclosure - Summary of Significant Accounting Policies - Summary of company's revenues (Details) Sheet http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails Summary of Significant Accounting Policies - Summary of company's revenues (Details) Details 34 false false R35.htm 40301 - Disclosure - Trade accounts receivable - net - Changes in accounts receivable (Details) Sheet http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetChangesInAccountsReceivableDetails Trade accounts receivable - net - Changes in accounts receivable (Details) Details 35 false false R36.htm 40302 - Disclosure - Trade accounts receivable - net - Reserves for doubtful accounts (Details) Sheet http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetReservesForDoubtfulAccountsDetails Trade accounts receivable - net - Reserves for doubtful accounts (Details) Details 36 false false R37.htm 40303 - Disclosure - Trade accounts receivable - net - Additional Information (Details) Sheet http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetAdditionalInformationDetails Trade accounts receivable - net - Additional Information (Details) Details 37 false false R38.htm 40401 - Disclosure - Inventories (Details) Sheet http://www.hudsontech.com/role/DisclosureInventoriesDetails Inventories (Details) Details http://www.hudsontech.com/role/DisclosureInventoriesTables 38 false false R39.htm 40501 - Disclosure - Property, plant and equipment - Summary of elements of property, plant and equipment (Details) Sheet http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails Property, plant and equipment - Summary of elements of property, plant and equipment (Details) Details 39 false false R40.htm 40502 - Disclosure - Property, plant and equipment - Additional Information (Details) Sheet http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails Property, plant and equipment - Additional Information (Details) Details 40 false false R41.htm 40601 - Disclosure - Leases - Maturity of lease payments (Details) Sheet http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails Leases - Maturity of lease payments (Details) Details 41 false false R42.htm 40602 - Disclosure - Leases - Balance Sheet Classification and Other Information (Details) Sheet http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails Leases - Balance Sheet Classification and Other Information (Details) Details 42 false false R43.htm 40603 - Disclosure - Leases - Additional Information (Details) Sheet http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails Leases - Additional Information (Details) Details 43 false false R44.htm 40604 - Disclosure - Leases - Supplemental cash flow and non-cash information related to leases (Details) Sheet http://www.hudsontech.com/role/DisclosureLeasesSupplementalCashFlowAndNonCashInformationRelatedToLeasesDetails Leases - Supplemental cash flow and non-cash information related to leases (Details) Details 44 false false R45.htm 40701 - Disclosure - Income taxes - Provision for income taxes (Details) Sheet http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails Income taxes - Provision for income taxes (Details) Details 45 false false R46.htm 40702 - Disclosure - Income taxes - Reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate (Details) Sheet http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails Income taxes - Reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate (Details) Details 46 false false R47.htm 40703 - Disclosure - Income taxes - Deferred income tax assets (liabilities) (Details) Sheet http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails Income taxes - Deferred income tax assets (liabilities) (Details) Details 47 false false R48.htm 40801 - Disclosure - Goodwill and intangible assets - Company's other intangible assets (Details) Sheet http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails Goodwill and intangible assets - Company's other intangible assets (Details) Details 48 false false R49.htm 40802 - Disclosure - Goodwill and intangible assets - Additional Information (Details) Sheet http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails Goodwill and intangible assets - Additional Information (Details) Details 49 false false R50.htm 40901 - Disclosure - Accrued expenses and other current liabilities (Details) Sheet http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails Accrued expenses and other current liabilities (Details) Details http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables 50 false false R51.htm 41001 - Disclosure - Short-term and Long-term debt (Details) Sheet http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails Short-term and Long-term debt (Details) Details http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtTables 51 false false R52.htm 41002 - Disclosure - Short-term and Long-term debt - Additional Information (Details) Sheet http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails Short-term and Long-term debt - Additional Information (Details) Details 52 false false R53.htm 41101 - Disclosure - Commitments and contingencies - Non-cancelable operating leases (Details) Sheet http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails Commitments and contingencies - Non-cancelable operating leases (Details) Details 53 false false R54.htm 41102 - Disclosure - Commitments and contingencies (Details) Sheet http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesDetails Commitments and contingencies (Details) Details http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesTables 54 false false R55.htm 41201 - Disclosure - Share-based compensation (Details) Sheet http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails Share-based compensation (Details) Details http://www.hudsontech.com/role/DisclosureShareBasedCompensationTables 55 false false R56.htm 41202 - Disclosure - Share-Based Compensation - Weighted Average Assumptions Used in Determining Fair Value of Share Based Awards at Grant Date by Using Black-Scholes Option Pricing Model (Details) Sheet http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails Share-Based Compensation - Weighted Average Assumptions Used in Determining Fair Value of Share Based Awards at Grant Date by Using Black-Scholes Option Pricing Model (Details) Details 56 false false R57.htm 41203 - Disclosure - Share-based compensation - Summary of the activity for stock options issued under the Company's Plans (Details) Sheet http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails Share-based compensation - Summary of the activity for stock options issued under the Company's Plans (Details) Details 57 false false R58.htm 41204 - Disclosure - Share-based compensation - Weighted average contractual life in years and the weighted average exercise price (Details) Sheet http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails Share-based compensation - Weighted average contractual life in years and the weighted average exercise price (Details) Details 58 false false R59.htm 41205 - Disclosure - Share-Based Compensation - Intrinsic Value (Details) Sheet http://www.hudsontech.com/role/DisclosureShareBasedCompensationIntrinsicValueDetails Share-Based Compensation - Intrinsic Value (Details) Details 59 false false R60.htm 41301 - Disclosure - Retirement benefits plan (Details) Sheet http://www.hudsontech.com/role/DisclosureRetirementBenefitsPlanDetails Retirement benefits plan (Details) Details http://www.hudsontech.com/role/DisclosureRetirementBenefitsPlan 60 false false R61.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Uncategorized 61 false false R62.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Cover 62 false false All Reports Book All Reports hdsn-20231231.xsd hdsn-20231231_cal.xml hdsn-20231231_def.xml hdsn-20231231_lab.xml hdsn-20231231_pre.xml hdsn-20231231x10k.htm hdsn-20231231x10k001.jpg http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 85 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "hdsn-20231231x10k.htm": { "nsprefix": "hdsn", "nsuri": "http://www.hudsontech.com/20231231", "dts": { "schema": { "local": [ "hdsn-20231231.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-sub-2023.xsd" ] }, "calculationLink": { "local": [ "hdsn-20231231_cal.xml" ] }, "definitionLink": { "local": [ "hdsn-20231231_def.xml" ] }, "labelLink": { "local": [ "hdsn-20231231_lab.xml" ] }, "presentationLink": { "local": [ "hdsn-20231231_pre.xml" ] }, "inline": { "local": [ "hdsn-20231231x10k.htm" ] } }, "keyStandard": 280, "keyCustom": 42, "axisStandard": 21, "axisCustom": 1, "memberStandard": 35, "memberCustom": 33, "hidden": { "total": 33, "http://www.hudsontech.com/20231231": 4, "http://fasb.org/us-gaap/2023": 23, "http://xbrl.sec.gov/dei/2023": 6 }, "contextCount": 186, "entityCount": 1, "segmentCount": 68, "elementCount": 579, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 685, "http://xbrl.sec.gov/dei/2023": 38, "http://xbrl.sec.gov/ecd/2023": 4 }, "report": { "R1": { "role": "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation", "longName": "00090 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets", "longName": "00100 - Statement - Consolidated Balance Sheets", "shortName": "Consolidated Balance Sheets", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical", "longName": "00105 - Statement - Consolidated Balance Sheets (Parenthetical)", "shortName": "Consolidated Balance Sheets (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_yiWfNCMKzUSOsLK1aek9WA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_yiWfNCMKzUSOsLK1aek9WA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements", "longName": "00200 - Statement - Consolidated Income Statements", "shortName": "Consolidated Income Statements", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:Revenues", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R5": { "role": "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity", "longName": "00300 - Statement - Consolidated Statements of Stockholders' Equity", "shortName": "Consolidated Statements of Stockholders' Equity", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_cqsUW6Mne02ReyNj-z5P5Q", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_cqsUW6Mne02ReyNj-z5P5Q", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows", "longName": "00400 - Statement - Consolidated Statements of Cash Flows", "shortName": "Consolidated Statements of Cash Flows", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R7": { "role": "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPolicies", "longName": "10101 - Disclosure - Summary of Significant Accounting Policies", "shortName": "Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R8": { "role": "http://www.hudsontech.com/role/DisclosureFairValue", "longName": "10201 - Disclosure - Fair Value", "shortName": "Fair Value", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNet", "longName": "10301 - Disclosure - Trade accounts receivable - net", "shortName": "Trade accounts receivable - net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.hudsontech.com/role/DisclosureInventories", "longName": "10401 - Disclosure - Inventories", "shortName": "Inventories", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipment", "longName": "10501 - Disclosure - Property, plant and equipment", "shortName": "Property, plant and equipment", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.hudsontech.com/role/DisclosureLeases", "longName": "10601 - Disclosure - Leases", "shortName": "Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.hudsontech.com/role/DisclosureIncomeTaxes", "longName": "10701 - Disclosure - Income taxes", "shortName": "Income taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssets", "longName": "10801 - Disclosure - Goodwill and intangible assets", "shortName": "Goodwill and intangible assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities", "longName": "10901 - Disclosure - Accrued expenses and other current liabilities", "shortName": "Accrued expenses and other current liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebt", "longName": "11001 - Disclosure - Short-term and Long-term debt", "shortName": "Short-term and Long-term debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingencies", "longName": "11101 - Disclosure - Commitments and contingencies", "shortName": "Commitments and contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.hudsontech.com/role/DisclosureShareBasedCompensation", "longName": "11201 - Disclosure - Share-based compensation", "shortName": "Share-based compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.hudsontech.com/role/DisclosureRetirementBenefitsPlan", "longName": "11301 - Disclosure - Retirement benefits plan", "shortName": "Retirement benefits plan", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies", "longName": "20102 - Disclosure - Summary of Significant Accounting Policies (Policies)", "shortName": "Summary of Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "20", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:NatureOfOperationsPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:NatureOfOperationsPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesTables", "longName": "30103 - Disclosure - Summary of Significant Accounting Policies (Tables)", "shortName": "Summary of Significant Accounting Policies (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "21", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetTables", "longName": "30303 - Disclosure - Trade accounts receivable - net (Tables)", "shortName": "Trade accounts receivable - net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "22", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:ScheduleOfChangesInAccountsReceivableTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:ScheduleOfChangesInAccountsReceivableTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.hudsontech.com/role/DisclosureInventoriesTables", "longName": "30403 - Disclosure - Inventories (Tables)", "shortName": "Inventories (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentTables", "longName": "30503 - Disclosure - Property, plant and equipment (Tables)", "shortName": "Property, plant and equipment (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.hudsontech.com/role/DisclosureLeasesTables", "longName": "30603 - Disclosure - Leases (Tables)", "shortName": "Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.hudsontech.com/role/DisclosureIncomeTaxesTables", "longName": "30703 - Disclosure - Income taxes (Tables)", "shortName": "Income taxes (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsTables", "longName": "30803 - Disclosure - Goodwill and intangible assets (Tables)", "shortName": "Goodwill and intangible assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables", "longName": "30903 - Disclosure - Accrued expenses and other current liabilities (Tables)", "shortName": "Accrued expenses and other current liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtTables", "longName": "31003 - Disclosure - Short-term and Long-term debt (Tables)", "shortName": "Short-term and Long-term debt (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesTables", "longName": "31103 - Disclosure - Commitments and contingencies (Tables)", "shortName": "Commitments and contingencies (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:ScheduleOfOperatingLeaseInAnnualRentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:ScheduleOfOperatingLeaseInAnnualRentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.hudsontech.com/role/DisclosureShareBasedCompensationTables", "longName": "31203 - Disclosure - Share-based compensation (Tables)", "shortName": "Share-based compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails", "longName": "40101 - Disclosure - Summary of Significant Accounting Policies (Details)", "shortName": "Summary of Significant Accounting Policies (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "Unit_Standard_segment_CDuI7RX7PEaDK5gYWeSspA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "hdsn:NatureOfOperationsPolicyPolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "Unit_Standard_segment_CDuI7RX7PEaDK5gYWeSspA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "hdsn:NatureOfOperationsPolicyPolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfSharesUsedToDetermineNetIncomePerShareDetails", "longName": "40102 - Disclosure - Summary of Significant Accounting Policies - Reconciliation of shares used to determine net income per share (Details)", "shortName": "Summary of Significant Accounting Policies - Reconciliation of shares used to determine net income per share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "unitRef": "Unit_Standard_shares_8tgMkxwOXkCOmY1j_s19vQ", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "us-gaap:EarningsPerSharePolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R34": { "role": "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails", "longName": "40103 - Disclosure - Summary of Significant Accounting Policies - Summary of company's revenues (Details)", "shortName": "Summary of Significant Accounting Policies - Summary of company's revenues (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_srt_ProductOrServiceAxis_us-gaap_ProductMember_8LFnkhGhMEafKckluZbZ3w", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R35": { "role": "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetChangesInAccountsReceivableDetails", "longName": "40301 - Disclosure - Trade accounts receivable - net - Changes in accounts receivable (Details)", "shortName": "Trade accounts receivable - net - Changes in accounts receivable (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "As_Of_12_31_2022_1wVMjW6KtEqYAoFiY04vJA", "name": "us-gaap:AccountsReceivableNetCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2021_L0QXTbGlzUawNQuhCgHEXA", "name": "us-gaap:AccountsReceivableNetCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "hdsn:ScheduleOfChangesInAccountsReceivableTableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R36": { "role": "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetReservesForDoubtfulAccountsDetails", "longName": "40302 - Disclosure - Trade accounts receivable - net - Reserves for doubtful accounts (Details)", "shortName": "Trade accounts receivable - net - Reserves for doubtful accounts (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "As_Of_12_31_2022_1wVMjW6KtEqYAoFiY04vJA", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:AllowanceForDoubtfulAccountsReceivableDeductionsAndOther", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R37": { "role": "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetAdditionalInformationDetails", "longName": "40303 - Disclosure - Trade accounts receivable - net - Additional Information (Details)", "shortName": "Trade accounts receivable - net - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.hudsontech.com/role/DisclosureInventoriesDetails", "longName": "40401 - Disclosure - Inventories (Details)", "shortName": "Inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:InventoryGross", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:InventoryGross", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails", "longName": "40501 - Disclosure - Property, plant and equipment - Summary of elements of property, plant and equipment (Details)", "shortName": "Property, plant and equipment - Summary of elements of property, plant and equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails", "longName": "40502 - Disclosure - Property, plant and equipment - Additional Information (Details)", "shortName": "Property, plant and equipment - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:Depreciation", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:Depreciation", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails", "longName": "40601 - Disclosure - Leases - Maturity of lease payments (Details)", "shortName": "Leases - Maturity of lease payments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails", "longName": "40602 - Disclosure - Leases - Balance Sheet Classification and Other Information (Details)", "shortName": "Leases - Balance Sheet Classification and Other Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "hdsn:ScheduleOfOperatingLeaseInBalanceSheetClassificationTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "hdsn:ScheduleOfOperatingLeaseInBalanceSheetClassificationTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails", "longName": "40603 - Disclosure - Leases - Additional Information (Details)", "shortName": "Leases - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:LesseeOperatingLeaseTermOfContract", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:LesseeOperatingLeasesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:LesseeOperatingLeaseTermOfContract", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "us-gaap:LesseeOperatingLeasesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.hudsontech.com/role/DisclosureLeasesSupplementalCashFlowAndNonCashInformationRelatedToLeasesDetails", "longName": "40604 - Disclosure - Leases - Supplemental cash flow and non-cash information related to leases (Details)", "shortName": "Leases - Supplemental cash flow and non-cash information related to leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:OperatingLeasePayments", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "hdsn:ScheduleOfSupplementalCashFlowAndNonCashInformationRelatedToLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:OperatingLeasePayments", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "hdsn:ScheduleOfSupplementalCashFlowAndNonCashInformationRelatedToLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails", "longName": "40701 - Disclosure - Income taxes - Provision for income taxes (Details)", "shortName": "Income taxes - Provision for income taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails", "longName": "40702 - Disclosure - Income taxes - Reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate (Details)", "shortName": "Income taxes - Reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_Vz3e4-l2kk2_-C6vMTOzDw", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Unit_Standard_pure_Vz3e4-l2kk2_-C6vMTOzDw", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails", "longName": "40703 - Disclosure - Income taxes - Deferred income tax assets (liabilities) (Details)", "shortName": "Income taxes - Deferred income tax assets (liabilities) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails", "longName": "40801 - Disclosure - Goodwill and intangible assets - Company's other intangible assets (Details)", "shortName": "Goodwill and intangible assets - Company's other intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails", "longName": "40802 - Disclosure - Goodwill and intangible assets - Additional Information (Details)", "shortName": "Goodwill and intangible assets - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:GoodwillImpairmentLoss", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R50": { "role": "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails", "longName": "40901 - Disclosure - Accrued expenses and other current liabilities (Details)", "shortName": "Accrued expenses and other current liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:AccruedLiabilitiesCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:AccruedLiabilitiesCurrent", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails", "longName": "41001 - Disclosure - Short-term and Long-term debt (Details)", "shortName": "Short-term and Long-term debt (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "As_Of_12_31_2022_1wVMjW6KtEqYAoFiY04vJA", "name": "hdsn:LongTermDebtCurrentNetOfOtherDebt.", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2022_1wVMjW6KtEqYAoFiY04vJA", "name": "hdsn:LongTermDebtCurrentNetOfOtherDebt.", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails", "longName": "41002 - Disclosure - Short-term and Long-term debt - Additional Information (Details)", "shortName": "Short-term and Long-term debt - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:RepaymentsOfLongTermDebt", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_4_23_2020_us-gaap_DebtInstrumentAxis_hdsn_CaresActLoanMember_us-gaap_LongtermDebtTypeAxis_hdsn_PaycheckProtectionProgramMember_AuhFoEhKM0u7FtT6uAMINg", "name": "us-gaap:UnsecuredDebt", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R53": { "role": "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails", "longName": "41101 - Disclosure - Commitments and contingencies - Non-cancelable operating leases (Details)", "shortName": "Commitments and contingencies - Non-cancelable operating leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:OperatingLeaseExpense", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_hdsn_PropertyLocationAxis_hdsn_BatonRougeLouisianaMember_1qPeuUMXZ0eWGLQNgBir-A", "name": "us-gaap:OperatingLeaseExpense", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "hdsn:ScheduleOfOperatingLeaseInAnnualRentTableTextBlock", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R54": { "role": "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesDetails", "longName": "41102 - Disclosure - Commitments and contingencies (Details)", "shortName": "Commitments and contingencies (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:OperatingLeaseExpense", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": null }, "R55": { "role": "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "longName": "41201 - Disclosure - Share-based compensation (Details)", "shortName": "Share-based compensation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails", "longName": "41202 - Disclosure - Share-Based Compensation - Weighted Average Assumptions Used in Determining Fair Value of Share Based Awards at Grant Date by Using Black-Scholes Option Pricing Model (Details)", "shortName": "Share-Based Compensation - Weighted Average Assumptions Used in Determining Fair Value of Share Based Awards at Grant Date by Using Black-Scholes Option Pricing Model (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "unitRef": "Unit_Standard_pure_Vz3e4-l2kk2_-C6vMTOzDw", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "unitRef": "Unit_Standard_pure_Vz3e4-l2kk2_-C6vMTOzDw", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R57": { "role": "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails", "longName": "41203 - Disclosure - Share-based compensation - Summary of the activity for stock options issued under the Company's Plans (Details)", "shortName": "Share-based compensation - Summary of the activity for stock options issued under the Company's Plans (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "As_Of_12_31_2022_us-gaap_PlanNameAxis_hdsn_StockOptionPlanMember_S0pPepn5WkeXlkrU2tZzOQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Unit_Standard_shares_8tgMkxwOXkCOmY1j_s19vQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2020_us-gaap_PlanNameAxis_hdsn_StockOptionPlanMember_KxneHrN0vU2vyGtHetvkug", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Unit_Standard_shares_8tgMkxwOXkCOmY1j_s19vQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "unique": true } }, "R58": { "role": "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails", "longName": "41204 - Disclosure - Share-based compensation - Weighted average contractual life in years and the weighted average exercise price (Details)", "shortName": "Share-based compensation - Weighted average contractual life in years and the weighted average exercise price (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "unitRef": "Unit_Standard_shares_8tgMkxwOXkCOmY1j_s19vQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_lnu4Vin9bk66d73g_i2yEQ", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "unitRef": "Unit_Standard_shares_8tgMkxwOXkCOmY1j_s19vQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.hudsontech.com/role/DisclosureShareBasedCompensationIntrinsicValueDetails", "longName": "41205 - Disclosure - Share-Based Compensation - Intrinsic Value (Details)", "shortName": "Share-Based Compensation - Intrinsic Value (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedInPeriodTotalIntrinsicValue", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "hdsn:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedInPeriodTotalIntrinsicValue", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.hudsontech.com/role/DisclosureRetirementBenefitsPlanDetails", "longName": "41301 - Disclosure - Retirement benefits plan (Details)", "shortName": "Retirement benefits plan (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } }, "R61": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Uncategorized", "order": "61", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_12_31_2023_bbdfnkett0q2663-oT99xw", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_z4ij5Skx3kC4H-w9FBp55Q", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true }, "uniqueAnchor": null }, "R62": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Cover", "order": "62", "firstAnchor": { "contextRef": "Duration_10_1_2023_To_12_31_2023_3nWB2vzxG0mvk4wVjTVfbw", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_10_1_2023_To_12_31_2023_3nWB2vzxG0mvk4wVjTVfbw", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "hdsn-20231231x10k.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AboveMarketLeasesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AboveMarketLeasesMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Above Market Leases [Member]", "terseLabel": "Above market leases", "documentation": "Leases acquired as part of a real property acquisition at above market lease rate." } } }, "auth_ref": [] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Summary of Significant Accounting Policies" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilities" ], "lang": { "en-us": { "role": { "label": "Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block]", "terseLabel": "Accrued expenses and other current liabilities", "documentation": "The entire disclosure for accounts payable, accrued expenses, and other liabilities that are classified as current at the end of the reporting period." } } }, "auth_ref": [] }, "us-gaap_AccountsPayableTradeCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableTradeCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Payable, Trade, Current", "verboseLabel": "Trade accounts payable", "documentation": "Carrying value as of the balance sheet date of obligations incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r17", "r18" ] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable [Member]", "terseLabel": "Accounts Receivable", "documentation": "Due from customers or clients for goods or services that have been delivered or sold." } } }, "auth_ref": [ "r568" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetChangesInAccountsReceivableDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Net, Current, Total", "periodEndLabel": "Ending Balance", "periodStartLabel": "Beginning Balance", "verboseLabel": "Trade accounts receivable - net", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r241", "r242" ] }, "hdsn_AccruedExpensesAndOtherCurrentLiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "AccruedExpensesAndOtherCurrentLiabilitiesAbstract", "lang": { "en-us": { "role": { "documentation": "NA", "label": "Accrued expenses and other current liabilities" } } }, "auth_ref": [] }, "us-gaap_AccruedLiabilitiesAndOtherLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesAndOtherLiabilities", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 }, "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued Liabilities and Other Liabilities, Total", "terseLabel": "Accrued expenses and other current liabilities", "totalLabel": "Total", "documentation": "Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other." } } }, "auth_ref": [] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Accrued Liabilities, Current", "terseLabel": "Accrued expenses", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r22" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "negatedLabel": "Less: Accumulated depreciation", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r59", "r157", "r459" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "auth_ref": [ "r650" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional Paid In Capital", "terseLabel": "Additional paid-in capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r91", "r597", "r786" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Additional Paid-in Capital [Member]", "terseLabel": "Additional Paid-in Capital", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r373", "r374", "r375", "r489", "r709", "r710", "r711", "r767", "r788" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "auth_ref": [ "r656" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "auth_ref": [ "r656" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "auth_ref": [ "r656" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "auth_ref": [ "r656" ] }, "us-gaap_AdjustmentForAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentForAmortization", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Amortization", "verboseLabel": "Amortization", "documentation": "The aggregate amount of recurring noncash expense charged against earnings in the period to allocate the cost of assets over their estimated remaining economic lives." } } }, "auth_ref": [ "r7", "r56" ] }, "hdsn_AdjustmentsToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "AdjustmentsToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in additional paid in capital (APIC) resulting from a tax benefit (deficiency) associated with an share-based compensation plan other than an employee stock ownership plan (ESOP).", "label": "Adjustments To Additional Paid In Capital Income Tax Effect From Share Based Compensation Net", "negatedLabel": "Excess tax benefits from exercise of stock options" } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition", "terseLabel": "Share-based compensation", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r68", "r69", "r340" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "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 cash provided by (used in) operating activities:" } } }, "auth_ref": [] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r620", "r632", "r642", "r668" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "auth_ref": [ "r623", "r635", "r645", "r671" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "auth_ref": [ "r656" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "auth_ref": [ "r663" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "auth_ref": [ "r627", "r636", "r646", "r663", "r672", "r676", "r684" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "auth_ref": [ "r682" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Expense", "terseLabel": "Share based compensation expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r369", "r376" ] }, "hdsn_AllocationAllowanceReceived": { "xbrltype": "massItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "AllocationAllowanceReceived", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "The quantity of allocation allowance received by the\n company.", "label": "Allocation Allowance Received", "terseLabel": "Allocation allowance received" } } }, "auth_ref": [] }, "hdsn_AllocationAllowanceReceivedByCompanyAsPercentageOfHydrofluorocarbonsConsumption": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "AllocationAllowanceReceivedByCompanyAsPercentageOfHydrofluorocarbonsConsumption", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "The quantity of allocation allowance received by the company, as a percentage of Hydrofluorocarbons (HFC) Consumption.", "label": "Allocation Allowance Received By The Company, As A Percentage Of Hydrofluorocarbons Consumption", "terseLabel": "Allocation allowance received as a percentage of total HFC consumption" } } }, "auth_ref": [] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetReservesForDoubtfulAccountsDetails" ], "lang": { "en-us": { "role": { "label": "Allowance for Doubtful Accounts Receivable", "periodEndLabel": "Ending Balance", "periodStartLabel": "Beginning Balance", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r168", "r243", "r247", "r248", "r250", "r782" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Allowance for Doubtful Accounts Receivable, Current", "verboseLabel": "Trade accounts receivable are net of reserves for doubtful accounts", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r168", "r243", "r247" ] }, "hdsn_AllowanceForDoubtfulAccountsReceivableDeductionsAndOther": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "AllowanceForDoubtfulAccountsReceivableDeductionsAndOther", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetReservesForDoubtfulAccountsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of deductions and other in the allowance for doubtful accounts.", "label": "Allowance For Doubtful Accounts Receivable Deductions And Other", "verboseLabel": "Deductions and Other" } } }, "auth_ref": [] }, "hdsn_AmendedAndRestatedRevolvingCreditAndSecurityAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "AmendedAndRestatedRevolvingCreditAndSecurityAgreementMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the amended and restated revolving credit and security agreement.", "label": "Amended And Restated Revolving Credit And Security Agreement [Member]", "terseLabel": "Amended and restated revolving credit and security agreement" } } }, "auth_ref": [] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AmortizationOfFinancingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfFinancingCosts", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Amortization of Financing Costs", "verboseLabel": "Amortization of deferred finance cost", "documentation": "Amount of amortization expense attributable to debt issuance costs." } } }, "auth_ref": [ "r98", "r303", "r426", "r704" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Amortization of Intangible Assets", "verboseLabel": "Amortization of intangible assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r7", "r52", "r56" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Options excluded from the calculation of diluted shares", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r219" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Total", "totalLabel": "Total Assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r128", "r161", "r191", "r224", "r232", "r236", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r403", "r407", "r418", "r451", "r523", "r597", "r610", "r727", "r728", "r773" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "Assets" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current, Total", "totalLabel": "Total current assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r152", "r171", "r191", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r403", "r407", "r418", "r597", "r727", "r728", "r773" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets Current [Abstract]", "terseLabel": "Current assets:" } } }, "auth_ref": [] }, "us-gaap_AssetsHeldUnderCapitalLeasesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsHeldUnderCapitalLeasesMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Assets Held Under Capital Leases [Member]", "terseLabel": "Equipment under capital lease", "documentation": "Long lived property, plant or equipment assets held by a lessee through a capital lease arrangement." } } }, "auth_ref": [ "r135" ] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r614", "r615", "r628" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "auth_ref": [ "r614", "r615", "r628" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "auth_ref": [ "r614", "r615", "r628" ] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r679" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "auth_ref": [ "r680" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r675" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "auth_ref": [ "r675" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "auth_ref": [ "r675" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "auth_ref": [ "r675" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "auth_ref": [ "r675" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "auth_ref": [ "r675" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "terseLabel": "Award Type", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r678" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r677" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "auth_ref": [ "r676" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "auth_ref": [ "r676" ] }, "hdsn_BalanceSheetClassificationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "BalanceSheetClassificationAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Classification [Abstract]", "terseLabel": "Balance Sheet Classification" } } }, "auth_ref": [] }, "hdsn_BatonRougeLouisianaMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "BatonRougeLouisianaMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Baton Rouge Louisiana.", "label": "Baton Rouge Louisiana [Member]", "terseLabel": "Baton Rouge Louisiana" } } }, "auth_ref": [] }, "us-gaap_BuildingImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BuildingImprovementsMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Building Improvements [Member]", "verboseLabel": "Building improvements", "documentation": "Addition, improvement, or renovation to a facility held for productive use including, but not limited to, office, production, storage and distribution facilities." } } }, "auth_ref": [ "r114" ] }, "us-gaap_BuildingMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BuildingMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Building [Member]", "verboseLabel": "Buildings", "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities." } } }, "auth_ref": [ "r114" ] }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalExpendituresIncurredButNotYetPaid", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Capital Expenditures Incurred but Not yet Paid", "terseLabel": "Property and equipment included in accrued expenses and other current liabilities", "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred." } } }, "auth_ref": [ "r36", "r37", "r38" ] }, "hdsn_CaresActLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "CaresActLoanMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to CARES Act Loan.", "label": "CARES Act Loan [Member]", "terseLabel": "CARES Act Loan" } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, at Carrying Value", "verboseLabel": "Cash and cash equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r33", "r155", "r574" ] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "terseLabel": "Cash and Cash Equivalents", "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value." } } }, "auth_ref": [ "r34" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents at end of period", "periodStartLabel": "Cash and cash equivalents at beginning of period", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r33", "r105", "r187" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect", "totalLabel": "Increase in cash and cash equivalents", "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r4", "r105" ] }, "hdsn_ChampaignIllinois2ndLocationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ChampaignIllinois2ndLocationMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Champaign Illinois (2nd Location).", "label": "Champaign, Illinois (2nd location) [Member]", "terseLabel": "Champaign, Illinois (2nd location)" } } }, "auth_ref": [] }, "hdsn_ChampaignIllinoisMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ChampaignIllinoisMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Champaign Illinois.", "label": "Champaign Illinois [Member]", "verboseLabel": "Champaign, Illinois" } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "auth_ref": [ "r654" ] }, "hdsn_CharlotteNorthCarolinaMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "CharlotteNorthCarolinaMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Charlotte North Carolina.", "label": "Charlotte North Carolina [Member]", "verboseLabel": "Charlotte, North Carolina" } } }, "auth_ref": [] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfStockDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfStockDomain", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Class of Stock [Domain]", "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock." } } }, "auth_ref": [ "r149", "r165", "r166", "r167", "r191", "r210", "r214", "r216", "r218", "r222", "r223", "r244", "r272", "r274", "r275", "r276", "r279", "r280", "r308", "r309", "r310", "r311", "r312", "r418", "r482", "r483", "r484", "r485", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r511", "r532", "r552", "r563", "r564", "r565", "r566", "r567", "r691", "r705", "r713" ] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "auth_ref": [ "r655" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "auth_ref": [ "r655" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies.", "verboseLabel": "Commitments and contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r27", "r84", "r453", "r510" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Commitments and contingencies" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Text Block]", "verboseLabel": "Commitments and contingencies", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r117", "r264", "r265", "r569", "r722" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Stock [Member]", "terseLabel": "Common Stock", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r600", "r601", "r602", "r604", "r605", "r606", "r607", "r709", "r710", "r767", "r785", "r788" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Par Or Stated Value Per Share", "terseLabel": "Common stock, par value", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r90" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock Shares Authorized", "terseLabel": "Common stock, shares authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r90", "r511" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r90" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock Shares Outstanding", "verboseLabel": "Common stock, outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r12", "r90", "r511", "r529", "r788", "r789" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common Stock Value", "verboseLabel": "Common stock, $0.01 par value; shares authorized 100,000,000; issued and outstanding: 45,502,380 and 45,287,619 respectively", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r90", "r455", "r597" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "auth_ref": [ "r660" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "auth_ref": [ "r659" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "auth_ref": [ "r661" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "auth_ref": [ "r658" ] }, "us-gaap_CompensationAndRetirementDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CompensationAndRetirementDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Retirement benefits plan" } } }, "auth_ref": [] }, "us-gaap_ComputerEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComputerEquipmentMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Computer Equipment [Member]", "terseLabel": "Lab and computer equipment, software", "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems." } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r41", "r43", "r79", "r80", "r240", "r568" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r41", "r43", "r79", "r80", "r240", "r479", "r568" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Axis]", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r41", "r43", "r79", "r80", "r240", "r568", "r695" ] }, "us-gaap_ConcentrationRiskCreditRisk": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskCreditRisk", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]", "terseLabel": "Credit Risk", "documentation": "Disclosure of accounting policy for credit risk." } } }, "auth_ref": [ "r85", "r140" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk, Percentage", "terseLabel": "Concentration risk percentage", "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division." } } }, "auth_ref": [ "r41", "r43", "r79", "r80", "r240" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Domain]", "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration." } } }, "auth_ref": [ "r41", "r43", "r79", "r80", "r240", "r568" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Consolidation, Policy [Policy Text Block]", "verboseLabel": "Consolidation", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r76", "r576" ] }, "us-gaap_ConstructionInProgressMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConstructionInProgressMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Construction in Progress [Member]", "verboseLabel": "Construction-in-progress", "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service." } } }, "auth_ref": [] }, "hdsn_ContractTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ContractTerm", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the period of contract term.", "label": "Contract Term", "terseLabel": "Contract term" } } }, "auth_ref": [] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfRevenue", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Cost of Revenue", "terseLabel": "Cost of sales", "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period." } } }, "auth_ref": [ "r100", "r191", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r418", "r727" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfSalesMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Cost of Sales [Member]", "terseLabel": "Cost of sales", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Document Entity Information", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current Federal Tax Expense (Benefit)", "verboseLabel": "Federal", "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r697", "r708", "r765" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CurrentIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current Income Tax Expense (Benefit)", "totalLabel": "Total", "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations." } } }, "auth_ref": [ "r125", "r391", "r397", "r708" ] }, "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]", "verboseLabel": "Current:" } } }, "auth_ref": [] }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current State and Local Tax Expense (Benefit)", "verboseLabel": "State and local", "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r697", "r708", "r765" ] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer Concentration Risk [Member]", "terseLabel": "Customer Concentration Risk", "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer." } } }, "auth_ref": [ "r42", "r240" ] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Customer Relationships [Member]", "terseLabel": "Customer relationships", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r75" ] }, "hdsn_CylinderDepositLiabilityPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "CylinderDepositLiabilityPolicyPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for cylinder deposit liability.", "label": "Cylinder Deposit Liability, Policy [Policy Text Block]", "terseLabel": "Cylinder Deposit Liability" } } }, "auth_ref": [] }, "hdsn_CylinderDepositValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "CylinderDepositValue", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of cylinder deposit value.", "label": "Cylinder Deposit Value", "terseLabel": "Cylinder deposit liability" } } }, "auth_ref": [] }, "hdsn_CylindersMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "CylindersMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to cylinders.", "label": "Cylinders [Member]", "verboseLabel": "Cylinders" } } }, "auth_ref": [] }, "us-gaap_DebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails": { "parentTag": "us-gaap_DebtLongtermAndShorttermCombinedAmount", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Debt, Current, Total", "totalLabel": "Subtotal", "documentation": "Amount of debt and lease obligation, classified as current." } } }, "auth_ref": [ "r163" ] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Short-term and Long-term debt" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebt" ], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Text Block]", "terseLabel": "Short-term and Long-term debt", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r118", "r189", "r281", "r287", "r288", "r289", "r290", "r291", "r292", "r297", "r304", "r305", "r306" ] }, "hdsn_DebtInstrumentAdditionalPercentagePointsInterest": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "DebtInstrumentAdditionalPercentagePointsInterest", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the calculated interest rate dependent on average quarterly undrawn availability.", "label": "Debt Instrument Additional Percentage Points Interest", "terseLabel": "Additional interest percentage" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r16", "r87", "r88", "r129", "r130", "r193", "r282", "r283", "r284", "r285", "r286", "r288", "r293", "r294", "r295", "r296", "r298", "r299", "r300", "r301", "r302", "r303", "r427", "r583", "r584", "r585", "r586", "r587", "r706" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Debt instrument, basis spread on variable rate", "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentCarryingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentCarryingAmount", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Gross", "terseLabel": "Principal balance of debt", "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt." } } }, "auth_ref": [ "r16", "r130", "r307" ] }, "us-gaap_DebtInstrumentFaceAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentFaceAmount", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Face Amount", "terseLabel": "Debt instrument loan amount", "documentation": "Face (par) amount of debt instrument at time of issuance." } } }, "auth_ref": [ "r81", "r83", "r282", "r427", "r584", "r585" ] }, "us-gaap_DebtInstrumentFeeAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentFeeAmount", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Fee Amount", "terseLabel": "Other expense and fees", "documentation": "Amount of the fee that accompanies borrowing money under the debt instrument." } } }, "auth_ref": [ "r25" ] }, "hdsn_DebtInstrumentInterestDeferralTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "DebtInstrumentInterestDeferralTerm", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The information pertaining to period for which interest can be deferred for unforgiven loan under paycheck protection program.", "label": "Debt Instrument , Interest Deferral Term", "terseLabel": "Deferral term of unforgiven loan" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentInterestRateStatedPercentage", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Interest Rate, Stated Percentage", "terseLabel": "Debt instrument interest at fixed rate", "documentation": "Contractual interest rate for funds borrowed, under the debt agreement." } } }, "auth_ref": [ "r24", "r283" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r26", "r193", "r282", "r283", "r284", "r285", "r286", "r288", "r293", "r294", "r295", "r296", "r298", "r299", "r300", "r301", "r302", "r303", "r427", "r583", "r584", "r585", "r586", "r587", "r706" ] }, "hdsn_DebtInstrumentPaymentExcessCashFlowAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "DebtInstrumentPaymentExcessCashFlowAmount", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The amount of debt paid in the form of excess cash flow amount.", "label": "Debt Instrument, Payment, Excess Cash Flow Amount", "terseLabel": "Payment of debt, cash flow amount" } } }, "auth_ref": [] }, "us-gaap_DebtLongtermAndShorttermCombinedAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtLongtermAndShorttermCombinedAmount", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Debt, Long-term and Short-term, Combined Amount", "totalLabel": "Total short-term & long-term debt", "documentation": "Represents the aggregate of total long-term debt, including current maturities and short-term debt." } } }, "auth_ref": [] }, "us-gaap_DebtRelatedCommitmentFeesAndDebtIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtRelatedCommitmentFeesAndDebtIssuanceCosts", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Related Commitment Fees and Debt Issuance Costs", "terseLabel": "Lender fees and expenses on debt", "documentation": "Represents the charge against earnings during the period for commitment fees and debt issuance expenses." } } }, "auth_ref": [ "r102" ] }, "us-gaap_DeferredCompensationArrangementWithIndividualCommonStockReservedForFutureIssuance": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationArrangementWithIndividualCommonStockReservedForFutureIssuance", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Compensation Arrangement with Individual, Common Stock Reserved for Future Issuance", "terseLabel": "Common stock reserved for issuance", "documentation": "Number of common shares reserved for future issuance related to deferred compensation arrangements with individuals." } } }, "auth_ref": [] }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Federal Income Tax Expense (Benefit)", "verboseLabel": "Federal", "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r708", "r764", "r765" ] }, "us-gaap_DeferredFinanceCostsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFinanceCostsNet", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Debt Issuance Costs, Net", "terseLabel": "Deferred financing costs", "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs." } } }, "auth_ref": [ "r82", "r730" ] }, "us-gaap_DeferredFinanceCostsNoncurrentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFinanceCostsNoncurrentNet", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebtNoncurrent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Debt Issuance Costs, Noncurrent, Net", "negatedLabel": "- Less: deferred financing costs on term loan", "documentation": "Amount, after accumulated amortization, of debt issuance costs classified as noncurrent. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs." } } }, "auth_ref": [ "r82" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 }, "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Expense (Benefit)", "totalLabel": "Total", "verboseLabel": "Deferred tax expense", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r7", "r125", "r146", "r396", "r397", "r708" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]", "verboseLabel": "Deferred:" } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Liabilities, Net", "negatedLabel": "Net deferred income tax liabilities", "terseLabel": "Deferred tax liability", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r380", "r381", "r452" ] }, "us-gaap_DeferredOfferingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredOfferingCosts", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Offering Costs", "terseLabel": "Payment of term loan deferred financing costs", "documentation": "Specific incremental costs directly attributable to a proposed or actual offering of securities which are deferred at the end of the reporting period." } } }, "auth_ref": [ "r718" ] }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred State and Local Income Tax Expense (Benefit)", "verboseLabel": "State and local", "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r708", "r764", "r765" ] }, "us-gaap_DeferredTaxAssetsDeferredIncome": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsDeferredIncome", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Deferred Income", "verboseLabel": "- Deferred interest", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from deferred income." } } }, "auth_ref": [ "r73", "r763" ] }, "us-gaap_DeferredTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Net of Valuation Allowance", "totalLabel": "Net deferred income tax assets", "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r762" ] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwards", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Operating Loss Carryforwards", "terseLabel": "Current year utilization comprise of deferred tax", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards." } } }, "auth_ref": [ "r73", "r763" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals [Abstract]", "verboseLabel": "Deferred income tax assets (liabilities)" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities", "terseLabel": "- Accrued expenses", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities." } } }, "auth_ref": [ "r73", "r763" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Allowance for Doubtful Accounts", "verboseLabel": "- Reserves for doubtful accounts", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r73", "r763" ] }, "hdsn_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsDepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsDepreciationAndAmortization", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount before allocation of valuation allowances of depreciation and amortization.", "label": "Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Depreciation And Amortization", "verboseLabel": "- Depreciation & amortization" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Reserves", "verboseLabel": "- Inventory reserve", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from reserves, classified as other." } } }, "auth_ref": [ "r73", "r763" ] }, "hdsn_DeferredTaxAssetsTaxDeferredExpenseReservesAndNonQualifiedStockOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndNonQualifiedStockOptions", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount before allocation of valuation allowances of non qualified stock options.", "label": "Deferred Tax Assets Tax Deferred Expense Reserves And Non Qualified Stock Options", "verboseLabel": "- Non qualified stock options" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsValuationAllowance", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Valuation Allowance", "terseLabel": "Deferred tax assets, valuation allowance", "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized." } } }, "auth_ref": [ "r387" ] }, "us-gaap_DeferredTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilities", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesDeferredIncomeTaxAssetsLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Net", "negatedLabel": "Total deferred tax assets", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting." } } }, "auth_ref": [ "r70", "r762" ] }, "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureRetirementBenefitsPlanDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan, Employer Discretionary Contribution Amount", "terseLabel": "Matching contributions", "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DepositLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepositLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deposit Liability, Current", "terseLabel": "Cylinder deposits", "documentation": "The current portion, due within one year or one operating cycle, if longer, of deposits held other than customer deposits." } } }, "auth_ref": [ "r22" ] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Depreciation", "terseLabel": "Depreciation expense", "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation." } } }, "auth_ref": [ "r7", "r58" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation, Depletion and Amortization", "verboseLabel": "Depreciation", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r7", "r228" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensation" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Text Block]", "terseLabel": "Share-based compensation", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r339", "r342", "r370", "r371", "r372", "r593" ] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Annual Report", "documentation": "Boolean flag that is true only for a form used as an annual report." } } }, "auth_ref": [ "r614", "r615", "r628" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Error Correction [Flag]", "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction." } } }, "auth_ref": [ "r614", "r615", "r628", "r664" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r649" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Domestic Tax Authority [Member]", "terseLabel": "Federal", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic", "verboseLabel": "Net income per common share - Basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r180", "r199", "r200", "r201", "r202", "r203", "r208", "r210", "r216", "r217", "r218", "r220", "r416", "r417", "r448", "r464", "r578" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted", "verboseLabel": "Net income per common share - Diluted", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r180", "r199", "r200", "r201", "r202", "r203", "r210", "r216", "r217", "r218", "r220", "r416", "r417", "r448", "r464", "r578" ] }, "us-gaap_EarningsPerSharePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerSharePolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Policy [Policy Text Block]", "terseLabel": "Income per Common and Equivalent Shares", "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements." } } }, "auth_ref": [ "r39", "r40" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate", "totalLabel": "Total", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r383" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperationsTaxRateReconciliationAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Percent [Abstract]", "verboseLabel": "Income tax rates" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "verboseLabel": "- Statutory U.S. federal rate", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r192", "r383", "r398" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent", "negatedLabel": "- Valuation allowance", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets." } } }, "auth_ref": [ "r761", "r766" ] }, "hdsn_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseInternalRevenueCodeActLimitationPercent": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseInternalRevenueCodeActLimitationPercent", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for internal revenue code act limitation.", "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Internal Revenue Code Act Limitation, Percent", "negatedLabel": "- 162m limitation" } } }, "auth_ref": [] }, "hdsn_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseOtherTrueUpPercent": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseOtherTrueUpPercent", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other true up.", "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Other true Up, Percent", "negatedLabel": "- Other true-up" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-based Compensation Cost, Percent", "verboseLabel": "- Excess tax benefits related to stock compensation", "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for share-based payment arrangement." } } }, "auth_ref": [ "r761", "r766" ] }, "hdsn_EffectiveIncomeTaxRateReconciliationPaycheckProtectionProgramPppBenefitPercent": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "EffectiveIncomeTaxRateReconciliationPaycheckProtectionProgramPppBenefitPercent", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to benefit from Paycheck Protection program.", "label": "Effective Income Tax Rate Reconciliation, Paycheck Protection Program (PPP) Benefit, Percent", "negatedLabel": "- PPP Benefit" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes", "calculation": { "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent", "verboseLabel": "- State income taxes, net of federal benefit", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)." } } }, "auth_ref": [ "r761", "r766" ] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Employee-related Liabilities, Current", "verboseLabel": "Accrued payroll", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r22" ] }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]", "terseLabel": "Share-based compensation", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount", "terseLabel": "Unrecognized share based compensation expense related to non-vested options", "documentation": "Amount of cost to be recognized for option under share-based payment arrangement." } } }, "auth_ref": [ "r760" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "verboseLabel": "Stock Option Plan", "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine2": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine2", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line Two", "documentation": "Address Line 2 such as Street or Suite number" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r612" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r612" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r612" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r689" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Public Float", "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter." } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r612" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r612" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r612" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r612" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Voluntary Filers", "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act." } } }, "auth_ref": [] }, "dei_EntityWellKnownSeasonedIssuer": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityWellKnownSeasonedIssuer", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Well-known Seasoned Issuer", "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A." } } }, "auth_ref": [ "r690" ] }, "us-gaap_EquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquipmentMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Equipment [Member]", "verboseLabel": "Equipment", "documentation": "Tangible personal property used to produce goods and services." } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r12", "r150", "r175", "r176", "r177", "r194", "r195", "r196", "r198", "r204", "r206", "r221", "r245", "r246", "r313", "r373", "r374", "r375", "r392", "r393", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r419", "r420", "r421", "r422", "r423", "r424", "r440", "r474", "r475", "r476", "r489", "r552" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "auth_ref": [ "r657" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "auth_ref": [ "r620", "r632", "r642", "r668" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "auth_ref": [ "r617", "r629", "r639", "r665" ] }, "hdsn_EscondidoCaliforniaMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "EscondidoCaliforniaMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Escondido California.", "label": "Escondido California [Member]", "verboseLabel": "Escondido,California" } } }, "auth_ref": [] }, "hdsn_ExcessTaxBenefitsFromShareBasedCompensationFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ExcessTaxBenefitsFromShareBasedCompensationFinancingActivities", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from realized tax benefit related to deductible compensation cost reported on the entity's tax return for equity instruments in excess of the compensation cost for those instruments recognized for financial reporting purposes.", "label": "Excess Tax Benefits From Share Based Compensation Financing Activities", "terseLabel": "Excess tax benefits from exercise of stock options" } } }, "auth_ref": [] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r663" ] }, "hdsn_FCCRMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "FCCRMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to fixed charge coverage ratio.", "label": "FCCR [Member]", "terseLabel": "FCCR" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "Fair Value" } } }, "auth_ref": [] }, "us-gaap_FairValueMeasurementInputsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementInputsDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureFairValue" ], "lang": { "en-us": { "role": { "label": "Fair Value Measurement and Measurement Inputs, Recurring and Nonrecurring [Text Block]", "verboseLabel": "Fair Value", "documentation": "The entire disclosure of the fair value measurement of assets and liabilities, which includes financial instruments measured at fair value that are classified in shareholders' equity, which may be measured on a recurring or nonrecurring basis." } } }, "auth_ref": [ "r127" ] }, "us-gaap_FairValueOfFinancialInstrumentsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueOfFinancialInstrumentsPolicy", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Fair Value Of Financial Instruments, Policy [Policy Text Block]", "terseLabel": "Fair Value of Financial Instruments", "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments." } } }, "auth_ref": [ "r9", "r15" ] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "terseLabel": "Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r159", "r260" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five", "terseLabel": "Thereafter", "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months", "terseLabel": "2024", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r112" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five", "terseLabel": "2028", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r112" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four", "terseLabel": "2027", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r112" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three", "terseLabel": "2026", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r112" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two", "terseLabel": "2025", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r112" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r258", "r259", "r260", "r261", "r445", "r446" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Gross Carrying Amount", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r111", "r446" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Goodwill and intangible assets", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r445" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r53", "r55" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net, Total", "totalLabel": "Net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r111", "r445" ] }, "us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Remaining Amortization Period", "terseLabel": "Amortization Period (in years)", "documentation": "Remaining amortization period of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r445" ] }, "hdsn_FirstInLastOutTrancheMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "FirstInLastOutTrancheMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to First In Last out Tranche Loans.", "label": "FILO Tranche [Member]", "terseLabel": "FILO Tranche" } } }, "auth_ref": [] }, "hdsn_FixedChargesCoverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "FixedChargesCoverageRatio", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Fixed charge coverage ratio reported during the year.", "label": "Fixed Charges Coverage Ratio", "terseLabel": "Fixed charges coverage ratio" } } }, "auth_ref": [] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r624", "r636", "r646", "r672" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r624", "r636", "r646", "r672" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r624", "r636", "r646", "r672" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "auth_ref": [ "r624", "r636", "r646", "r672" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r624", "r636", "r646", "r672" ] }, "us-gaap_FurnitureAndFixturesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FurnitureAndFixturesMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Furniture And Fixtures [Member]", "verboseLabel": "Furniture & fixtures", "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases." } } }, "auth_ref": [] }, "us-gaap_GainsLossesOnExtinguishmentOfDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainsLossesOnExtinguishmentOfDebt", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Gain (Loss) on Extinguishment of Debt", "negatedLabel": "Loss on extinguishment of debt", "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity." } } }, "auth_ref": [ "r7", "r61", "r62" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Goodwill", "terseLabel": "Goodwill", "verboseLabel": "Goodwill", "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r158", "r254", "r447", "r582", "r597", "r719", "r720" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Goodwill and intangible assets" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssets" ], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "verboseLabel": "Goodwill and intangible assets", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r110" ] }, "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]", "verboseLabel": "Goodwill", "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." } } }, "auth_ref": [ "r10", "r50" ] }, "us-gaap_GoodwillImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillImpairmentLoss", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Impairment Loss", "terseLabel": "Goodwill impairment loss", "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r7", "r255", "r256", "r257", "r582" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Gross Profit", "totalLabel": "Gross profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r99", "r191", "r224", "r231", "r235", "r237", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r418", "r580", "r727" ] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "ICFR Auditor Attestation Flag" } } }, "auth_ref": [ "r614", "r615", "r628" ] }, "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOfLongLivedAssetsHeldForUse", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Impairment, Long-Lived Asset, Held-for-Use", "terseLabel": "Impairment of long lived assets", "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale)." } } }, "auth_ref": [ "r7", "r57", "r115" ] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Impairment Or Disposal Of Long-Lived Assets, Policy [Policy Text Block]", "terseLabel": "Impairment of Long-lived Assets", "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets." } } }, "auth_ref": [ "r0", "r116" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income taxes", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r1", "r96", "r132", "r224", "r231", "r235", "r237", "r449", "r461", "r580" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "Consolidated Income Statements" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r262", "r263", "r536" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Domain]", "documentation": "Location in the income statement." } } }, "auth_ref": [ "r263", "r536" ] }, "us-gaap_IncomeTaxAuthorityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Axis]", "documentation": "Information by tax jurisdiction." } } }, "auth_ref": [ "r11" ] }, "us-gaap_IncomeTaxAuthorityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Domain]", "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income taxes" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "verboseLabel": "Income taxes", "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r192", "r377", "r384", "r385", "r389", "r394", "r399", "r400", "r401", "r487" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 }, "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails", "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense (Benefit)", "totalLabel": "Expense for income taxes", "verboseLabel": "Income tax expense", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r136", "r147", "r205", "r206", "r229", "r382", "r395", "r466" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Income Tax, Policy [Policy Text Block]", "terseLabel": "Income Taxes", "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements." } } }, "auth_ref": [ "r174", "r378", "r379", "r385", "r386", "r388", "r390", "r481" ] }, "us-gaap_IncomeTaxReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReceivable", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Income Taxes Receivable", "terseLabel": "Income tax receivable", "documentation": "Carrying amount as of the balance sheet date of income taxes previously overpaid to tax authorities (such as U.S. Federal, state and local tax authorities) representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes. Also called income tax refund receivable." } } }, "auth_ref": [ "r700" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Income Taxes Paid, Net", "verboseLabel": "Cash paid for income taxes", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes." } } }, "auth_ref": [ "r35" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 17.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Accounts Payable and Accrued Liabilities", "verboseLabel": "Accounts payable and accrued expenses", "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 13.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Accounts Receivable", "negatedLabel": "Trade accounts receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r6" ] }, "hdsn_IncreaseDecreaseInAccountsReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "IncreaseDecreaseInAccountsReceivableNet", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetChangesInAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.", "label": "Increase (Decrease) in Accounts Receivable, Net", "negatedLabel": "Increase (Decrease), Net" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Income Taxes Payable", "terseLabel": "Income taxes receivable/payable", "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 14.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Inventories", "negatedLabel": "Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r6" ] }, "hdsn_IncreaseDecreaseInLeaseObligations": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "IncreaseDecreaseInLeaseObligations", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 16.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the lease obligations.", "label": "Increase (Decrease) in Lease Obligations", "verboseLabel": "Lease obligations" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Operating Capital [Abstract]", "verboseLabel": "Changes in assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 15.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase Decrease In Prepaid Deferred Expense and Other Assets", "negatedLabel": "Prepaid and other assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfSharesUsedToDetermineNetIncomePerShareDetails" ], "lang": { "en-us": { "role": { "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements", "terseLabel": "Shares underlying options", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r211", "r212", "r213", "r218", "r341" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "auth_ref": [ "r627", "r636", "r646", "r663", "r672", "r676", "r684" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r682" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r616", "r688" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "auth_ref": [ "r616", "r688" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "auth_ref": [ "r616", "r688" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Excluding Goodwill), Total", "terseLabel": "Intangible assets, less accumulated amortization", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r51", "r54" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_OtherNonoperatingIncomeExpense", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Interest Expense", "terseLabel": "Interest expense", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r82", "r134", "r178", "r227", "r425", "r537", "r608", "r787" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Interest Paid, Net", "verboseLabel": "Cash paid during period for interest", "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount." } } }, "auth_ref": [ "r182", "r185", "r186" ] }, "us-gaap_InventoryAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryAdjustments", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureInventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureInventoriesDetails" ], "lang": { "en-us": { "role": { "label": "Inventory Adjustments", "negatedLabel": "Less: net realizable value adjustments", "documentation": "Amount of inventory reserves for last-in first-out (LIFO) and other inventory valuation methods." } } }, "auth_ref": [ "r49", "r701" ] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Inventories" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureInventories" ], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Text Block]", "verboseLabel": "Inventories", "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory." } } }, "auth_ref": [ "r251" ] }, "us-gaap_InventoryGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryGross", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosureInventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureInventoriesDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Gross", "verboseLabel": "Refrigerants and cylinders", "documentation": "Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r701" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 }, "http://www.hudsontech.com/role/DisclosureInventoriesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureInventoriesDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory, Net", "terseLabel": "Inventories", "totalLabel": "Total", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r170", "r575", "r597" ] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Inventory, Policy [Policy Text Block]", "verboseLabel": "Inventories", "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost." } } }, "auth_ref": [ "r137", "r154", "r169", "r251", "r252", "r253", "r443", "r577" ] }, "us-gaap_LandImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LandImprovementsMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Land Improvements [Member]", "verboseLabel": "Land improvements", "documentation": "Additions or improvements to real estate held." } } }, "auth_ref": [] }, "us-gaap_LandMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LandMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Land [Member]", "verboseLabel": "Land", "documentation": "Part of earth's surface not covered by water." } } }, "auth_ref": [ "r733" ] }, "us-gaap_LeaseExpirationDate1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseExpirationDate1", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lease Expiration Date", "verboseLabel": "Lease Expiration Date", "documentation": "Date which lease or group of leases is set to expire, in YYYY-MM-DD format." } } }, "auth_ref": [] }, "hdsn_LeaseExpirationPeriodDescription": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LeaseExpirationPeriodDescription", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "The date of lease expiration period description.", "label": "Lease Expiration Period Description", "terseLabel": "Lease expiration period description" } } }, "auth_ref": [] }, "hdsn_LeaseObligationsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LeaseObligationsCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Lease Obligations Current", "terseLabel": "Lease obligations" } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Leasehold Improvements [Member]", "verboseLabel": "Leasehold improvements", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r114" ] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeasesAbstract", "lang": { "en-us": { "role": { "label": "Leases" } } }, "auth_ref": [] }, "us-gaap_LesseeLeaseDescriptionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Lease, Description [Line Items]", "terseLabel": "Leases", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r434" ] }, "us-gaap_LesseeLeaseDescriptionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Lease, Description [Table]", "documentation": "Disclosure of information about lessee's leases." } } }, "auth_ref": [ "r434" ] }, "us-gaap_LesseeLeasesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeasesPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Lessee, Leases [Policy Text Block]", "terseLabel": "Leases", "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee." } } }, "auth_ref": [ "r433" ] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Schedule of maturity of lease payments", "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position." } } }, "auth_ref": [ "r772" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetailsCalc2": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid", "totalLabel": "Total undiscounted operating lease payments", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five", "terseLabel": "Thereafter", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "terseLabel": "2024", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five", "terseLabel": "2028", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "terseLabel": "2027", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "terseLabel": "2026", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "terseLabel": "2025", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less imputed interest", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r439" ] }, "us-gaap_LesseeOperatingLeaseTermOfContract": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseTermOfContract", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Term of Contract", "terseLabel": "Maximum lease agreement terms", "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r771" ] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeases" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Leases [Text Block]", "verboseLabel": "Leases", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r428" ] }, "us-gaap_LetterOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LetterOfCreditMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Letter Of Credit [Member]", "terseLabel": "Letter of credit", "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)." } } }, "auth_ref": [] }, "us-gaap_LettersOfCreditOutstandingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LettersOfCreditOutstandingAmount", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Letters of Credit Outstanding, Amount", "terseLabel": "Amount outstanding, letter of credit", "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Total", "totalLabel": "Total Liabilities", "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future." } } }, "auth_ref": [ "r21", "r191", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r404", "r407", "r408", "r418", "r509", "r579", "r610", "r727", "r773", "r774" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Stockholders Equity", "totalLabel": "Total Liabilities and Stockholders' Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r95", "r131", "r457", "r597", "r707", "r717", "r769" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Stockholders Equity [Abstract]", "terseLabel": "Liabilities and Stockholders' Equity" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current, Total", "totalLabel": "Total current liabilities", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r23", "r153", "r191", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r404", "r407", "r408", "r418", "r597", "r727", "r773", "r774" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities Current [Abstract]", "terseLabel": "Current liabilities:" } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Lender Name [Axis]", "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit." } } }, "auth_ref": [ "r19", "r706" ] }, "hdsn_LineOfCreditFacilityCovenantComplianceMinimumLiquidity": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LineOfCreditFacilityCovenantComplianceMinimumLiquidity", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the minimum amount from availability.", "label": "Line of Credit Facility, Covenant Compliance, Minimum Liquidity", "terseLabel": "Minimum liquidity requirement" } } }, "auth_ref": [] }, "hdsn_LineOfCreditFacilityCovenantComplianceMinimumLiquidityToBeDerivedFromAvailability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LineOfCreditFacilityCovenantComplianceMinimumLiquidityToBeDerivedFromAvailability", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the minimum amount to be derived from availability.", "label": "Line of Credit Facility, Covenant Compliance, Minimum Liquidity to be Derived From Availability", "terseLabel": "Minimum amount to be derived from availability" } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityExpirationPeriod": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityExpirationPeriod", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Expiration Period", "terseLabel": "Line of credit facility term", "documentation": "Period remaining on line of credit facility before it terminates, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityLenderDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLenderDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Lender [Domain]", "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility." } } }, "auth_ref": [ "r19", "r706" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "Maximum borrowing capacity", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r19" ] }, "us-gaap_LineOfCreditFacilityPeriodicPaymentInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityPeriodicPaymentInterest", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Periodic Payment, Interest", "terseLabel": "Credit facility, interest expense", "documentation": "Amount of the required periodic payment applied to interest." } } }, "auth_ref": [ "r19" ] }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNet" ], "lang": { "en-us": { "role": { "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]", "verboseLabel": "Trade accounts receivable - net", "documentation": "The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses." } } }, "auth_ref": [ "r716" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "hdsn_LongBeachCaliforniaMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LongBeachCaliforniaMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for long beach California.", "label": "Long Beach California [Member]", "terseLabel": "Long Beach California" } } }, "auth_ref": [] }, "us-gaap_LongTermDebtAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Unclassified [Abstract]", "verboseLabel": "Long-term debt:" } } }, "auth_ref": [] }, "us-gaap_LongTermDebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Current Maturities", "terseLabel": "Current maturities of long-term debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation." } } }, "auth_ref": [ "r162" ] }, "hdsn_LongTermDebtCurrentNetOfOtherDebt.": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LongTermDebtCurrentNetOfOtherDebt.", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails": { "parentTag": "us-gaap_DebtCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "Its represent the amount of long-term debt current net of other debt.", "label": "Long Term Debt Current Net of Other Debt.", "terseLabel": "- Term loan facility - current" } } }, "auth_ref": [] }, "hdsn_LongTermDebtFirstInLastOutFilo": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LongTermDebtFirstInLastOutFilo", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebtNoncurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents long term debt of first in last out.", "label": "Long Term Debt First In Last Out (FILO)", "verboseLabel": "- FILO term loan" } } }, "auth_ref": [] }, "hdsn_LongTermDebtNonCurrentNetOfOtherDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LongTermDebtNonCurrentNetOfOtherDebt", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebtNoncurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "Its represent the amount of long-term debt non current net of other debt.", "label": "Long Term Debt Non Current Net of Other Debt", "verboseLabel": "- Term loan facility- net of current portion of long-term debt" } } }, "auth_ref": [] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 }, "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails": { "parentTag": "us-gaap_DebtLongtermAndShorttermCombinedAmount", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Excluding Current Maturities, Total", "totalLabel": "Subtotal", "verboseLabel": "Long-term debt, less current maturities, net of deferred financing costs", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r164" ] }, "us-gaap_LongTermDebtTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtTerm", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Term", "terseLabel": "Term of unforgiven loan", "documentation": "Period between issuance and maturity of long-term debt, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r768" ] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r26" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Domain]", "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r26", "r60" ] }, "us-gaap_LossContingenciesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingenciesLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Loss Contingencies [Line Items]", "terseLabel": "Commitments and contingencies", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r266", "r267", "r268", "r271", "r723", "r724" ] }, "us-gaap_LossContingenciesTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingenciesTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Loss Contingencies [Table]", "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations." } } }, "auth_ref": [ "r266", "r267", "r268", "r271", "r723", "r724" ] }, "hdsn_LowerOfCostOrNetRealizableValueAdjustment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "LowerOfCostOrNetRealizableValueAdjustment", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of expense related to lower of cost or net realizable value adjustment incurred during the year.", "label": "Lower Of Cost Or Net Realizable Value Adjustment", "terseLabel": "Lower of cost or net realizable value inventory adjustment" } } }, "auth_ref": [] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r240", "r590", "r732", "r783", "r784" ] }, "us-gaap_ManagementServiceMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ManagementServiceMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Management Service [Member]", "terseLabel": "Management Service", "documentation": "Contractually stipulated right to receive compensation for operating and managing business." } } }, "auth_ref": [ "r733" ] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails", "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum" } } }, "auth_ref": [ "r267", "r268", "r269", "r270", "r337", "r442", "r473", "r501", "r502", "r555", "r556", "r557", "r558", "r559", "r570", "r571", "r581", "r588", "r592", "r599", "r729", "r775", "r776", "r777", "r778", "r779", "r780" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r655" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r655" ] }, "hdsn_MinimumAggregateUndrawnLoanAvailability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "MinimumAggregateUndrawnLoanAvailability", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The minimum aggregate undrawn term loan availability used to determine percentage of excess cash flow to be used to paydown the loan.", "label": "Minimum Aggregate Undrawn Loan Availability", "terseLabel": "Minimum aggregate undrawn loan availability" } } }, "auth_ref": [] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails", "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum", "verboseLabel": "Minimum" } } }, "auth_ref": [ "r267", "r268", "r269", "r270", "r337", "r442", "r473", "r501", "r502", "r555", "r556", "r557", "r558", "r559", "r570", "r571", "r581", "r588", "r592", "r599", "r729", "r775", "r776", "r777", "r778", "r779", "r780" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "auth_ref": [ "r675" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "auth_ref": [ "r683" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r240", "r590", "r732", "r783", "r784" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "auth_ref": [ "r656" ] }, "hdsn_NatureOfOperationsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "NatureOfOperationsPolicyPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for nature of operations.", "label": "Nature Of Operations, Policy [Policy Text Block]", "terseLabel": "Business" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Cash (used in) provided by financing activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r184" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract]", "verboseLabel": "Cash flows from financing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Cash used in investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r184" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "verboseLabel": "Cash flows from investing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Cash provided by (used in) operating activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r105", "r106", "r107" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Cash flows from operating activities:" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 }, "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfSharesUsedToDetermineNetIncomePerShareDetails", "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "verboseLabel": "Net income", "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r97", "r107", "r133", "r151", "r172", "r173", "r177", "r191", "r197", "r199", "r200", "r201", "r202", "r205", "r206", "r215", "r224", "r231", "r235", "r237", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r417", "r418", "r463", "r531", "r550", "r551", "r580", "r608", "r727" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "verboseLabel": "Recent Accounting Pronouncements", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "hdsn_NoCustomerMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "NoCustomerMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Pertains to no customers.", "label": "No Customer [Member]", "terseLabel": "No Customer" } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "auth_ref": [ "r655" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r624", "r636", "r646", "r663", "r672" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r653" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r652" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "auth_ref": [ "r663" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r683" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r683" ] }, "us-gaap_NoncompeteAgreementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncompeteAgreementsMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Noncompete Agreements [Member]", "terseLabel": "Covenant not to compete", "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party." } } }, "auth_ref": [ "r74" ] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Number of Reportable Segments", "terseLabel": "Number of reportable segments", "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements." } } }, "auth_ref": [ "r715" ] }, "hdsn_OneCustomerMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "OneCustomerMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Pertains to one customer.", "label": "One Customer [Member]", "terseLabel": "One Customer" } } }, "auth_ref": [] }, "hdsn_OntarioCaliforniaMemberMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "OntarioCaliforniaMemberMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Ontario California.", "label": "Ontario California [Member]", "terseLabel": "Ontario, California" } } }, "auth_ref": [] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpenses", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Operating Expenses", "totalLabel": "Total operating expenses", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_OperatingExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpensesAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Operating Expenses [Abstract]", "terseLabel": "Operating expenses:" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Operating Income (Loss)", "totalLabel": "Operating income", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r224", "r231", "r235", "r237", "r580" ] }, "us-gaap_OperatingLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseExpense", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesDetails", "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails", "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Expense", "terseLabel": "Operating lease expense", "verboseLabel": "Annual Rent", "documentation": "Amount of operating lease expense. Excludes sublease income." } } }, "auth_ref": [ "r770" ] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 }, "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails", "http://www.hudsontech.com/role/DisclosureLeasesMaturityOfLeasePaymentsDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability", "terseLabel": "Present value of operating lease liabilities", "totalLabel": "Total operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r430" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current", "verboseLabel": "Current lease liabilities (recorded in Accrued expenses and other current liabilities)", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r430" ] }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails", "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "terseLabel": "Current lease liabilities (recorded in Accrued expenses and other current liabilities) [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes current operating lease liability." } } }, "auth_ref": [ "r431" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 1.0 }, "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Long-term lease liabilities", "verboseLabel": "Long-term lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r430" ] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesSupplementalCashFlowAndNonCashInformationRelatedToLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Payments", "verboseLabel": "Operating cash flow from operating leases", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r432", "r435" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset", "verboseLabel": "Right of use asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r429" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Discount Rate, Percent", "verboseLabel": "Weighted-average discount rate for operating leases", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r438", "r596" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Remaining Lease Term", "verboseLabel": "Weighted-average remaining term for operating leases", "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r437", "r596" ] }, "us-gaap_OperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwards", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Loss Carryforwards", "terseLabel": "Operating loss carryforwards", "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws." } } }, "auth_ref": [ "r72" ] }, "us-gaap_OperatingLossCarryforwardsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwardsLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Operating Loss Carryforwards [Line Items]", "terseLabel": "Income taxes", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_OperatingLossCarryforwardsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwardsTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Operating Loss Carryforwards [Table]", "documentation": "Schedule reflecting pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization." } } }, "auth_ref": [ "r71" ] }, "us-gaap_OptionIndexedToIssuersEquityTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OptionIndexedToIssuersEquityTypeAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Option Indexed to Issuer's Equity, Type [Axis]", "documentation": "Information by type of freestanding contracts issued by an entity that are indexed to, and potentially settled in, an entity's own stock." } } }, "auth_ref": [ "r63", "r77", "r78", "r126" ] }, "us-gaap_OptionIndexedToIssuersEquityTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OptionIndexedToIssuersEquityTypeDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Option Indexed to Issuer's Equity, Type [Domain]", "documentation": "Description of the type of freestanding contract issued by a Company that is indexed to, and potentially settled in, a Company's own stock. Specifically, the pertinent rights and privileges of the securities outstanding." } } }, "auth_ref": [] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets Noncurrent", "terseLabel": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r160" ] }, "us-gaap_OtherIncome": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherIncome", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_OtherNonoperatingIncomeExpense", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Other Income", "verboseLabel": "Other income", "documentation": "Amount of revenue and income classified as other." } } }, "auth_ref": [ "r465", "r533", "r560", "r561", "r562" ] }, "hdsn_OtherInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "OtherInformationAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesBalanceSheetClassificationAndOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Other Information [Abstract]", "verboseLabel": "Other Information" } } }, "auth_ref": [] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Other Liabilities, Current", "terseLabel": "Other current liabilities", "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r22", "r597" ] }, "us-gaap_OtherNoncashIncomeExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNoncashIncomeExpenseAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Other Noncash Income (Expense) [Abstract]", "terseLabel": "Other (expense) income:" } } }, "auth_ref": [] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Other Nonoperating Income (Expense)", "totalLabel": "Total other expense", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r103" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r655" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r622", "r634", "r644", "r670" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r625", "r637", "r647", "r673" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r625", "r637", "r647", "r673" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r651" ] }, "hdsn_PaycheckProtectionProgramMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PaycheckProtectionProgramMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to paycheck protection program.", "label": "Paycheck Protection Program [Member]", "terseLabel": "Paycheck Protection Program" } } }, "auth_ref": [] }, "hdsn_PaymentProtectionProgramForgiveness": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PaymentProtectionProgramForgiveness", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of forgiveness under payment protection program.", "label": "Payment Protection Program Forgiveness", "terseLabel": "Forgiveness of Payroll Protection Program loan" } } }, "auth_ref": [] }, "us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfMergerRelatedCostsFinancingActivities", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments of Merger Related Costs, Financing Activities", "negatedLabel": "Payment of deferred financing cost", "documentation": "The cash outflow for financing costs associated with business combinations." } } }, "auth_ref": [ "r31" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments To Acquire Property Plant and Equipment", "negatedLabel": "Additions to property, plant, and equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r104" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "auth_ref": [ "r654" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r654" ] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureRetirementBenefitsPlan" ], "lang": { "en-us": { "role": { "label": "Retirement Benefits [Text Block]", "terseLabel": "Retirement benefits plan", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r591" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r653" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r663" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r656" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r652" ] }, "hdsn_PercentageOfCumulativeReductionFromBaselineLevelsSubsequentAllowance": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PercentageOfCumulativeReductionFromBaselineLevelsSubsequentAllowance", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "The percentage of cumulative reduction from baseline levels mentioned as subsequent allowance.", "label": "Percentage Of Cumulative Reduction From Baseline Levels, Subsequent Allowance", "terseLabel": "Cumulative reduction in baseline, subsequent allowance" } } }, "auth_ref": [] }, "hdsn_PercentageOfStepdownFromBaselineLevelsFinalRule": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PercentageOfStepdownFromBaselineLevelsFinalRule", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "The percentage of stepdown from baseline levels mentioned as final rule.", "label": "Percentage Of Stepdown From Baseline Levels, Final Rule", "terseLabel": "Stepdown from baseline levels, final rule" } } }, "auth_ref": [] }, "hdsn_PeriodForFixedChargeCoverageRatio": { "xbrltype": "durationItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PeriodForFixedChargeCoverageRatio", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the period for FCCR covenant.", "label": "Period For Fixed Charge Coverage Ratio", "terseLabel": "Period for FCCR covenant" } } }, "auth_ref": [] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r734", "r735", "r736", "r737", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r746", "r747", "r748", "r749", "r750", "r751", "r752", "r753", "r754", "r755", "r756", "r757", "r758", "r759" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r734", "r735", "r736", "r737", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r746", "r747", "r748", "r749", "r750", "r751", "r752", "r753", "r754", "r755", "r756", "r757", "r758", "r759" ] }, "us-gaap_PreferredStockLiquidationPreferenceValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockLiquidationPreferenceValue", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Liquidation Preference, Value", "verboseLabel": "Preferred stock, liquidation preference value", "documentation": "Value of the difference between preference in liquidation and the par or stated values of the preferred shares." } } }, "auth_ref": [ "r190", "r310" ] }, "us-gaap_PreferredStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockMember", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock [Member]", "terseLabel": "Preferred stock", "documentation": "Preferred shares may provide a preferential dividend to the dividend on common stock and may take precedence over common stock in the event of a liquidation. Preferred shares typically represent an ownership interest in the company." } } }, "auth_ref": [ "r600", "r601", "r604", "r605", "r606", "r607", "r785", "r788" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock Par Or Stated Value Per Share", "terseLabel": "Preferred stock, par value", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r89", "r308" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock Shares Authorized", "terseLabel": "Preferred stock, shares authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r89", "r511" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock Shares Issued", "terseLabel": "Preferred stock, issued", "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt." } } }, "auth_ref": [ "r89", "r308" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock Shares Outstanding", "terseLabel": "Preferred stock, outstanding", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r89", "r511", "r529", "r788", "r789" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Preferred Stock Value", "verboseLabel": "Preferred stock, shares authorized 5,000,000: Series A Convertible preferred stock, $0.01 par value ($100 liquidation preference value); shares authorized 150,000; none issued or outstanding", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r89", "r454", "r597" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Prepaid Expense and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r702" ] }, "hdsn_PrimeCommercialLendingRateOfWellsFargoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PrimeCommercialLendingRateOfWellsFargoMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the Prime Commercial Lending Rate Of Wells Fargo.", "label": "Prime commercial lending rate of Wells Fargo [Member]", "terseLabel": "Prime commercial lending rate of Wells Fargo" } } }, "auth_ref": [] }, "hdsn_PriorTermLoanFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PriorTermLoanFacilityMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the prior term loan facility.", "label": "Prior Term Loan Facility [Member]", "terseLabel": "Prior Term Loan Facility" } } }, "auth_ref": [] }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfCommonStock", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Issuance of Common Stock", "terseLabel": "Net proceeds from issuances of common stock and exercises of stock options", "documentation": "The cash inflow from the additional capital contribution to the entity." } } }, "auth_ref": [ "r5" ] }, "us-gaap_ProceedsFromIssuanceOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfLongTermDebt", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Issuance of Long-term Debt", "verboseLabel": "Proceeds from long term debt", "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer." } } }, "auth_ref": [ "r30", "r482" ] }, "us-gaap_ProceedsFromLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromLinesOfCredit", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Proceeds from Lines of Credit", "terseLabel": "Amount borrowed", "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements." } } }, "auth_ref": [ "r30", "r706" ] }, "us-gaap_ProceedsFromRepaymentsOfShortTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromRepaymentsOfShortTermDebt", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds From Repayments Of Short Term Debt", "terseLabel": "Borrowing of short-term debt - net", "documentation": "The net cash inflow or outflow for borrowing having initial term of repayment within one year or the normal operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_ProductMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Product [Member]", "verboseLabel": "Product and related sales", "documentation": "Article or substance produced by nature, labor or machinery." } } }, "auth_ref": [ "r589" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r238", "r444", "r467", "r468", "r469", "r470", "r471", "r472", "r573", "r589", "r598", "r696", "r725", "r726", "r732", "r783" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]" } } }, "auth_ref": [ "r238", "r444", "r467", "r468", "r469", "r470", "r471", "r472", "r573", "r589", "r598", "r696", "r725", "r726", "r732", "r783" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProfitLoss", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "verboseLabel": "Net income", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r151", "r172", "r173", "r183", "r191", "r197", "r205", "r206", "r224", "r231", "r235", "r237", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r402", "r405", "r406", "r417", "r418", "r449", "r462", "r488", "r531", "r550", "r551", "r580", "r594", "r595", "r609", "r703", "r727" ] }, "hdsn_PropertyLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PropertyLocationAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Property Location [Axis]" } } }, "auth_ref": [] }, "hdsn_PropertyLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "PropertyLocationDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Property Location [Domain]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "label": "Property, plant and equipment" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Long-Lived Tangible Asset [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r8" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipment" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment Disclosure [Text Block]", "verboseLabel": "Property, plant and equipment", "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r113", "r141", "r144", "r145" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Gross", "terseLabel": "Subtotal", "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r114", "r156", "r460" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "Property, plant and equipment", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 }, "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails", "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Net", "terseLabel": "Property, plant and equipment, less accumulated depreciation", "totalLabel": "Total", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r8", "r450", "r460", "r597" ] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Policy [Policy Text Block]", "terseLabel": "Property, Plant and Equipment", "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r8", "r141", "r144", "r458" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentTables" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedule of elements of property, plant and equipment", "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r8" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Long-Lived Tangible Asset [Domain]", "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software." } } }, "auth_ref": [ "r114" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Useful Life", "verboseLabel": "Property, plant and equipment, Estimated Lives", "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment." } } }, "auth_ref": [] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetReservesForDoubtfulAccountsDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Provision for Doubtful Accounts", "terseLabel": "Net additions charged to Operations", "verboseLabel": "Allowance for doubtful accounts", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r181", "r249" ] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r651" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "auth_ref": [ "r651" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails", "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r267", "r268", "r269", "r270", "r325", "r337", "r365", "r366", "r367", "r441", "r442", "r473", "r501", "r502", "r555", "r556", "r557", "r558", "r559", "r570", "r571", "r581", "r588", "r592", "r599", "r602", "r721", "r729", "r776", "r777", "r778", "r779", "r780" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails", "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r267", "r268", "r269", "r270", "r325", "r337", "r365", "r366", "r367", "r441", "r442", "r473", "r501", "r502", "r555", "r556", "r557", "r558", "r559", "r570", "r571", "r581", "r588", "r592", "r599", "r602", "r721", "r729", "r776", "r777", "r778", "r779", "r780" ] }, "hdsn_RantoulIllinoisMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "RantoulIllinoisMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to Rantoul, Illinois.", "label": "Rantoul, Illinois [Member]", "terseLabel": "Rantoul, Illinois" } } }, "auth_ref": [] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "label": "Trade accounts receivable - net" } } }, "auth_ref": [] }, "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Reconciliation of Revenue from Segments to Consolidated [Table]", "documentation": "Identification, description, and amounts of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues." } } }, "auth_ref": [ "r47", "r48" ] }, "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Reconciliation of Revenue from Segments to Consolidated [Table Text Block]", "terseLabel": "Schedule of Product and related sales and RefrigerantSide Services revenues", "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues." } } }, "auth_ref": [ "r47", "r48" ] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r617", "r629", "r639", "r665" ] }, "hdsn_RenewalTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "RenewalTerm", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the period of renewal term.", "label": "Renewal Term", "terseLabel": "Renewal term" } } }, "auth_ref": [] }, "us-gaap_RepaymentsOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLongTermDebt", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Repayments Of Long Term Debt", "negatedLabel": "Repayment of long-term debt", "terseLabel": "Repayment of debt", "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r32", "r485" ] }, "us-gaap_ResearchDevelopmentAndComputerSoftwarePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ResearchDevelopmentAndComputerSoftwarePolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Research, Development, and Computer Software, Policy [Policy Text Block]", "terseLabel": "Capitalized Software Development Costs", "documentation": "Disclosure of accounting policy for its research and development and computer software activities including the accounting treatment for costs incurred for (1) research and development activities, (2) development of computer software for internal use, (3) computer software to be sold, leased or otherwise marketed as a separate product or as part of a product or process and (4) in-process research and development acquired in a purchase business combination." } } }, "auth_ref": [ "r2", "r3", "r86" ] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "auth_ref": [ "r618", "r630", "r640", "r666" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r619", "r631", "r641", "r667" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "auth_ref": [ "r626", "r638", "r648", "r674" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings Accumulated Deficit", "verboseLabel": "Retained earnings", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r92", "r119", "r456", "r477", "r478", "r486", "r512", "r597" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings [Member]", "terseLabel": "Retained Earnings (Accumulated Deficit)", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r150", "r194", "r195", "r196", "r198", "r204", "r206", "r245", "r246", "r373", "r374", "r375", "r392", "r393", "r409", "r411", "r412", "r414", "r415", "r474", "r476", "r489", "r788" ] }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer, Including Assessed Tax", "terseLabel": "Total", "verboseLabel": "Management services revenue", "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise." } } }, "auth_ref": [ "r225", "r226", "r230", "r233", "r234", "r238", "r239", "r240", "r322", "r323", "r444" ] }, "us-gaap_RevenueFromContractWithCustomerMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer Benchmark [Member]", "terseLabel": "Revenue from Contract with Customer", "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation." } } }, "auth_ref": [ "r240", "r694" ] }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Policy Text Block]", "terseLabel": "Revenues and Cost of Sales", "documentation": "Disclosure of accounting policy for revenue from contract with customer." } } }, "auth_ref": [ "r148", "r314", "r315", "r316", "r317", "r318", "r319", "r320", "r321", "r572" ] }, "us-gaap_Revenues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Revenues", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Revenues", "terseLabel": "Revenues", "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss)." } } }, "auth_ref": [ "r179", "r191", "r225", "r226", "r230", "r233", "r234", "r238", "r239", "r240", "r244", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r418", "r449", "r727" ] }, "hdsn_RevolvingCreditFacilityAmendmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "RevolvingCreditFacilityAmendmentMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Revolving credit facility Amendment.", "label": "Revolving Credit Facility Amendment [Member]", "terseLabel": "Revolving credit facility Amendment" } } }, "auth_ref": [] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revolving Credit Facility [Member]", "terseLabel": "Revolving Credit Facility", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesSupplementalCashFlowAndNonCashInformationRelatedToLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "terseLabel": "Right -of-use assets obtained in exchange for new operating lease liabilities", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r436", "r596" ] }, "hdsn_RiversideCaliforniaMemberMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "RiversideCaliforniaMemberMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Riverside California.", "label": "Riverside California [Member]", "verboseLabel": "Riverside, California" } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r683" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r683" ] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Scenario, Unspecified [Domain]" } } }, "auth_ref": [ "r207", "r338", "r692", "r712" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "verboseLabel": "Schedule of activity occurring in the reserves for allowance for credit losses", "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables." } } }, "auth_ref": [ "r29" ] }, "us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureAccruedExpensesAndOtherCurrentLiabilitiesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accounts Payable and Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule of shirt accrued expenses and other current liabilities", "documentation": "Tabular disclosure of the (a) 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 (accounts payable); (b) other payables; and (c) accrued liabilities. 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). An alternative caption includes accrued expenses." } } }, "auth_ref": [] }, "hdsn_ScheduleOfChangesInAccountsReceivableTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ScheduleOfChangesInAccountsReceivableTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureTradeAccountsReceivableNetTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the changes in the balance of accounts receivable during the year.", "label": "Schedule of Changes in Accounts Receivable [Table Text Block]", "terseLabel": "Schedule of changes in the balance of accounts receivable" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]", "terseLabel": "Schedule of provision for income taxes", "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years." } } }, "auth_ref": [ "r124" ] }, "us-gaap_ScheduleOfDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDebtTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Debt [Table Text Block]", "verboseLabel": "Schedule of short-term and long-term debt", "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]", "verboseLabel": "Schedule of net deferred income tax assets (liabilities)", "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets." } } }, "auth_ref": [ "r123" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "verboseLabel": "Schedule of reconciliation of shares used to determine net income per share", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r714" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "terseLabel": "Schedule of reconciliation of the Company's actual tax rate to the U.S. Federal statutory rate", "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r122" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]", "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements." } } }, "auth_ref": [ "r67" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsCompanySOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r53", "r55", "r445" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureGoodwillAndIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "terseLabel": "Schedule of company's other intangible assets", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r53", "r55" ] }, "us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryNoncurrentTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureInventoriesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Inventory, Noncurrent [Table Text Block]", "terseLabel": "Schedule of inventories", "documentation": "Tabular disclosure of inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle including inventoried costs relating to long-term contracts or programs." } } }, "auth_ref": [] }, "hdsn_ScheduleOfOperatingLeaseInAnnualRentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ScheduleOfOperatingLeaseInAnnualRentTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of Schedule of Operating Lease in annual rent.", "label": "Schedule of Operating Lease in Annual Rent [Table Text Block]", "terseLabel": "Schedule of rent expense" } } }, "auth_ref": [] }, "hdsn_ScheduleOfOperatingLeaseInBalanceSheetClassificationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ScheduleOfOperatingLeaseInBalanceSheetClassificationTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of operating lease in balance sheet classification.", "label": "Schedule of Operating Lease in Balance Sheet Classification [Table Text Block]", "verboseLabel": "Schedule of balance sheet classification of lease liabilities" } } }, "auth_ref": [] }, "hdsn_ScheduleOfOperatingLeaseOtherInformationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ScheduleOfOperatingLeaseOtherInformationTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of operating lease other information.", "label": "Schedule of Operating Lease Other Information [Table Text Block]", "verboseLabel": "Schedule of other information of operating leases" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentAdditionalInformationDetails", "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Table]", "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r8" ] }, "us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationActivityTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Activity [Table Text Block]", "verboseLabel": "Schedule of weighted average contractual life in years and the weighted average exercise price", "documentation": "Tabular disclosure of activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value." } } }, "auth_ref": [ "r13", "r14", "r66" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGrantDateIntrinsicValueTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Grant Date Intrinsic Value [Table Text Block]", "verboseLabel": "Schedule of intrinsic value", "documentation": "Tabular disclosure of the total intrinsic value of options exercised (or share units converted), share-based liabilities paid, and the total fair value of shares vested during the year." } } }, "auth_ref": [ "r120" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]", "verboseLabel": "Schedule of the activity for stock options issued", "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value." } } }, "auth_ref": [ "r13", "r14", "r65" ] }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]", "verboseLabel": "Schedule of weighted-average assumptions used in determining fair value of share based awards", "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions." } } }, "auth_ref": [ "r121" ] }, "hdsn_ScheduleOfSupplementalCashFlowAndNonCashInformationRelatedToLeasesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ScheduleOfSupplementalCashFlowAndNonCashInformationRelatedToLeasesTableTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of Supplemental cash flow and non-cash information related to leases.", "label": "Schedule of Supplemental Cash Flow And Non-Cash Information Related To Leases [Table Text Block]", "terseLabel": "Schedule of Supplemental cash flow and non-cash information related to leases" } } }, "auth_ref": [] }, "hdsn_SecuredOvernightFinancingRateAndFirstInLastOutTrancheMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "SecuredOvernightFinancingRateAndFirstInLastOutTrancheMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Secured Overnight Financing Rate And First in Last Out Tranche Loans.", "label": "SOFR FILO Tranche [Member]", "terseLabel": "SOFR FILO Tranche" } } }, "auth_ref": [] }, "hdsn_SecuredOvernightFinancingRateMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "SecuredOvernightFinancingRateMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the Secured Overnight Financing Rate (SOFR).", "label": "SOFR [Member]", "terseLabel": "SOFR" } } }, "auth_ref": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r611" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r613" ] }, "us-gaap_SegmentReportingRevenueReconcilingItemLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingRevenueReconcilingItemLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Revenue Reconciling Item [Line Items]", "terseLabel": "Revenue reconciling item", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative Expense", "verboseLabel": "Selling, general and administrative", "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc." } } }, "auth_ref": [ "r101" ] }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpensesMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureLeasesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative Expenses [Member]", "terseLabel": "Selling, general and administrative expenses", "documentation": "Primary financial statement caption encompassing selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_SeriesAPreferredStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SeriesAPreferredStockMember", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Series A Preferred Stock [Member]", "terseLabel": "Series A Convertible Preferred Stock", "documentation": "Series A preferred stock." } } }, "auth_ref": [ "r698", "r699", "r731" ] }, "us-gaap_ServiceMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ServiceMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesSummaryOfCompanySRevenuesDetails" ], "lang": { "en-us": { "role": { "label": "Refrigerant Side Services [Member]", "verboseLabel": "RefrigerantSide Services", "documentation": "Assistance, including, but not limited to, technology, license and maintenance, license and service, maintenance, oil and gas, and financial service." } } }, "auth_ref": [ "r589" ] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share Based Compensation", "terseLabel": "Share based compensation", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ShareBasedCompensationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationAbstract", "lang": { "en-us": { "role": { "label": "Share-based compensation" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period", "terseLabel": "Stock option vesting period", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r593" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate", "verboseLabel": "Dividend yield", "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term." } } }, "auth_ref": [ "r366" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate", "terseLabel": "Expected volatility", "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period." } } }, "auth_ref": [ "r365" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate", "terseLabel": "Risk free interest rate", "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares." } } }, "auth_ref": [ "r367" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]", "verboseLabel": "Weighted Average Remaining Contractual Life" } } }, "auth_ref": [] }, "hdsn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueNonvested.": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueNonvested.", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of intrinsic value of equity-based compensation awards not vested.", "label": "Share based Compensation Arrangement by Share based Payment Award, Options, Aggregate Intrinsic Value, Nonvested.", "verboseLabel": "Intrinsic value of options unvested" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationIntrinsicValueDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value", "verboseLabel": "Intrinsic value of options exercised", "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares." } } }, "auth_ref": [ "r361" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period", "negatedLabel": "-Cancelled", "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan." } } }, "auth_ref": [ "r352" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures", "terseLabel": "-Granted", "verboseLabel": "Options granted", "documentation": "Net number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r741" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Option to purchase granted", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r350" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Grants In Period, Weighted Average Grant Date Fair Value", "terseLabel": "-Granted", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r360" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value", "terseLabel": "Intrinsic value of options outstanding", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r64" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number", "periodEndLabel": "Outstanding at end of period", "periodStartLabel": "Outstanding at beginning of period", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r346", "r347" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]", "terseLabel": "Number of Options", "verboseLabel": "Shares", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price", "periodEndLabel": "Outstanding at end of period", "periodStartLabel": "Outstanding at beginning of period", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r346", "r347" ] }, "hdsn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails" ], "lang": { "en-us": { "role": { "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price [Abstract]", "verboseLabel": "Weighted Average Exercise Price" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number", "verboseLabel": "Options outstanding and vested", "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r362" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price", "verboseLabel": "Options outstanding and vested", "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r362" ] }, "hdsn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedInPeriodTotalIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationIntrinsicValueDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of share- based compensation arrangement by share based payment award, options, vested in period, total intrinsic value.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Vested In Period Total Intrinsic Value", "verboseLabel": "Intrinsic value of options vested" } } }, "auth_ref": [] }, "hdsn_ShareBasedCompensationArrangementByShareBasedPaymentAwardPercentageFromFairMarketPrice": { "xbrltype": "percentItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPercentageFromFairMarketPrice", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "documentation": "Share based compensation arrangement by share based payment award percentage from fair market price.", "label": "Share based Compensation Arrangement By Share Based Payment Award Percentage From Fair Market Price", "verboseLabel": "Share-based compensation arrangement by share based payment award percentage of fair market Person holding more then 10% voting stock" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "All Award Types", "terseLabel": "All Award Types", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price", "terseLabel": "-Exercised", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r351" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price", "terseLabel": "-Cancelled", "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated." } } }, "auth_ref": [ "r352" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage", "terseLabel": "Stock option vesting, percentage", "documentation": "Percentage of vesting of award under share-based payment arrangement." } } }, "auth_ref": [ "r734" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageAssumptionsUsedInDeterminingFairValueOfShareBasedAwardsAtGrantDateByUsingBlackScholesOptionPricingModelDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term", "verboseLabel": "Expected lives", "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r364" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationWeightedAverageContractualLifeInYearsAndWeightedAverageExercisePriceDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term", "terseLabel": "Options outstanding and vested", "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r362" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares", "verboseLabel": "Options vested", "documentation": "Number of options vested." } } }, "auth_ref": [] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares, Outstanding", "periodEndLabel": "Balance (in shares)", "periodStartLabel": "Balance (in shares)", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "hdsn_ShortTermAndLongTermDebtLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ShortTermAndLongTermDebtLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "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": "Short-term and long-term debt [Line items]", "terseLabel": "Short-term and Long-term debt" } } }, "auth_ref": [] }, "hdsn_ShortTermAndLongTermDebtTable": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "ShortTermAndLongTermDebtTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Schedule of accounts short-term and long-term debt.", "label": "Short-term and long-term debt [Table]" } } }, "auth_ref": [] }, "us-gaap_ShortTermBorrowingsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermBorrowingsAbstract", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Short-term Debt [Abstract]", "verboseLabel": "Short-term debt:" } } }, "auth_ref": [] }, "us-gaap_ShortTermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermDebtTypeAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Short-term Debt, Type [Axis]", "documentation": "Information by type of short-term debt arrangement." } } }, "auth_ref": [ "r20" ] }, "us-gaap_ShortTermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermDebtTypeDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Short-term Debt, Type [Domain]", "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing." } } }, "auth_ref": [ "r18" ] }, "hdsn_SignificantAccountingPoliciesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "SignificantAccountingPoliciesLineItems", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Significant Accounting Policies [Line Items]", "label": "Significant Accounting Policies [Line Items]", "terseLabel": "Significant accounting policies" } } }, "auth_ref": [] }, "hdsn_SignificantAccountingPoliciesTable": { "xbrltype": "stringItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "SignificantAccountingPoliciesTable", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "documentation": "Significant Accounting Policies [Table]", "label": "Significant Accounting Policies [Table]" } } }, "auth_ref": [] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "label": "Significant Accounting Policies [Text Block]", "verboseLabel": "Summary of Significant Accounting Policies", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r108", "r188" ] }, "hdsn_SmyrnaGeorgiaMemberMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "SmyrnaGeorgiaMemberMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Smyrna Georgia.", "label": "Smyrna Georgia [Member]", "verboseLabel": "Smyrna, Georgia" } } }, "auth_ref": [] }, "us-gaap_StateAndLocalJurisdictionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StateAndLocalJurisdictionMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureIncomeTaxesReconciliationOfCompanySActualTaxRateToUsFederalStatutoryRateDetails", "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "label": "State", "terseLabel": "State", "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_StatementClassOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementClassOfStockAxis", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Class of Stock [Axis]", "documentation": "Information by the different classes of stock of the entity." } } }, "auth_ref": [ "r149", "r165", "r166", "r167", "r191", "r210", "r214", "r216", "r218", "r222", "r223", "r244", "r272", "r274", "r275", "r276", "r279", "r280", "r308", "r309", "r310", "r311", "r312", "r418", "r482", "r483", "r484", "r485", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r511", "r532", "r552", "r563", "r564", "r565", "r566", "r567", "r691", "r705", "r713" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r12", "r28", "r150", "r175", "r176", "r177", "r194", "r195", "r196", "r198", "r204", "r206", "r221", "r245", "r246", "r313", "r373", "r374", "r375", "r392", "r393", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r419", "r420", "r421", "r422", "r423", "r424", "r440", "r474", "r475", "r476", "r489", "r552" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "verboseLabel": "Statement", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r194", "r195", "r196", "r221", "r444", "r480", "r500", "r503", "r504", "r505", "r506", "r507", "r508", "r511", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r524", "r525", "r526", "r527", "r528", "r530", "r534", "r535", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r552", "r603" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "Consolidated Statements of Cash Flows" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "Consolidated Balance Sheets" } } }, "auth_ref": [] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementScenarioAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "auth_ref": [ "r207", "r338", "r692", "r693", "r712" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheetsParenthetical", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r194", "r195", "r196", "r221", "r444", "r480", "r500", "r503", "r504", "r505", "r506", "r507", "r508", "r511", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r524", "r525", "r526", "r527", "r528", "r530", "r534", "r535", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r552", "r603" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "auth_ref": [ "r621", "r633", "r643", "r669" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesIssuedForServices": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesIssuedForServices", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, Issued for Services", "terseLabel": "Issuance of common stock for services (in shares)", "documentation": "Number of shares issued in lieu of cash for services contributed to the entity. Number of shares includes, but is not limited to, shares issued for services contributed by vendors and founders." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Exercises In Period", "negatedLabel": "-Exercised", "verboseLabel": "Issuance of common stock upon exercise of stock options (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r12", "r89", "r90", "r119", "r351" ] }, "us-gaap_StockIssuedDuringPeriodValueIssuedForServices": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueIssuedForServices", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Issued for Services", "terseLabel": "Issuance of common stock for services", "documentation": "Value of stock issued in lieu of cash for services contributed to the entity. Value of the stock issued includes, but is not limited to, services contributed by vendors and founders." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Stock Options Exercised", "verboseLabel": "Issuance of common stock upon exercise of stock options", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r12", "r28", "r119" ] }, "hdsn_StockOptionPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "StockOptionPlanMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails", "http://www.hudsontech.com/role/DisclosureShareBasedCompensationSummaryOfActivityForStockOptionsIssuedUnderCompanySPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Stock Option Plan.", "label": "Stock Option Plan [Member]", "verboseLabel": "Stock Option Plan" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets", "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total Stockholders' Equity", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r90", "r93", "r94", "r109", "r513", "r529", "r553", "r554", "r597", "r610", "r707", "r717", "r769", "r788" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Consolidated Statements of Stockholders' Equity", "verboseLabel": "Stockholders' equity:" } } }, "auth_ref": [] }, "hdsn_StonyPointNyMemberMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "StonyPointNyMemberMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "This member stands for Stony Point Ny.", "label": "Stony Point Ny [Member]", "verboseLabel": "Stony Point, New York" } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.hudsontech.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental disclosure of cash flow information:" } } }, "auth_ref": [] }, "hdsn_SwingLineLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "SwingLineLoanMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to swing line.", "label": "Swing Line Loan [Member]", "terseLabel": "Swing line loan" } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "auth_ref": [ "r662" ] }, "hdsn_TermLoanFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "TermLoanFacilityMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the term loan facility.", "label": "Term Loan Facility [Member]", "terseLabel": "Term Loan Facility" } } }, "auth_ref": [] }, "hdsn_TermLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "TermLoanMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the term loan.", "label": "Term Loan [Member]", "verboseLabel": "Term Loan" } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r654" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "auth_ref": [ "r661" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r682" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "auth_ref": [ "r684" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.hudsontech.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r685" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r686" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r684" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r684" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "auth_ref": [ "r687" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r685" ] }, "hdsn_TwoThousandAndEighteenStockIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "TwoThousandAndEighteenStockIncentivePlanMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to two thousand and eighteen stock incentive plan.", "label": "2018 Stock Incentive Plan [Member]", "verboseLabel": "2018 Stock Incentive Plan" } } }, "auth_ref": [] }, "hdsn_TwoThousandAndFourteenStockIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "TwoThousandAndFourteenStockIncentivePlanMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to two thousand and fourteen stock incentive plan.", "label": "2014 Stock Incentive Plan [Member]", "verboseLabel": "2014 Stock Incentive Plan" } } }, "auth_ref": [] }, "hdsn_TwoThousandAndTwentyStockIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "TwoThousandAndTwentyStockIncentivePlanMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to two thousand and twenty stock incentive plan.", "label": "2020 Stock Incentive Plan [Member]", "terseLabel": "2020 Stock Incentive Plan" } } }, "auth_ref": [] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "auth_ref": [ "r681" ] }, "us-gaap_UnsecuredDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnsecuredDebt", "crdr": "credit", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Unsecured Debt", "terseLabel": "Unsecured loan", "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of uncollateralized debt obligations (with maturities initially due after one year or beyond the operating cycle if longer)." } } }, "auth_ref": [ "r16", "r130", "r781" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Use Of Estimates, Policy [Policy Text Block]", "terseLabel": "Estimates and Risks", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r44", "r45", "r46", "r138", "r139", "r142", "r143" ] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateAxis", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Axis]", "documentation": "Information by type of variable rate." } } }, "auth_ref": [] }, "us-gaap_VariableRateDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateDomain", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Domain]", "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index." } } }, "auth_ref": [] }, "us-gaap_VehiclesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VehiclesMember", "presentation": [ "http://www.hudsontech.com/role/DisclosurePropertyPlantAndEquipmentSummaryOfElementsOfPropertyPlantAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Vehicles [Member]", "verboseLabel": "Vehicles", "documentation": "Equipment used primarily for road transportation." } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfSharesUsedToDetermineNetIncomePerShareDetails", "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted", "terseLabel": "Weighted average number of shares outstanding - Diluted", "verboseLabel": "Weighted average number of shares outstanding - diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r209", "r218" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.hudsontech.com/role/DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfSharesUsedToDetermineNetIncomePerShareDetails", "http://www.hudsontech.com/role/StatementConsolidatedIncomeStatements" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Weighted average number of shares outstanding - Basic", "verboseLabel": "Weighted average number of shares - basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r208", "r218" ] }, "hdsn_WellsFargoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "WellsFargoMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureShortTermAndLongTermDebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to wells Fargo.", "label": "Wells Fargo [Member]", "terseLabel": "Wells Fargo" } } }, "auth_ref": [] }, "hdsn_WoodcliffLakeNewJerseyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.hudsontech.com/20231231", "localname": "WoodcliffLakeNewJerseyMember", "presentation": [ "http://www.hudsontech.com/role/DisclosureCommitmentsAndContingenciesNonCancelableOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to Woodcliff Lake, New Jersey.", "label": "Woodcliff Lake, New Jersey [Member]", "terseLabel": "Woodcliff Lake, New Jersey" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482338/360-10-05-4" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "4", "SubTopic": "50", "Topic": "350", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482610/350-50-25-4" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "1", "SubTopic": "40", "Topic": "350", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482633/350-40-30-1" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "825", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-1" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "30", "Topic": "350", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "60", "Paragraph": "1", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482053/820-10-60-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "45", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-8" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.3,4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "330", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "((a)(1),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-4" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-5" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "50", "Section": "40", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481303/470-50-40-2" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "50", "Section": "40", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481303/470-50-40-4" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "55", "Paragraph": "63", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481620/480-10-55-63" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "40", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-4" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "40", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-5" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "825", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480981/942-825-50-1" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "985", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350/tableOfContent" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//360/tableOfContent" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-2" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.CC)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480091/360-10-S99-2" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(d)(2)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(f)(2)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "12", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "9", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-3" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "820", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//820/tableOfContent" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "840", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481161/840-30-50-1" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "270", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(210.5-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-2" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-3" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-2" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-3" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//715/tableOfContent" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(o)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(p)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//842-20/tableOfContent" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-2" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-1" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "330", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-2" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "27", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-27" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483580/946-220-50-3" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column E)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column E)(Footnote 6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r572": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r573": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(a)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r574": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r575": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r576": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r577": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r578": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r579": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r580": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r581": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r582": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24" }, "r583": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r584": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B" }, "r585": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C" }, "r586": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E" }, "r587": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F" }, "r588": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r589": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r590": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r591": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r592": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r593": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r594": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J" }, "r595": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K" }, "r596": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r597": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r598": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2" }, "r599": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r600": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r601": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r602": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r603": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r604": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r606": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r607": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r608": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r609": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11" }, "r610": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r611": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r612": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r613": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r615": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r616": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r617": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r618": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r619": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r620": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r621": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r622": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r623": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r624": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r625": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r626": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r627": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii", "Section": "6" }, "r628": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r629": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r630": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r631": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r632": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r633": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r634": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r635": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r636": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r637": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r638": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r639": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r640": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r641": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r642": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r643": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r644": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r645": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r646": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r647": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r648": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r649": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r651": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r652": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r653": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r654": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r655": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r656": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r657": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r658": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r659": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r660": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r661": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r662": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r663": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r664": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r665": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r666": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r667": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r668": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r669": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r670": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r671": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r672": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r673": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r674": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r675": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r676": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r677": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r678": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r679": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r680": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r681": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r682": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r683": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r684": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r685": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r686": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r687": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r688": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r689": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r690": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r691": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3" }, "r692": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-10" }, "r693": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-3" }, "r694": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r695": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r696": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r697": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r698": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r699": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r700": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r701": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r702": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r703": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r704": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r705": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r706": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r707": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r708": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r709": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r710": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r711": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r712": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r713": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "55", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-55" }, "r714": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r715": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18" }, "r716": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//310-10/tableOfContent" }, "r717": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r718": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480341/340-10-S99-1" }, "r719": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r720": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r721": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r722": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r723": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r724": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r725": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r726": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r727": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r728": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r729": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r730": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r731": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r732": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r733": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r734": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r735": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r736": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r737": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r738": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r739": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r740": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r741": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r742": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r743": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r744": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r745": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r746": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r747": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r748": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r749": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r750": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r751": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r752": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r753": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r754": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r755": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r756": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r757": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r758": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r759": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r760": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r761": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r762": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r763": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r764": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r765": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r766": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r767": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r768": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r769": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r770": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r771": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r772": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r773": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r774": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r775": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r776": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r777": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r778": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r779": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r780": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r781": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r782": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r783": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r784": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r785": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r786": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r787": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r788": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r789": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" } } } ZIP 86 0001410578-24-000199-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001410578-24-000199-xbrl.zip M4$L#!!0 ( !>(;EB/K#:LQ!0 ##7 1 :&1S;BTR,#(S,3(S,2YX MMSV[JQ_]Z9_@^HOS2=J?Q,VA-A*20(@A5QT1-52S3E MJQ5FZ L1@GH>NA+471"$SDZ/WQV?'O^$!H-/AL45EI"%,V1XG1^?Q0FCB!MG ME^CBY.SMR?GI^5MT?GG^_O+M!7KX$M-] G,RQG!USL3B)$C27BZ.(6%(G(7R>">]8$N=XP=GIV-#JYF>GYY>G/QV2]FWA*5:B1*>D))ARC!U9#&M2+@SAV89\?X$4M/F+6&<)&5=0HE2SA].(#6IT62AVS8+L69^$I'%N;!2@LX" M13)>$;"<7SQ+6@WS8-?W7;(2Q*DCUY9RJY"J5D9M2Z+%E0P2,@9UK09UMP8U M[10M;,3>AXT839S-<4MJN.-F"H>_!S*8E1+KQ###IS\@9'H8S!A7QD'UI_CC M:D79G(=?X)MNUBZU2:90>Y#^\74RME478[YK*AV/RT"01T#-Q<(=,G<42,7] MX3.5U]S'E$5.(8\0!26;98GEBR5TR9PR:G2!AOOT% W0EB'\$?-$P!2%7)%F MBT*^*&;\\\DNNYV" A@ W+-/YC?XE81FSYA0]Y91YHC$DM'!GA-XS?-MQ2K- M%GV,$=L31S";,DW["%HQ[E%75Z,K[.F:^+@D) :O!IT%,:CI!K&$"_Q.,T(1 M)Q2RZC&JQF@,8V"?)$DVF'*D5J3.[4B%S+;I/5@UP-I:ZWX^PG)YX_$G&V+% M]%;8WMIAVW)$?(XT3V28]NB5=&MCM@95N:!$7A.%J9?KQ0HH+ B]!83.=CNM M% OT)F+REQZ2$D@>!%\1H38/T% M?L$J$%0!PN;O![PQ!HZL-P*USG>=I7[&"D\XW_6$D#/\B)EKG#W]$:TB_EM@ M@4Q;'9WW".^!+8D8P_Q6 M^.:3%>16G"J@+Z_2F3D.RI9GVFY3(DH5V;M$C6&:GHY,\3.1T(NNJ5XEN.$B M];ET]%8WHQ7P_RD:U)D9DM(\PLX]Y(X 5T33B3V\#>"=$(/QZC2"PD8[E"DM[%&KC8-9D3(>* "7P: M2DF4O*5X!J HVU2P!8\*9[FH<):XH%23@K I"[WQMJ7]I7>!2A?XA7/WB7H> M]/IC4)DM]/I.B%O<#$2C@6QBB3?LR\[J&#_E.YRX/#.(H G3V!L&J1:$FR%& MGJ;WD2H?&3J."(C[^7E%&(SGX@'BR"SSJNHFHG%^JQ=\R'M!5 B40G&&T*\ MP[5HA5+-0H]X]<+6D@LU)<('K&XY6^B?UV16%D&J(K?A>7::Q]/P&RC@8I#4 M+,._7&#:P]=Z/>L!Z[JP) JF7E[=Q:ULIHJ5KG?U5[K0FPSG'LV&BRF/BCO? MEMR#L:_485BUJ;FJ4I#1BNI%D^65-/,_HY!]CVQ9,QL'V!_I@IF "%/0E^FM M890M'L#$3GFOVBRSM4L]*VB"MW'W%'^T+0#%)?3M\8%PWIV&/RZA?91?0<(I M!Q-#_T<9N2,JG P]$&$(]O*._8JL\*G5#C*AX M)KB"(9^AZ[WR0%Z94,7SMPE9$Q;LV2Q5I&J)9<*?\BU&M7^ ML"VN7YTZS(Z5)F[0CDG3G0=5>U!Z']AKT;H)X#5R5"Q"Y^IXL@C=PWCX-8(F MV+9E4[$FD*O.E6L"O2,<."S%NM7[POY=[-'>!FC#G*K\=YA[$ZE8>"V(.@^O@#&'2WIS;B*W0 MG10* QL> V?L'#E4/TB8&)TC16YVGR50'SE8>?;H[/4!V_O#<,'01U( M^,)=XC7RE>\K8H6'%HPLM(>&5R6DM8"D6!$4:8)2JB"M"S)G,1-MD%8'&7U, MV-*$K4/.H4X(*V2T0EHM--L@HQ@RF@TBU5"H&XJ40T:[OKZTK"])7'KH*+JF M:G/#A5G2#*TLQP I<;\REX@XF1B@4:*EV]F8:X7J7.TP3K8= (MSM>DOG9,S^2;#08Z,=NL_/ M1#A4$EWO2Q2"9;CXW6C8SJM,N^+2;A40R MHI46LG?)EBXY!L-3)JEC.J=&SE69#:I (>$:1U**T[A$X_F#LIXMNG4C]U30V9I0,M/51[+MU##Y1U';UXK=P.0>EY_-[6U6^QP-;G >U([GT0L$>VX3Z/NGLYK+@U/O#7P]1\ MM;W!,KL=K*;;*'JP&D5:ZP55[1 U6$?OT2E!9T(4%>84XQ5A((:2>JZSBTX) ME16=@E#!E@V:17S,=*A'9Z^PZ'[AT3IATO,]3[6]B7_UBQ7[03W5@;660$=Y M+3!?['G [$U81 ]R\P!M,;"5]%8P6YS[Z1&L'[4MABQ/8,7H;=&=3ZD+@GL\ M6H9RB]&I(K=B]2Z/E?T$58]>K?AN,529-"LNY6>?>@#J!WW+FK-= BL455?8 M]8"TCP07 U2=P0K83WG *HZ1]1 >*CQ<#&C3[%9X/^3A;7IG7 ]WNYAQR53- M3FT#\^RT:(>S]<*X'KO6@>1B^*HS6!$LF%Y7'-KJ$6P372ZK>Q9:*VY-SA;T MD+4.@HR6,-8@8.]^"DL:&[-T6BY3.VGGA!/7\4XY=;3UH=A:O66]_D3'\GU&^F"D:-?X9I# MT::Q9^;@-7RAJ:QFKQ!_LQ#:@IO^CN\$)F2/S MM/*E?I+WXY&D/KC]4?1M&3YYZTHVB)_>_1>H>OSL>S&)9F]Y)]D@OFN=J."8 M!19.CDONZ>>3Z TM&%^=Q,(?H9-#:07V;*I5%H(.ZN3A65.=( OQ.JH.5)6F MZNS4KH,K]?/)SCN]T8?,:[[F+5_0#N9\B.4>\RYY23A\9[CJ%>T)DVC=ZH#I3 N,5Y'O>THF;)KY8R'#O8307UK*((5J5'Y,'Y:MWY5OWP)D'B5O MT?9 WL+2HSN8FI(]'2N@C;&&_HH6FESZ'J1X6F[$BOAX,@9+!3"JJ JWB+X(' MJYB4 @GT$.8W-/R4NU/#R U$M OAAJS M\G?M3#QB2I[5E<>=;[$Y#L*IT$Y0IP>F#E^JF/0@QL*04Q^+_W@TQU[2=3:S MT^X#?\UL4YF[:_:(U*G<%91U<:D/FB^V,FX+"M6R";5K@BTB-80H,8:K+I=0 MC'""&1D;L[32%,9M)KO\WMJF!*F OTS/S\\K&LKP8.0:/M/7T*JXV'+47 HR MZV<0[:CMLKWF/J8L7WU<\_V%=8H+;XG,: -#>_T&R!?BSXAX)25RI;:4WO(X M:B3F*WA9'2%:ZK?;@+^B5N5%M]0E=7&2#E^]JK^5E-U6D\)UF:$0.IANPG2; M+4GT*K.Y*"RZ-NH^4'H.YP)HMJM[7A'L5]>HI>6G3WRZY(&$HH;,O>&!4(0P M@^X8JB#T6FORZL[55*B#Z/[96+ECNE<+]=HU#OI(+04XXHW@OKZ2XPL6WX@R M[IBWT2HD+S)2-&9]W>I5(7Y;3R+"O^6O[2D[A;:4_68TFKRJW.D"VWKODYZ0 MP2#ZU8U>6')C+;:VH,_@PN"I"R)'/&S@)UJ&>")J([#$*%9ZX^8AIIC6^,MV M\Y)>0PVWCMT1!9-F/=0)C\W&H9=:M"\;=0D#O2H7='$$<2NB+O>,C *IN$]$ M#'HTGBQ(J(@![/IEA1Y-W-:BP1TO5J#@>R?E'\*?+M%]XH3HU\X)_+OFWAJJ MX\C@!RF/Q D$59OA0A"3/:OJ?BPZ:15=;\;@UB+(/@VS[>8>.&5*CIDB I2. M3=$B7X7^N8Z^??6TZ!OW>3=8OX^G-EF 2U,[B=W0\_B3;H$*7OE*;U5R \=, M">)]P(D[M\_?V>CV=?2\_10_QSO8G^-OT7[H^)DR4,=L9(91Y#59">*$SR7J MSSX7BOXG[LHCAS\\X^_36T5&;!(+;Z8\],__!\K3.=6/YV[O9FYG2@NW'\9^ M\1FO>!DKC'J&UBA)L^BV&V^H'3T]4+NS*W$<[RS6)TGM9!MZA15G$QXL8#P> M4$DQP]DNP4;028U@K.^O,%VPL>=1QJG,ZE.>W%5MA,>5(G?0,: M(<,Q R+ \IJ$_XY9N(-HYM$%SDRH:E%V%MI?B>?)&RP6/-NH%7SO9F-&&;F? MAP' .'"D(^T,)H^ZIGI46R+RR%OZ>T#=E*>VSMW94'<[C:;\"OQ7P(C#U0MK M197Z)1AWUHIA*WW#16H!IW"!IPZA13B(Y@3K+ Z\XN%66V$E- MDK=!_Y9J*&SWOAFZ;2'F4:8"JJ??J W9-9-.I M9)=1];"VZFC$D+$ >Y/XOKC4UO\:)S3*,^_"W?R! MN/V'2^UNV/73-#!V$_(8*"?C=8JGN S458*!EWJ&M5!W4 MREH!]?[H6EKOQ:6#5GD0U#>7<>G=\-B[)6:OO%;F?IX//:46OYMDZZ+>R0ZM M^_FC(BN7/S$=&-%A8T_O2R5K EH NMXDT$?JTB&)9CEWM6^ZQ>M%AB1I+4:! M;VYD6)-)O,LIK] C"$E^#W0T/=XP56*4]NPZ:2DM7[0G)98TW!9&W*M-](3Y M4*8-\/>-*_C<"[B C&+&F1S!_P,_6JS)[%P[*.=.VN_S?*YG,NOM#;BZF0!% M.=-=8KBD519/>5BMHJN%(C.D#QP>F'$GK9?>\9WM6VZHQU/6J")\X8%6$D>L M&F>5!WVCZI9<'R"G/+6C%E-WS$9X1%DP>; WKV\%9_RBC MUW#L#5K%]W25ZY4,:(:Z;J5>7XL.^>['Z$AYW7S,=2?F=(.3.$8;A^BUCF\UY1 M^Q<1>P)-RU.\R)":3Z>^=D]HZW74F1.75KH6H;O\I1XO,GLND3MU!4>ECC7O M#?D^LV NRHZ]I">]Y50=G./NNU4JV3>4W2!UQ]G:;*(Z/N!!_1IE=64$6S%T M2'M\X0'-XY)1>QEQ5_2N&KG7F8\!GFX8% "9HC4-L[JLHR5D35A 1EQ?1 V- MA4]5O-^QQVDU7;W $:U+%T'RRA^E(JW M72EM>S5WC4780['NZ 1@JZCEOOL:9FJ0NZ.6R&^C+7P6(*5][1R=F?VG:E1X M/7!XO^:G_P=02P,$% @ %XAN6/+%B.\!$@ \/X !4 !H9'-N+3(P M,C,Q,C,Q7V-A;"YX;6SM75MOX[H1?B_0_Z"F#ST'J)/8N0>[IW!N6P/).LVE M.'U:*#(=LRN++BDE<7]]AY1D2Y8HD9(OC-R774=]N[^CH4\APRP]_IU)V MFSD8[_SMMS_^X\'!];]W:S@'? WQ*4E7>S] M/.?_O$"3%@CJL:\[(]^?G._MO;^_[WZ\4'>7T%>HO7^P%Q?<"4N>?S"<*OU^ M$)=M[_U^=_OHC-#8;F&/^;;GS&MQ,GGUVF=G9WOB+11E^)R)^K?$L7VA^E*^ M+&D)_EWN*#\3&S0LV5]H<1%#VAH"?G. M_>D$?=UA>#QQ.4'Q;$31$.@-F <,=@[:G9"]/S_Z #FWIDOB,>+B ;> "]OE MQ!]'"/ELQ^+4GQ]Z*79&P8 1ST?.:-9$^%UMY*&.Y!EQFCV:NZ/&?) MK8;M>0O]X:7-1C:_+NX1F;0&N,'-MX;D"<4(W:%?!N[&BP74UDB MD_>43!#UI_=@?7[7&US_)\ 3KI;'8#RVZ;0_O'9C-4G+UA!ON>TO43&W"-P, MN[/]@&(?V!!_W]M3P4O4X*7M.ITJ4FL07[-(JY)F!8(D/>:E:S,&8VTX2H%M M]/T1HCUO2.A8/*HM7K76ENI.N+-]LC\0@X[PAGDD=$-HXG$M+Z-,?#4B/2"' M> YVL= ?N&0RAC!M^MAU_,!VH<@#N.LG\LQNT !1V^7N.P"W..7/ER/XE+/@WCM%;^X M*&PY!B'J8>F7-62NW>02Q>\Z#@W0X/IC@CSP-+$_N0P "<]?#L;Z;2Q1P,<1 MH?X3HF-H]I9XK_SG%7JI$S>4DHS8=V 4#5S1HV^!V8AE3FPI87I2*^C#1]X M#69/L<];@7G8_K[5LF;DX'>2HA61M"*:@F_@W"5.BKS+IV"$+F@=1& @@YCU M#&WV(J8^,!]^M>T)GVT>["'79_$3 9 )WKP([3JF*AKOR!7S*=3+_/FZT]ZQ @;\D EORW9WK'>$7T>^>+-F M1/@$"3H:_X\'W6^VRT.[KG]I4SK%WNL_;3= $J24ZJ85<732;G>,0+ (IRRV MU44U$',8,4@ [$-8A$ 4& &_0^1;W"D+JC0#86T)(V [!@$;9Q2FP+H$R&21 M9@!7*E$$U(%10$5!^-S:I'AE2C8%-C7!(O0.#4+OGJ*)C>.(.PZX56(;A9K- M0+>JH!':1T:A+39R-$NG6D! MZ[G^<-R ?^(M@4>EZF>"KK(\!@Z#?? -H GO5:31'S@;_>$S"R63X%E8YS,! MJ2^(@4-;8E#^3CRG,'3)+?NI$%,6($+JV""D$FE<&(+\'!$7V&1\3/:G M$M#*JZU9#F7.LP734!T;8&NJH"2M4%$N [-&#SS_[J'!M4T]\'NLZSC!F*L< M#:[0$#M8YCG**YH'K2),67PK"FL@WMW! (=#DE&X2?JG0&3I6XZ6%? MK)KB7Y&(QV<.R',@DV MIJ0!CK4S!K%A"[D M7UM*:C4!X2HBFNB*YUP7?R?-%FP"BHI2&1B_1FM,TQ*B6QT!*=8V&MPBL MG#Q!97D-''>344-)E\V6;!"HJM(9.*A>CR^T!WA0Q^0K=E;5H7H?.-8#L M,M'U:DJ%T552BA'G8JVH^BUF96 8.F9>$^?WA WI#7L&RF$29M&!G M)^W.X8;Q*M-ZWN?W,H%,'!DC?F5^-7[=!( *93'0X\U<1GP01=G8%YYCY7)ZWDLFF6F6#@2Z$*PMS#7D- M'/^Z@W\'3*S$NB&T.R;4Q_\5FI,N]964;P[ >B(:Z(UG07DD^ 68JCP6E90V M#T_%=*&:)!IN>$U)?LG)E4J9_L/B3/^6(J^!8=\5FE#DX.A4TXF+! 80RY9'@"I5DVHX MV]^'&=-QTV"OK 8# \9O-O88-U_$^M[U!]='@-F(1PS](5_U)$MCEM7; CNH MIH/2U4,;R (D+;<_7#RL0C8?+*RT!?A74("!:WQ[XXF-:6BT?+GC+7Y#@U"$ MOR-W !/A9_GW9)6Z6V )U?5@X.D@CR.;(G%7"C\W&6;312%!?N$M@%Q#< // M%4F[KAOLV9X#6N!?A]3TUP 5J]R@R%>@B(BL$_59N^=M??WY!405R1X\8>!&Z^- MEO3WHBH--H;*XD(OQZI?88N'Z%(,1#F62-:K4& M8UQ+!7%*9]^@X3RS3U3I\T])K;3T;0.6)ZT@DZ.O@1A_Q4SM1KX!IO+8/2_: MFIB\$BC<#R/_+JA*80N,I*XV8H,Q*>V7*]/".?@ZQK%0=5NM0D4-L3D8E0#, M2I.XI5#9$!)UMM("RN2/H9>G_XR /CK$/1X<_AGL!\B87Y;4:#'@=#<3(%F8*-YE&D ]Z40#$OX)F MSL'0#B2*B#78=%:@F-BBEIF%7-$ZI5E*M>HZI1P"YAF+L>N45+6GLH9AD[-? MD,M!:" VK_48"_A%C.+FU_@,6'FZL[A>6AL= VRI)I*Y.<\*.M!;N;:!W'=T M;W5_>(?H*Z+182_BRXVZT]&DL@W6L@2-**W%WO"'DUF7>(" /19Y=EMMP1HI MI;K;8"B5]:!RTI(IUC%WF,E#P[1&FV3%+;,+#26HK*':I%$D35S!%&3%M\ MM$0O72E5=ZC(3X% 4(T8>[(_HF]"PEKS%_^4!Q-+H-A@LUB5=@Q=4GTG5 R4$TCKY\#<52*JV,KG M.165H7&>QO*WFUYAYKB$!?RXGMFWJ2M^5Y6KML'T4%MQY#@W^R"^VJ7O9Q3$@TC1XLI Y_4FNQ;R,=:D,!NZ$FW$]7]Q9 M"E*BZ">'JDR2C6Z3G[L;J;-]Y JAT_[PVHWWSDO+ZGF\HZS'BRG_U9IPVI;M M#2P44^?[[T-F^!Y[Y,[WVT\*JVW*=6K<;)ZTK.)JIMS.7N1JBRN9V9]5P%*Z MN_U3N>;4]9GENVUUX]MED6^&R:Q4&X8,(V+]!;NS_8!/ROI#\7<AZB M>O5U7UA2Q-BS-P"@^ H*OLZ*YY? G@/YE295:*6-_]" XRYTH4[=>[(T%9C^ M=5@BH\0T)*6;!;Z.D'K+03JFN'I%+W^?G/X=R3LIU-6'@5$)5OG\AFSZ]DYKV$E'97C,I4H"! MYQ^IBM4=^HARV6[P6]W@.$5K>RVE7 T&7K2FU0V@S;JV,J.SO792K (#3U32 M$>R&!'0))L+);+>%2#5@X E+6G+5'V_^/]2HC#(*RX-6/VN]L%V^"O)QA)!_ MZ=J,X2%V["@)&]V--"1T'"5H]>:R\HQEU*PEVK72#8N/5J)I*]'VQN:X2\G7 MF))EXMV<"\/5]+'K^($8Y/BFL"?RS*)^P"4/^%)X_EQW7I=)IBW, MZ]+,\$4B_@A9$4M_898MF.+%+9@J0STB"CSO/NY:$7\6BQD,BVQJ/ACNH\-O M7=#"[I;CH$UNQ,\EE+@]?U%PTF55A+:"W*YKD>?5-(NIQ5J<3 04I% MU'S/*]WR6X?D-EJ2EBY6$/!*SA-0X/P[X8-. ,5>W/A6X1Z,@!0XBNX'OR0# M!./:+1YC/UR5CZ@CN>-AQ4TVQ;8VIBL3;P2KJH?\DQKXF5 UO)I>0TVQQS5K M: 4+:9;K <4WZ"<:H.?)"IQ=EGI3[&@=:E$ZG&=MUG-O3YT1NLJ*9J2E?C&#H87HIC9WI>G%:!0N$9WOSZJ!!@UR7O?)E-C9%0 MHY6F&-XZU:-^9]N:4EJ95%\H3N+89]V\U4%)WBIN,;$4P;)%H]8O[KS97S>6 MC3$@,.= MBL#/2VZO6!<&)IZJ21X_6JIIQ8^VS8P*Y5Y;HDF/=XC]_P&\XR'F7X2(\[,_ MR)+22GQC)V+72K;,IJ8N-]@#V[J%.6Q&9\5'KY557+/_*&"GZ/BULFKF M]'<=W6=[?R4Y#9Q*%,B1.#(L>328/O 20EM@"CJ2&W*(6C1 12,8B[ESK)./FK)0E%3PMF'[CS:&F8EDE$;<^C9$3O627F4I%3WQT:.7ES@JW@; MF[1\VI)/#4A *ZL\VY'UI#30F5^A"6%XUDE+]B9*2C<*4AT9UY:U6;PG-!^F MHJ*-P$A;0 -S)XL2ENP&SB_="#2KR*B>-EEEQ#.[HDRL(YS?4*05X+3WLP&. M(-SR@9P(;3CM\*\!4-_@M[47G[/BAQ(+)OEOF%*_8$\$JMEC4Y,1LBJ!M0]^ M+W[9@#8IU^;*^J*L7EJR,P,V46H@ M4- QM>0U_=3KV8Y0<84>$G?VSE53OJ)&6J\AZ->3=^6W&I?WZAM,F=_S;FWF M]P/XRUT\V%:A1D.PK"JI^I0R;P;R92_4-OSS M/8W_X'4$L#!!0 ( !>( M;EAB0\$JLRL 'F< @ 5 :&1S;BTR,#(S,3(S,5]D968N>&UL[5WK<^,X MJOP/S.3#7:KB\6-V]W:G;BXEOR9.:48NR=Y-/FW1)"3AAB*T &E;]]<' M($6)%/'B"X#F7+6U8YL-H'_=C0;0 !I__:_75>0] TP@BC^].W]_]LX#<8!" M&"\^O4N3^D*Q(D78. G(/1>8++T'M!Z M[%X QC"+O$L-P 3SO_.S]C^_/WO_LG9S\+:OBTB>T"(J]K*Z+]^?%AZMM M;2C^Z'TX/?_A].+LX@?OXN/%3Q]_^.#=?RGHOE#.YE!%&,'XVT?VOR?:GD<1 MQN33NV62K#^>GKZ\O+Q_?<+1>X07M/#9A]."\%U.^?&5P KURX>"]OST?[^, M9\$2K/P3&)/$CX-]*58-K]SY+[_\0D2&/C1.X\U]3B]J_"W3$."X@0$R_ 9Q:@"WNN6>!7*/T1K@9',?,7[BD)G5FIG;CI.;J# _(6T'L?3;OBGA MC,(0,M?N1W?Q'.%5YN>'D(*\H9[AC@$=)4C?V'1J[1G('9T)K<"#_PK(% 0H M#F $LP;W_6H4)*D?49(I=:\/Z)'< NI5_8BYVS1!>,/^W@%U[RST+*+/"(4O M=,Y'C>TNIL/] CY%8$0('3<+_B9T[,2''SN(I'.3?8\%2X23!X!7E*$QBA?L MQVOPU'OG;M=.SV"IA%@D]C%&+P"_4TN>LVR-,-[5QQH\V?Y"-73^\\GY^J_5V9W1)><)!^@1.=F+HD5UN M[26FJ8'0<3/O;O&W;1N,KZ[=MHP ,+H0A+N_PH0UL"_NE V0D&EXHB%4!%N[;?87_9N:_N'WZLSSC'TG^CB+-F,GDB"_6#74>GL%$2? MWC4LM<6N7>K4//Z""SH3OTHQ"Y(JH(L+_'XNP"TO8@'T* @PG=>4^*)C;+;> M+/U)@%^KK% 4VJ4K4MEWW!&NRH%;YUU/.V-UD3.]UU2(=XW_YY9>S,^_$V]=, M?RDJ]VCM7EZ]Q^HOAOY="^:[X'Z/+?))L:7&>!-T.R&]T-U+2UAP.F4VKBLS M^P.H=4(A1CYI5Y>A(VND8J*C@Q"NVH1.0L)UV4?PN=V/31TM@X#@_0(]GX8 MYD9!?]C; OWE]S%8^-%-G+#99]W>.10U[0MH!N<\;XYKNX>?N3P?$K2U4[F, M$+\Q8_;(Y8Y9((^KWNRNDP_.SS"P*".*LWT"#3_,*Z/VQ:)2%M ?L")UR5Q: M(5HA=6^.62%\I,&+/?_,9[[LHX5,]]]="$Y*QD)_VQL*_>7W>XS"-$@F> ;P M,PP IV>(R&KF(2,T"X=-Z;<,$*[=2VEEP/C4;>U>0[1(HWECIB[FEUFWDD^K M@\$5!B%,;OT@CXN)1X ZH7AZRB6U#DX^^^:0:@+LS]%+98S4[1MW[CR&*[-N M :-63?XQ3DGJ1Q-\%\\Q^".E0\T=':(DMB\I(;0111EW<$N[A;1,4^S]=10] MA: &'!GO.E((Y3ZD9-WX[&CJQPO1E&CWC3M=J'PUR>V72LCQD-_\JYCC_?:!"W%:,SEQ);Q73E@!V[$Q04!]3D\\W+*23?+C;--:+$B+*6XR'X6YF7$'#AFI$+N(N&L?:ZL9 MI&;->'=KB*7< 448[(9:TR>23]ENGNG_% .7@%H<7A73NX%5.EP)Z9O@[3'( MJA0^TN3$?(A5Q'JY?TA9-KZ$^.+_'>%\:QI@WKC#)^).T?EDAH!\]5?4[518 M$(96A;1<6%+J+NL0J5B11N-&ER<\;HMUBI1+UU8MER .EBL?RXX[J(HU6;_4 M"CHAAH*I9BN9@V(-Q% O.,":1J0CV<*&PYD+JYL#*-(E#@>"\8%DM[TXH[SY M&"+!6,*EX_I=(:4I1-MF'V.R!D&6MD,XH@AI^242,E[N(C.%.7:-VU9O]Y?>;US7,5S'W@,[R0HZY"^EJRI=2#L8RUW E ME'IL=S=7';DA9>O&C%3"+K-/!9MVMQ:*M#8:2P$NK3C,+J)V :5\2X%/K8^T MQ^T$A5Z7@'UFKTYCG7VB^-1H5 MAGX,5BPX)&G1[$&\0Q9WQ_%XK%F=?.S2@%UN=CDULAN6DDF(M(QPB%:6LHF^ M=+7\"_#9[>MP$D]!D&+,TI_Y!)+'&#T1@)_9Q?2[>)TFU724AZBDTYO!VU5K M8$93$N61%A M%U$5<@BZZH> +M=391&6WED7Z.DV.+T MRKHD#W4'5)=L+H^>NV CE:'&_)GOBCJ *CU2#XC5+EE^D:-X$$72#T7D0F.3 M%7 $KK2CB0LT@MQ?M]+0 -+EQ7@7$C-?[C=RIAW8"MV=#M+H,9(2BGU"81EW M<&MLCPK*-,7>]T:I2B&UW5()1Y:V3 40ZONF$M;M!HD8+KJP? :U!RBB61UNR6G/'SOJ+@\.-:NEC;Q$]70.W+12,^K$L_F@3!.0E1!- M+4OB^8#N 68OK]PBG"7L),IU M8B]U"TV_M]J/2^K*U6@O=0\A]7Y7M'T;%QH HW&WU9-0R@ZM-V%8/G]3O.[" M'M9BF;V^HABLUA': % D^7J@F A%DH7'9^EZ'4& I0=UNE0J.>?2M=HC$'#! MLN*$4)=*>Q-PO=KNYXUZLAS4)RH+YY>ZB:%ZT*DK?'NWX3X#M,#^>LG>WE7= MB#NDE=^*XU&;0@<6AQR(;\:):/GH9-2]W(R3"!EI\&#G=ER=Z=T-.1FS=C>A M(C]FJR'9;E.)1+R-ZA1T4B;1;Z!5N+9;^NE%#[:$V/!KO M=GJ@RMU1'XS5;GI33/^R%SM?8LKC$JZ9+[F93>[WK[#0Q2_[HZ37MJA):*TM MZW).?NQ?::_6+=Y24M4*NO;L;AI&[9@VWM5;H:QD_6^ SFK?9VYH,B_%J22] MFTLKM$HAM8UDD7LNMDM>?_^7TFJ72#,C-JQ%*)D6]73MMBK5H4[<&>^? CB5 M]].:P[#:$7_U,62'D*=TF2KI@X=D0B/C$5J&)1T%ZX1:T/H;V2221:JVC7> M.K-EV^$CEC?1X,&[^ M/*;+'4#&K/'X]0.#,9G392!\AF$JC%USZ;B172&E+42_P60Y!5%V4(M-=!_0 MC?A]O18UZ$E!74>7J+=*/:@U5T;CX (810R\!?L#)#,I3J%+SJH*Z6JV(J4< MC&5Q,A,^I1[;/24S4<@-*5LWF\R$S^XNF8F8366?W!TKYD9?>B6$I@# @9!103 M@:I[8GQJ\9TI,;TC6-F/&,@7H\IRC?#72G:^.J94"FK(D?D+9"((E?MC.JS; M?7#IQ<>A8M>^0B..?Q]263V(*7"JU&O6/&G&^)[[.-0ZS#)$4QJ'-OMMK/.# M3@++X)[,[)=U\P\^5;'RCU_VB_' ,_SU]$!/8_IK]H'S]RV>BCA>7E[>+].0 MT*$>!,OW 5J=9M+8G:*CDP""(AC27\/RW5=R3YF/DR5(V/&Y=Q7C *\)2Q$< M'DCP[.S\[$?OQ-O537\N5^]MZ_?R!KP_5YKXCW<6G$?!Z0.+LHNZ_0&1#2>W MTQ:[3C699[O1LI/Z8OKF_5^[ARUI21RD3^!DU]?*!LWS)GP%5)R)&,J!/[#Q M@DR))^G0P2,<4!,E7[=M3%,-(ONJ/!;#P6)?%?=XNWS)^))N__-)AU1')J63 MU;8EN2[$-E7-4\+#8%\-,X A(*,&VI"6,*Z4BRY*D4)Q0#>[J_ATA<)>Z58. M'R7" 37A1Y&V@ZJQSATKMJ/)X821,A F'P,V%WI-;J*,]-,[DM\6V'^/$)VR M?7J7X-3.:%^U'SI)FN ,69CEPKL'.)M8:CDW<6%7>I:>9G51K3',,O1GAF2_ MQU79'L,_4C83IOSD'P"=#&< M'0I*VY,*^[DGA3D_ MB-5XE8Y@0FKC"OJE5P4Y.G;5^%0/7/(BY@-19[WJJ=F897:'8_?'(IBS1%&X MN\JINQ,MLNQ;\-#-B3CCMR\TK4"),*X38MZCFOKJ 7 XU!U;J,] MZ%I:T7'M/K5!V+.V^?<[1^'?4Y)D\9D'))BMYD]7//BO-_,Y"));BI]_X//T1PF8T0D+XWN"(YL&[#,NKU-OWU&QUFZ6OEX,YG/(+6).0S8,YA!@-(X M8?X*13" @%RSL%BT!R3;^/OA[/SLW#OQ]FVP7<"\F6RG;]^0MV_)*YKR_KQM MK,U%)_Y45@J-M]&G7O@D'Q3OK'&KE]#-55W."3H[/NR M&GO[/,BZZBJ7<&A#4,,0I7HJPW) 3W2(I4LM7&-3OD6H*N7*AJ&&&5:4I<(U MD,(4>=CRI_*VO/&..HB(+'FYB\Y>3@3(COS9'>S)O,*/,..=A-8!)R:WID+R M$@Q#A=V^HJ(EKN,1T-AV,UK&L8M\U?D?2IJ3&*C%R2&RO0_73)X< (ZMZ#AS MA4L0!TNZ)I#=SU<7L^38/W1V[/H07=1>P6&SB6RMF ,#05,+E>ON$*!]W4W! M,XA3P'8.BCQF+'V:U"LV+&M[\&EJIM7S/EH0[>MQZU+(% 0 /C-O(C\N)R2W M/;1UT988E7T%[;;JMA=DDHUD8!,16QK.?NAM.!,! MW!FB*"> )#"X8D:&-U*_)J!U90A2&5GE@0$^%/OZR#8R1G'(TDM'_Y-B2$*8 M/1TCST^C*N7*P--$1TI0=N(P4Y8]3Q#^*GVS-)K\V'DT.84Q<0NN("Y'9U('T>2CL3UZ^^+&?9Y;=\B:=M BI M7? _2LLJSU2$2(8*K4M[[5AP1ZE123N7EEJ VP7B=3S9D5YK^IHRF$YPE6J;5^O[3M3?>F[O03,7+.)HN*1KZ+E/+I=NQ.E)K=]\ZF+ MRJ3 ;&OB,KLZ[L>;$2F;UG]O0HSF48HP+8B?4$Q8@IMTE?'64'OMFK!]W6D@ MC;<3ANMG'O90S@5S)GD1VY>;.LZ:Y. <4]YGA,(7&$5WU PASD[UBZ\CB(AM M7U;JJ# 1+"/>^&I#:2BH:SK')C#AW1>2T-F^X-/%+_(1F1'Z]@C$ \ KKK K MWZW?O.DDY0H4Q[R/XE3*71Q$*?DWF%=M/#*83:",= M; IB\.)'HOY5^6Q>"_U$2>I('.M=DS5@DY!XP8:S*Q_CS1QA]MJ8:'R7%3"O MI7[B(CK8'--;\? JV[JGW38A;&BL+B!$IT9T2IK79#\1CT8@'5-IGM:"+OEV MAS*F?@*8TX9Q2H%OK9.N\@2:;5*!>07W$Q]I@]4Q/==LL[$/;E2#>4WW$Q=I M!=8Q58\HS!!&*3/4&0A2RAJ%>_/*YEP@S.=DJW6:9)8ZF1>)%HOL_Z,5$Y3 M"'JJV[QY]!M)Z4D,CAG./LPPF8\1-746"V7;HU3CCQH4/"B0IQD#/R)^+A+2N=$E)TCP0$* Y@!+=] MN;2T+?:<'U YK;XL;WW;RM[.LS7-7M]-;6_'W-Z.N:E3)#'F%._W5FB.[DC; M ?_VA:YSHM#V.4+.1?)&0N_]]&!WH6?^,C]K1=AXP:9+M6E332T- M:[&<,;T=Z&H0O-T0=*3G$__9MDP$EYMZ,9PA=D\,+#FHGZ,3M61S'[&U1ARR ME/3K[$1TL/]8SW14U_Z>W9G5[?AQZH*B]NM8 T?[]J[6T MF,TER"Q8@C"-@$1HTL>RM(O;F4;Q65(FU=,JZ=:BI*DB#^9B:KCV)PMB8*JL M>UHE'5B]M+!<+3VZE8UO3-V?=)I=)K"]L&EA?&65E*&X(?F[%1V-GO.Q2:D% M'K$KLZ$.&N'!LJ^=RQ1&;.XEUV;&QVU<0C''2UH]Q-9 =OW+'K2CIO] M90="JIX:E>V+%!UU4L-C7Q'[3:I'=K9UF[5^#'RZAI0GLM(H:/L61$=UZ4"T MK\%?P1(&D4);AT2VKRQTU,PA'/M:R#?V =9S;$)JVS<3.NI%B,N^@FY33&69 M8I8UZ!:^LI_D7496P/8UAHYJDD&SKZG,P;+7*_67.[(2UF]#=%WTR,#9UQ;; MJ4AP?G_W+J88%]28Y.J2%[%^R:&S#Y2A&_I:%E_R?!+K%QE:2IJ/YBWCF_*= M@RX!Y[?4;V^IW^R?4W$]]=L7_U4NTNIWV_%8E4BKW-J?; C=U5AQS$2GH-V3 M)?K0*J>"M#WYD1X?$<+ZC*7/$$H+V>YVW72N0N?8]8%1$.29?D!X#=88!/G! M)_IS!#*IQ^%HQ0[%_"/[NQ"=* [96_7.;\=(K:(_.3AF/T).ZV^7ZQ5Q?F.G M7>]W\:5Q(;./!,S3: SGHM-)6B6=WPYJI\DR1*?/[^W?/+Z+YPBOMAZGV4&] MBZ8']?:M>J5FWX[B#?H^Q_X1Y2(WF.H1%4&)[^?HG12F?=\K8$_C<15A&0=B M*@VL4D-7[ARLNT(DF LQ_+.%&,K+)8%N MJR3''3ZH8G%A?IF?J.EA,OE3_;IY7K>;L\8QNZ:3H[\&), PD[QLHB@MXJ5%W1EXME:UW)XC@6OJ\QNW8A >P):5[:46BA,@,B%]<(NS2(@A\D4BG15 MHR!)_6B;B?$!/9);$++1@0TK*365#?M[L\7%7^J1ZIP1+V&%>[Q%5^QA0C]ZAH:3F4$3R^G[WWMOQYI& P)[&Y/!'G-I0M492EK,U]C_,) M<,%PJZF_:2:\BB'_0O&24[[]'!K)HVY$KPS;*Q-16;D?>VVC)^1V>!F+T&G>?"O$(A M& 7)&*Y@_JC"]NG* RLSTZ0KY\H'L#CQ_%(9V9T]&->:9\3"M.3V0.ZO!CL],2/]<3 M\!<-9Q?ZX*YVS\^JIP3[DQ*(,<"A<>..WRW3 >#L4DMXM/W4%-A+DB9FZ MW'SQ_X[P5435(#DYT:@&MXY3-%=N)9]>$^#V/;J$W3VS7_V5/#%_XUH<.IS1 MPM8U]QA9Y M&YO,4MXR-WY_F1L=3S/8,'.CD32#1YX,LV'F1B/),/M9F QBB\+RY,M5+T&E@!VBVI%;%+E]G1U#C!?OQ&CSUD,[Q_*Q^239K[22A;60;/ZS!_+>0 M-CE,8A[^P0D1;-Z>C4X!&]D%J.E-YE<84)'=^FP[4GJ554SNQNZ+OEHJJ02$ MJ.S[1!YO8]95L'0O15W,@:"(KA&J=%4%-M0Q*69&8^3S+T9R*6Q'29K:T.X< MTB&0H43Z&X@B6Q M BZ9;=?6ESGN-,1%:=_7C4&2 %RLW14O@?-(;7NV/A4E1SIT-$TZSD@I7=FP MTW)5(A!#B?>>!9;T92PE=V4'34O04B3V/<^O/H9LP<1N@$G6@G4R2RO!'SA^ MI_%*L([&+45(5X$\0H?6@"*#$LE_Z/5?-N" 'A<4XJ K;W;&Y]MOA=&R=25?! 0 AN:5"8$!(@42@ M5 F][<-5[34H >68NO)3+#O^J*LGB9]M\XQ6[.T]Z3$?63';QTTZ=#\E-L=T M6%T=7OH$DMD: S^I/D8C*>0/(B6["]C;;.3^ MPC M*B&2O=P!:H_VM*S#]HL"+>=#S8$:T2%OE+Y"SW3^'2?4@5G!7N3^'21FRG\#=J M"U))&#&3+4>CQ0*#!1TX'N,0^R\Q"[NJE*]=U':J_I8JU<9G1%&W\!6$5TL? M+P!AAH7I<#%E"4[XT3@AL?E8W%DOVI! ,B+_/ O:+<(E1I1ZT"AD7A_]!'5#V0;2H(R8W+SB>HO&B$$YIZS<2TSF]%\6H65N0N$E#VC- MJZG' L7D7,Z*AM3]C:4*M(I+V)>8YUC*GK +(3![OT-^^?F-0#LW2ZRO(W0 M"U25W M#H&T1.J8KGE3JWQ"!8.MS0KBV*UJ,*_GSG&15C@=T_(4K',.R61>!BQ0J9C< M_+Y\YTB*&I1CRBJGK-LB/]LB\K;R(>:5U#K?H 7-,<8\QR<]E2;K6 8UY MU?066#E 8B8@F??@VK6-6RH ^ QB4'L!0;^8>55TCH_H@W.LIU1.QM%_15.+ M&IEY)?5W,J4&QC&E5!,%0 M'M3Q(T[_TBYE7DM#G#KA8W.Z]]'U8Y-H,; 7++[H'"U18G+AU8_]TIZMZ_.G M[A> 3D8!^8KB*[; C]A!M/W[]=DSG_SBO/_M>:C=[ "0HMTR_T\9/@EWK M'BJ:]Z*L?:MOOH\1(15)R=YW%Q'WF"B&"2?9C%D9UB7JM]@D=&X\^:$GV5(* M&!Z4X3+Q5%OC7E"34CIP/4UI*D+A#GTY[9)2QE.4+L 8I9! /_;%=Z$DQ+8O MIFG8RD[&$AB#W3=>^JNU#Q?Q742)$>2_/2TG=>+VBJ:(A2","?B"S1%R'AO( MFE/*B2LG;<7.P6-D\:8I; M,.)*)G'"KB\?MBZ6NZ* $U1, M%UJ;["K>UXU2S$):-P[VZTI9"&.P)R 1"@/JI^9C_QOX"E[^A_HN(,E4+Z=W MXU"^IK#E4.R'WVL1M;$@:XE. 3L92_2A5+^[L!UY*K\WQ2 MV[&;EEKD8C%SZ;;:='XD[AJ0 ,.L,>Z"2UG&=BRGF1HT03FVY5C=JZ*<@YB( MMF<$M+;C/>UZBP","_N,LZ6/P27EBATF9GSE_;G1-N)%?1LQJ_;DB=7K!:6* MK>X/SH(E"-,(3.8WJW6$-@#, 'Z&@4 (HRC:SC$F\RD(T"*&_\A.6]!NEAT( ME&TO#M26C>.A+SX.%4G+#VC1'RMS#@_3E ,;M-)N4'V\80@).&!$"0J^C=9K# *809JR#)!D M-IK.N"O)!N5L;PV;Z"<5$U&+Q+Z^"Q@2=U\EL>3M!>L88]Z^*@1W]"9UTPX[ M6)[=\>0]]+F7AQ?TL$0I\6/V^NN P&A*_$7A; %W-MY2V'*9I&"-RQ*WRQ-HP36//@TZ@"]1=5P.T'M MJP,S):XQ561IU]"WR?R$\CSX;GO:(S" 0J 'W%H2:9[)72S2ZG?;$Q652*O< MVE\SY4/$71R"5Q ^()8Z V!R\T?*\H;*0YYZ12TY=<&H:6QMK"<<]_4O74OK M%G9@Y&AC[TWTZ4ZT,:0'J.V:%R MIU*Z4?DK(.P44BY.T3'%?IMP)6!H8N#L57#?B^'ETT[RF1*R5W>DB<7[;L3V MG<5C,#Z!Z%PTOR,S1K6$ MF(.V9/OJ\-$.\%OYN6B-;<:-+<9?L[[Y-64JF\PS4JDY]MZ4[5O6QS#&2P7H MHD%VZ'2EYX#OX@3#F,#@5S]*I5//8=JS?B']B'RE1(QFDA!TY'_WG&*5^]WL MY3WWQ-?PC5J_KF_ !DW)\COSE#>O=*$'"=C-4+*YM1&GJ=>T]>P'1^0_]23J MH@6WF=#<^A!GD$:$I*M" FL0T([*$A%+ ^T#-6C]\<5CF(EJR-'MX7X?'&,O M6S,X7WS\#23W&-9V& =MR?J3D0W2,)1_FSPZ6N\D@I[UBJ M -I5:./Q8M>?MNNYK*X\4C9*LO@#RQ-RN7DDE/@R\H-OLV!)>2#;D_I4%/3# M%Q2"J&D"@@M^ H*, Z\,AWXJ$'E;2%X)D\= >3#V2K \ALO+@'EHGM?LY37G MX#P_\3)X'L/G/6V\#*&703S98O1RD-X6I9?!?$N'X$8ZA*.^P6$K[<';#8[O M[P:'X]<-&M[@,'+=X,@OQ32\P6'D4LS;*>*W4\3?U2GBULL&V1+UFAUDI!-B M]A)8WZ$Q_79M.ZQC"(OI2]/%F%A?B*>0?+O% )1?L#-AM_QV_XF.11N0YO=L MMT5/_15%M!KV#+=ICWO8\MNAZG[EZ:+UONU$'.<9;%L;$=8"Q+-TM?+Q9C(? M!0F=RR2;6X3+9QZS^ZKA8TR5PXKY\6;&/+2-]\*,.R]E[&6T6Q[_1+R,R[<(K1L1V@92.Y8$AK;3U;XE M,/P^$Q@>78ZO=ND(S>;X>@M)OH4DWT*2_#.R4Q1%=-+'/@Y_KKG2V%OPL;,( M75S[]@,SOULPO$46[;@R;@[;LP>RR4*(WYDY4N'- 60I)8:^^\YMR17_>#PF MR16C:T:9I0W. A?7*=XEC(LF8>C?,:.(G',)?52N(Y.&M<]*?LC/3HB238#Y(AKJXU9L$5)^CL MV@OW._*8F_N'7*/+6;:]<;/J1@=8SV;"]/CH: MP^]=\M];#ZA=>;5A_PV9L#V+^6ZLOZ'7DTUM^WX-L>9=K^F?V/'?KYV_\#4$L#!!0 ( !>(;EB@;XZRN'( +:F M!@ 5 :&1S;BTR,#(S,3(S,5]L86(N>&UL[;UIDE9254YNV5N8*9TC>Z>$>Y>ZAHW[]$"3]"N?E M)QBU:U993U( (, 0) $@7_[[V_;F+S0+(_2Y-^_^OC-=U\1FJS3,$J>_OVK M?;$Y^<-7__U/_^6?_NW_.#GY7Y_NKDF8KO=;FA1DG=&@H"%YC8IG\I#N=D%" M/M,LB^*8?,JB\(D2\O&[;W[WS7??_(&;R 881\FO/\#_/;+Q M"),PR?_]J^>BV/WP[;>OKZ_?O#UF\3=I]L20O_O-MR7@5P+RA[<\:D&__J:$ M_?CM__I\?;]^IMO@)$KR(DC6-1:04>%]_.,?__@M_Y2!YM$/.<>_3M=!P>?< MRA?10L!O)R78"?SIY./W)[_Y^,U;'I9\==BR",\^#8L*H0G\NV_%AU_]Z9\( M$7.-_1?_\JC[:[&.CQOSUG=*,>/LZR;P'_VX0^P7^#__Y1_O@X>:?P5 3I8UYDP;HH*7$9_OTKQ>??MO@!L-.LS520K4LR[$>+G!+BVW7* M%'Q7G,1B.@7Z)DNW2B;D<*GBP[_&C[&*RQ:+&Z^1&C,_UF M$.#6:'+RT_U7?SHO7=E%4D3%.[E*-FFVY5;Y;]_6!.?^JDLV'AA%A23MCW&^ M:!6+Y??<_&SQK[D[N/Y;!AB,[_4T2?9!?$=W:::R9#48[O>L8OGP^V["H'WO M72;TW[^ )0(8Q<"S(,DC<"]69>B"(AN^AO6.$SB PW,(2D8,SJ&"1U206YI% M:7B1A.S M--3KA04+4TV-+I5 MU13@R23,B"1"@L+RB/01O5R%;[*)- M)$ZC+.N-%AY3N2Q"M-5* XRD4$9N=*K$D$@;"VW%.@U#-BFY_.^=]65[[W1 ME>^'Z,K#:XJF*V?LQYOL(7U-;%(V(3W0DR[C2BVIP7!UY) /JX8 D0O@(*F M'3R&NLENL_0E2M;ZN%@'[H&>:$10*LL!+*[&*)FQJDT5]99X:+ISF^9%$/\_ MTZ W2O:56M."Q-49!2M6C1$XA"$MOD,"'W>:T4"C(>V/D>Y?%2Q6 MUZ^-SY:_?>T,WOFF^1(",(M_L9!Y$=\^IXG^=+4+@O,%ZU@MO^3#SQ?_HM4, M=+YL#D8X',)>]9ZN]QE3MX_?/SY$1:RRYBX(SA>N8[7\P@\_7_P+5S/0^<+Y M9R3=D(_??WC\FI182W[K#UD 26SW[]O'5"7)P>2R?++;GVX^#>M&+W[ M-0L8(H P;/KB;?W,.**:&Q,U&*YMJU@^M.\F#)J-=YGH*$ )2DI8I!N3GVD< M_\^$[4;O:9"S52:\RO.]X2!;"X\9W%N$:,?W&F"D$-_(C2[*!Z237P&+E&A$ MX"VO0'].XWU2!!F_* MZ'E0!)(QPY6R&ASWMMXDPN$UO0H6[7Y>SXS^8K["@3ROH%0EG'RO["PHZ%.: MO6ME/(#"SOKJ,-Q-_*I $'._#G@PI7]EI(1=7@7NMT$V(+V(]9^EH\GZ7;79#HO8$&&E,E MC *T54,)BJ0B!EYTJE*B$(%#)-*2.G.UWF2G^S!B=$Z+@N8%SP>ZC(,GA: F M8!R-L;-?*HP>KL\L[(C%( X4 #L8[@\LHN2^VQ466I=E9RL*= MM4%K7)!P7R#8Q3E\CJ#'0'N;8&-)_U"!80;).@IB<;\N7C0"&5+3(;\ I?\7 M(:)YIG%L6\7:0*CQC(+=@W"F 8$5S718T 8S (FQ+HGQ;_>/<;2^C-- OP%N MP6!^]0IFV]]\ P#IB^]PH/O>!2#AD B'9^EV"_GQZ?K7^^> 3+ZX)B],[77L$L'I[*$%ESE=OZ%.F;[3)8?:_U1\M_JX=C M=[]3N?E8^G)6CGL99=NK4,]Y^3GJM]IF\N![%1]B?;/-T;7?+0"1JW.$K[^347E)DVYQ'ZHR^O4$-% MQ?K@+:IQ_1GK+F)IDJ=Q%/*:L)^"& JMPFDV+7S1OX?@L?.21 ?D@4ZUV%5J M#X? U9,&"]U,\^INZQ<.-N%=UB@]N(X2>L5^/%RZ3( >Z$.';:5.5%"X>G' MADDW )1P6+V"3,+X"\T>TYQ>3\H_KDZ?YCGSKY95]! (3Y?5[#;UN V!HL,J M%KHG.QR(_%*"S:RZ!-P0D0QEAZ<=16/(9$@"0G_H8&^(D%!2@J$DT"/6%9KZ$P8WY'UY1QQ/8;7VBA?LOCAH*XS#B(TEIM#/ XBXZ5H>[:(U%( MC;,B#&M5+D-M&^N (9F:A@^%!@,D%$2FS:4>W?1Z\E\$;XV5 U?);S.Z"Z+P MXFU'DYRRJ/ZF>*99:\^L$=L)$\\(>@C6- H'-!0C<>:KHW02DTA4OOGBR$1@ MKZPOX)&ERV&5-X>5UD-*_,-)XZ'DLMM :_CC MPCCGTROUO6))2'^W?)C9"OT@DN'L[NQ?"YT M@E PIB*VR1-+/K/MB[=UO(?C7(LIN:%BGC&XB]8^=+#C(9U"N#*FV-:7J-66 MBF&3#Q4^*0E\O4P :C^QF$+60,K:66:#+=3D^_O$CY:&&. -6V,#* ]X38.< MWD5/S\7-YJ=:$(0J# M0U^-ALC%H:!D^CZ7MH1L*_5QRQ>FC,9C"@TLHFV8F&_9A H0QQ;TG'1MH'%> M1VIHY&6DOP0^G&,(AHU',_@';_H3-\2C-LL9FS]':\8S-1_R6*^CX#&*HR*B M.=O[\U(KSVD<,H.# M*9?N(AUD7.X$(KJ!9'L:ME='OL-I_$D_ RZXJ$;C+MR!^=@1L0S)E3.520$N M.8QEQ(:V\5<_CG:G$-601]-8I+!W>B,$]> F]6*[B]-W2N\H/S/O1@T:L1WP M\%R'LU!-MV%%0G$9CEQUWVI(O)-,(+8]A"_+\%#I2@_!5F$V%+()7:?)TP/- MMN?TT?)42PF)N%O3,][:IG7!!Y$&>CY8K>ZY/A;KR*.UAH'!U=!P#XG*.H7<"T[PR+;XY MM+H%'; ?6T2S U!#HF\4>VB.V"O6R;+=7:,GD70?\>[WC\7\/#M8]L O)>1? M"D_M77>VPBNH=0'[X2K>V8AZK^S;6Z>Y1]DU]DV1)WMARR88>_?KLNWUPD;= MSOZ;>P[D(F_I=AL56UY *PG/T@068I;WV#O[KU73O2IYS,_1 M>R4"+F4QO05L2T$Y"G+JUFTF(S+.FZE"J!(2M5R+CO&#\BR'8%CE6-1\J(J3 MR!B9@WI2PG,(_[GH")J+CJ#!OGA.L^CO[(/?K;[[[COX[P=R3Z&\&#F%U9"Q M4?"'@KM#$O_UNV^^^TAV049>8&3RX;]^_.X[$D?,@D+1*5V@4.@"P4&^_E?% MN!]_QT?]5Y*D"251GL/5=)J1=(YFI4.#.]F$U5BLMP.&&\:I6#Z,W9HP: %; MEPEE4%-VL_7$]OIQKC89I3D((Q0F(:V!9W#5YO #^>WO5K_[[OO5;_[P'?^, M_?K]'_YE]?N/?R2,V@Z:Q[_0&/ET_S0,><^8(+X-HO J.0MV$=NT::93"XV8 M0FD6H)4TJ0;%29,T\=+-!:J@"8"3JX1(!.P4R*%B0!&QDR@A:XL8BQC!'2V" M**'A19!!T=S\M'Y@?TXWT3K2;7U<$/%,PUVLII78L5 ,QI6M[MMOB4A*3-) M)1(7?:$:+QZ5F+Z='CCO /TZ+7 [)?#D=,!ITRP?/)X6118][@M>2;M(V8(R M_SVO4[5V9[%\*L[N%]/6,WMG=L71O=>/2)6O9.UW%1HT+VZFC"+U>;6-?8=E M8&K(*VU_;KKZ"-:Y_O+T879U7GP6!WE^L^$UH!8-71/OD%0)%;=C8Y/T^W+"+5'<@H !%/X+1LM\[@.E XIW : M-JSZ(8"1-:1]"OZ9;A]IIA%4#>K+?4F;=?V%B8#SX,:DR8CURN07 8U=V6&0 M!/SX%GDIY7IGEJ$2,D:MX/'DCG MTYIP&V0W&8^%0GY7[AX<7(1>F1?U@V;>/J51(?IP=IB9LVZVC!T*U6VB3Q9W76[O2X M'EB>C3F;[<%[GSH'I":Q\N3F?C)II0&:,EY\LDGN5?+3*M7 :7JZ2+[8GTX< MO=4=8GA@:VJ6K*N;0",UGE7.WE MQB'Y%L]H^H@E+QQ).F%[D'/C M ?7#*HRA?WL1$0@K/[8Q@P3Q: /3X=^^>S&C>&0*EGV+"=X/H["']JJU8K'M M2K^'83U%\FVK(BK,53EDEL?Z6FC,]J9& =H=396@2$U,#;R8'^C+@HSU.WWL MYT\O--EKBZ#4'V,^96JSV'ZP)#Y#>I;4'%SQ.D=\C!P,C.5RH14_+VXVDA>M MVV[!8*[I"F;;BW@# &G5[G"@<$LY+RXFH=!C5G>.\R#&5M@?LS3/;[-THWT? MVH+ 4U8%HTU5;7R,HJB=\;LMY@&""!#DMR"NS.[,S"Y;NO="=IFQ!(<&> ]* M]>J$4);H/03&+&H$&+ ':1F?_)_QR75J]"K>A_R85!P>;+\ 8"_]D7+>_ O>OD@ZSD%PR MS1/]6O9,&+D/29/\$]VD&:V:=]+\XHV%7FD61DF0O5\5=)M#A,8PV;S%?![$ MHJ5=^68<$3MU:]:)[*9_S3(<8@K9C/(H8JO&^0"!+Y/4PY)Z7/+(!VZT#N8- M@UM#D7(L9)^$-HMRCNK^P]@GK)^ (-GL4IF MFW;: IC-.JV:K6!#V57>LI];2H,G8G<1?2U;%I2/43\%>;36R*6!Q=-?(_-- M/58"HJPV!DZZ+KKL>5$]9EX1#H^NX7VDJ#6=L)B.K.5#'$ C)Q9Y4$S@/(KW MA?:UIA;:'S,X$,!D"!+4"U-H\>)D#!+#.W,P2V(V")M,BYC$SS1Z>F9A% ,;4!'';4MJ1!)!$BJ/!2Y9TG MHHLL5-8KJTG%#J38226VK#K0>$QJ7="6\DC+2'Y"'O&7;XVHTH^Z/C_O3<4[ M?V43V,%CZ4CXY+/,/([U6HM$%$/]UE#1'3V7+]$4CO2A#W%7]:A<=!8Z2[>[ M-($WYBX-?=0X'C3U,0FC;.RC0L!M[J/GJ+M1$9WZ:E@O>OP<"&!L\Z.!1=S@ MFIAO;6]5@#B;6STG5HWQI.E/H\J*L0F* LZ+,\5LN,"^OS3^[V?$LE=Q>27JD(HA^&CK5% );KSIIKIRYB+O=^Q'*K'Y\2C_ MFG?PE]-8.!&0MY9N(/8#B9NH.*3C5O95,<&)Y\"!L'/TFB2BXYQIUG& MX/@Y+OGT3IIPM\$[__/I:Y Q7R!'6E7VGY.K1'J*F3S!'\4,)?0)PMT!GJ#_ M1)UX[]WZRS30O4T7RH1YPOW71_8_[L/@+XWZ-_E#JCD-QNZ+N =1)E4 M1\.F(G^AAZ\!9AIC><\WZV2!4YQE@-G\99BR#3!C4U5G:T9)5.68]@FOV!HE MZXP&\-HAI.(GJ%% @OKL:L?&AC^MY8G/W%6OFRY]Q]B4CQ*+9_8C^Q_= M[N+TG=+2P%\3FN7/T4[ ?KBXO[G]^IMY'9YJF5OTZZJ'(0\I.3A8A*6L/"YM M/F/APQ$83RR-1+&$LC'1UK\E9_#B;4WSO*FCN=#;XPJ0^>Y _/DRS>YI]A*M MM17,>M+P+BPV"^NZZ>T0\"D8-G$X9+,K/X2W7R4QY"/C*037QH @9VZ3$W]# M.])@M42\LUB+N,Z;6*]MULAB+Z-MMZ8Z JOM)[J3V?ISYNP2B? )>#P,.^[H MW_91'A543HB8K#NZ3I\23H5[.^W-\MS#^E"==]XI51?YG6=,Y%K!@3.^]9A>,W:0<>F08GKDW 3!; MCQ^RV>XR7GZ*U%"\/;SRK6"K[,L*?HWW/&G]%FIEP_EV4631X[X('F,*]H=2 MZ<7AL-=)6A\>Q5=IWS>;LR!_OHS35UOW%3.*!TGX!E&4.?@*>-P4?"U#YG9] M=9\^B"^!!.$TT,N$ "O,(EZBD(:?WG]BSOTJJ6HIGZZ+Z(4M#-:N/T,(H18< M&2CV0562GE10-'W\D'H,:\Y=>D+L!=4_2G(/)DL\!G8 .F M*TYDZS*+044"N5YR*SZ$X"Y91S%ME8-Y2*>Q^WF&\F0+./'4:;=]$XV#O]6; M5!#;]JX:C'2B4_CX:#T5WHQFU8PF=6T0]G=>ZW[7G,I].94>>K]SNF."1'QK MRGZ.*?P W;#L/:/<4/&\4Q_1FM[&!0_%>[@SUM'=)NJ*5,BB09M/O:[-A6WG&9L3V^:=Y3@O=R8L-"7&9=Q*GM6 ;,7"67@>6C)W-8"=:HQ&! MAVXODX@5U6(%9K&6*:J[W051)HX/KM/DZ3IZH:$0Z#]H#)=3/^G[FKCA(A;< M[2-SX7446?@2Z6(F4P^4L,_UK5")Q20,9R3.,E*T! M 5\D(P1W/RI1XS08&="J?<1U^@HUFL[2O+C)V);YC@8QBPI8&, O-NO]KDKP M'LA(_J*W>)77<,;$\QT]631X$%F!G614O-TN4J9PKZ+HUIJ1)VG&3SBR:@3R M D.0H!H#3C_V6<:00Y$$53Q3\DZ##,OCC)T=CD]N-@0HD)N,'YK51$1&)JG) M8'J@:62U?=E1PEP53!'>I[N'XO-/CY=KT&M#K* <)$%IXK)0("T/=I;U$X1F#)1(IL9"C_0$"@8LH7];D9/T<9$_"F]9= M<=!/"P:(=1JSU8!G>L+W%);?4V#[GA .VBZCA#'*UA_PA6[';(JH'N"55[I,^=J8H(N MB_X@?JAT@$+XJ_!#L4*36,L5FNH\6-3EQFF D4M.:=GOU)WJ0.(5G]*PHD[& M5CR1Q7Z)TU\&WQ+*S^7ZUJ\1HA4+,VO 2:!VPH 1!2E7P($GQ16ZC%8\[I@X M3#+>$1D]H!SYK7C3,/%*%I8XEV4E&NE4\D6-)1.R#P'4YJ@]Q3SHE^J(C=5" MM1=[JBZ>HKI(20%J5=39@E61WX52!=VZE(X3^>P9:E+EO(@*O[KE"51Q%#Q& ML0_9?%T!R].=.[JFT0L)_:G8\S-\DIL4J.C;_9& MR/B0!2&MCADAV]8F%)*%76M&TH]4V4IR$:R#E,SN+=BOXGJ\[##@;_''">M MA\#*Z!DL?.5-/IQ7@C/A.#9IH*-M3L>)=WWX!?FV^+. /]LW3KQH?AN\]]V' MZBCXM,Q;!;7N2M7HGBSH%OY<[:X^6*8YD12P,_NGD)4__N1"U3O5;W<6^9#/ MA*10\+I."'Q='V3UWM";B7EFJ,[BNYTDF2CY8[Z.K/8\;9($Q4M209(T:'IX MYCMB*BJI=PVI RFUO)DYFB(UF@GK0^ 8BM*H3-D=V_,B--,5GT&^U1TM\EF_ ML@M>&BF535)(R$O+.:!W$=C!> Q6?C-C*9E]CK@ABU&=Q6( GFX?#6E)1 M);@WU53D:T H-+K^VS[**).:.9_B_99)4K!( [J&[Q1/ZH800'ROTEO,UNL5 M9VR9BROC8>6ZZ:595@]N:OG.TH1Q MOF=_JU_5#0N1>Q/WSIP'3H^#J?>D[),;&,1Z7Q=1OU.K1UF1>IS&D\\CB,2G MF;+#Z'Q3S9$_T7F6KBD-<^@Q5O8O@8?ST+V$-T71Q4=V/-2WXVY"'3P@-R-A MO2)WX4KUE)SC"<5K=J81N*)--/Z+\D'"@2O:M02,)';>Z;W#(^VJ">ZT3>_4 M.2.B]=Y#\"9?,.3Z_GT*-Z.Z"1]+$2G79)J)J/)0QI'#RU&9@F]#K1I>6S=* M8)D1MB#JE,BG,66#TD8E&[;,[1EYN*IIM2+EM4Y$T@L#3$6R"Q,L*M[_6722 MS&BQST1Q"MB\LJU[E+ %<"^V]A$\1%W+TDV VZ4.F,4S6Y);B)GH'O-WV1), MKI)!W,S V6<[AH:6:C/+=RA[=,*#LI*LI7NI*LC"K+,SY[0<3>O2\JCH9O.9 M9D\TNQ.FQBLBV!W\8"KX1YT]!5:==SJ20#WT[,6C_N23*:V@0R0A4=!CM:11 M]S__G$1X1=$/$!>_[$V[CS0;&LH_>&(Z\D143? M#5DXT^^(^!);8T-).XY/@,"Q'#DTL="LSL=7CT(&7L2Z6L2^WFF]32,BK M5E?FA6M834?A8$YZ<#PCLHG0-!T=+(K!F)GI*%%[[0&$V9<>]\!OJ"QE%?<3 MNSTLLXJ.$03?G-WO)49?;!S'-=ZXJSK/K^.FNW+S\U;>760N;IVFVDQ>5=V> MX1HI, O_02[02Q!37L,A+[)H#5ME]L%I$K;_T( 4G;,/4_$OWF139/8#+ZQR MQQSVQ69#M7?Y2S.!YRQPIKOI<);E ,5I88BH] (KX?H:U%>D'EA\")=[AW]K M(0B&B.+AW8I4;)&2+P*,$<$9LB/UXFNHIBU*Q#43S#?_@=:#';$+GF/NC]9! M3N[OCL]]S>N-YO4HHD;!16+I5LTFS++VHMJ:/.V(BUF_L)V"KF M[(:*4]VY#V_=4LD-;.&: )\T"/C3P'I"2<,H7\=IOL]HE2O#,V6BFAQZ?4HV M'\SAW 91R+;/FBGI0&%6#U RW"X+T )!>N^OX$$1X@HH F KZ&F%?CGAQKAX MVPMUL&3)(EFD"#*H(DD!6[$;I4+,NMT%1"V.H6'[H/#% 11640LE&[IR+&6- M&7]TW9'_6MV%@M?%9;#WG[Q&,J]?%T8%6V?R*]GX[].^^)(6?Z'L0]S"I44Q;R;^*0D0![W!6$DR#L5:PMR2#52UNJM;NOA M*MAAO _%$[K#DB^-^HQ\' 8>.]3 6:9'FJA9PY;-VS2.UO::$B8$Q/YH5C%: MW=&TT#B]T2SL*.+Z[3;(WB&.OX^>DF@3K>'=>$V'E(20]];7]MWEX,PJ>N;F(TC0R$SR*:=D9ZK:!9RBBG[0G:O29!L WQ#Q7R6Y?Y+4L M-H?>DX8'BM9'6*7FN1# 545W#@VZ21I4>+#;_%V0A3LB"'YYT@J#^)(F6?4' MKY:%::<&.Q6VK#9K<_I*2,P$6"WC[=S7#AA2VJN&#_?&-3X\2;A.@R1G.V 6 M_@";90^"AG3NWGX@+3R5&R5\4RD'$4)1VQ&<*CKP,EHKPJFMB%3SJOM&@R2I M:?KE^*><#:_-O&P&]%[+8VW(:,# O*"P"M*^J=""(UU96/CQN8U3AW7;@F!& M\4J)C.[=!.^+&MG<4X7BK3,>(12Z<6@+9%J\K ,>ZKM.-Z$.GG6:D;!>=;IP MI;WZD;5+?2I=JA7)W3_W(^&A(CKZ[S[X?JFGNRNL-5514=A;GS^IX-Z9*._% M93N&.01"W XKV6WMH?RK:3#L[W9XT\ QHD+!-B^I% ,7$!G#8T+MX3"_[Q :KKN4NNZ!>R)SV\G;T M3"2T-YJC:I:.H420*K8/%K[E1-2KN M="DN9Z'QI]K!R*FQK9M3#X+^0F3BZ5*\*IEH!,R7*).*H&^3+4=9J3J#KQK) M0XT_-U;U%9'C+;B\6Q^7+36!1^.EH,ZD\[92!XSG-1P_C*1GA'TXJK9B.M6MRRW98UW!]+ M%7%;,,V$M+8/XTCB;#.FX%EC Z)C9-ET[33+H,KSUK/#HCDGP#V MB,33ZC[[%W<*J,%@7T$/(D%7=*PPL!]_BO8R)4K=U!22M9$?4#"AA$C\>/:6 MV5Y6,5KV=.WQF&(P.<2'%2.GH/7(8B MG <7HY@U*7C5S-BC56<^:2@X(NE3&Q.DYP767H7_Z^SR7ZH2/D&/46KL@P<\?!R"WHQV#U<;A6M#NKJ M6CN.SDN@)GP$^#RMQL#JCCY.6H$-K?!J_)4H)/9.?I'_XGN2"23]M,^CA.;H MYY1)SM@-.?]F)^*&@AEVVD5IQYEZ>*3 TL:0XDBM@8)G)TXGB..$\Z3XV\U& MMJ\+XJN$A0W<\TN[UTCNB.M!L3<7X91%WDR(N,7=[)R9BKJQ9:A")PU\#U>D MB25/-9*CKU9KQH58;>^B_->SC(91 3_IW8X> W6ML@ERL%3IP+%6*C,_*E]> M8Q 7!&!)'_QUJ &R%K+A=V/@'>P.FP(Z!;EN>'B]K=S%NZPCYT5$:U?G2-G M^K9CBKZ7WIK6'/)BO[R519O\G@YFE-L;Q\0NYEC'P)>/AQV,$EW M;-\>#+OII_FQL->+X&2R^U "2Q09K5U#1!I?ZTI]1WWVSF!"FIW379I'U=OC=^>;ZIX$D.ZK!XE9W5KWPL:[ MNQ[ YJ ;[+4-%W'.:[[3GE1J[%0S;&^_I M)3-A>,$ "7H_1\7SV3XOTBVD ;FLR'V)8#:0&2)NN[=,'PI(;6?ZLZA(X.)$ M",P?*+FJC9<(VA(L@2UBLE-_2C#]K<+,'*Q:>63@*U+0."PJ*D3CQ MU-&K$HLP-,+Q/+:982)*T]DQ >'!9YI4!Z'B@DZ(C6Q5/^7T9G.1%]$V*&BN MD?\0",]FU.PV3:0-@6(1*A8ZVL& (*NJ O-8_9WDJ3[G6@XI']B!TW871!GL MZ6\RMO%F&[ @OME )8_KZ(6&?0[]AY%"#+A&B-X*Q@;0P0G4!C/:]=H5*7*3 MD9(8F"HO L/IH=\4V*.\628DE9,0-R8!^R0CI\PPGL_9[BU.1>.FA#^3W[,Y MND\WQ:MSJ#B0%N:YQ@CAV\<; P@AG7(,YE2QXQ>T5J1!;27W_X(@*2EZ;.I3 M3LE9L(N*(([^SLR[Q&S.#C\803;Y+_3UM#HYO\W2A/VXIHV<;C=K[T\&S]"' MBMRT\;XT4,Q[&)/=MW/TE=1T2)N0U_?[$TT ]"F&6A>Z.M$'GHSCBEVTW MF\;Y[3U]$H4MTOK-$PWM*_=P@JA][4=.0WL-'TH-:2$?QZY*Y1L$(51M76:4 M1$F1DB99\LL#;\7MTWH^\0:Y-)06XVAP=RGX(\6K.HYSR*]S C\)7: MG,9@:HC5S,9-0*O,V3!2./7/QO!J- ?5*32GRB%RVBR M^>%DD%*J1HA<)58-H(&77C68V8XR,Z!]'&0D;"5;%<^4K 5EIK/\U\> X:V; MJ5BPT)5CD7"?0> ,D.]L@XV5?37=Q#2M_*R>BJH%0TW.GZ!HQBGHI0V^!#ZE MW%_2@N;7:9! %5KY/CUY:LR&<_ S@*(/ =#@B5 '0;W)(0=" _DU&D1)4+F>G>HMY1=F<[+13#^WX4#!!S?A+*C:+5C1D=V (W]& MK6Z\_JVI^!,!S"-TY/WKX,'O@KVP0'>QG-X">_H*>-1#6/],;+"<3H9\C^=5H3!U'"?K$X2/#N2\9> M9!!?. [@4_ORL:(EWD"NFD^92H+^V?9T\] T]FTI+_LY!I)D)RO3SWL.V);C M*ODD-N_WSY069W&0Y]$F6O.SIC['@L.IHI\2CIT0Q:'A4)(^G"&.X]WQ2#&M M'(%0?;87+ ^1 M=+)VK?V<*"\ ?Y5LTFP[TG':*'GF+-T$MSI(,QG_G*(+OP,=H6@_'-6T?7-] M@V0WN3O1F[I!\6@L,8BB">!FGKVS[^B5-X+>& M<+*9TD,J2G[T<7%3C8'N_*:=+(5;G&8 'QSFE)(XNM+FD&0-!3TW;%!^<)*D MR0G_2]/6RARN(I66AN]J9YVUIN=IS14O?@I#$386'&2?\+\T7;(UJ)?,<<6#O%NF^V\ "2/GB&X5.AR1ON30\[>7@@P^8,XI)H MTS$ 77+P(,%CUS#+Q'3SB"%1!KQ0D+S_X*PG)0ZFB"!F)L/C9/Q MKWUQ!I=1$A64%U4X+,C?!KU7-"2I40Z]<=] MCA2FG(5U%0J41\C51 0>5!;IIA+?!N\@(W-R["_9GHY8](>0],'HAT^%.>W> MG9XG>?=]&79*O">2*H\")%W4:*"'9YAE8O+G*"O@.0Z?"2H.*T20)'Q&F:T\ MV9WYE+N$Q[Y'CBH4'ZQ>+XHNJ#^$1X_\;? \3*G].L.($G MO-R.8JCGQ7\+&;5EL_9.DV0?Q'>VQR>#J:#?M?85V"$+3T?"A_O2?KRZWHB: ML\P"/@:!50#_ZG/D!%A$%=3(G5=O!^:; ;ZPRS7?ET6]K+! PUN1YWSZ&F3A M?<$DNMF!@>30-)J;"ML5[;?B;SW#@&D&\2%PF'*ZU*'&%",@!R?3B6"^ZH=A M3AYA'"('(GRD%>%C$3G8BE3#D<9X?D=""\WA*XV>G@L:G@2,N^")'U14$\3K MHS W7=9' =^]@3[R+V4?>5X@A8BO( &O=FLU/,'%S3,X_*I:L[?J7S[/-B7 M]27LE_\:-BTVG]6/JC=^:@C;7;OB_NA3VQ]E&=3D$'58!=$5*:D>BP>:9G8: M7@>N1:O2 Y!HD7-_G4J_$S$?1$._/=Z8]0HS*_2FYI%J4A_^T\*-B&L\BB)(_6$.Z92\)YPI/'3FN)+Z.7[YN3 M(3]=Z/P2.^\9FWPU73-Y?#?M+:M=I> 0');@4?Z% )NDXI-O/CTO+>7G=Q55 M4\CWF[.8XLPWJS]>QQ%HD)CH#'86HCK_GB?)?/[T_L.%.WR)=-S8C!EX\ MX2!(<[4W@*.LQ59^NLU2FAB\XQD!#/(+X/BF5<#9>;H-HD//X83AD59U!3%J M50WNAU8=\N.N50(+6Z]D3^6.7)_I]I%FNEFP82'JEYM +1TSH^#HF0M/75TK M>WHKE.X7@8F=83:Y8#/83YX5#=MAO]5VPW[YZ^?@/].LY"A7+.PZH.6MPLPN M&($:8E&=-[&@UX395F7+M_\EV+(]8XM?Y3IL@<71!2OSI4IH 1?7# LG!@69 M9(%5[YR_I.4PRG52 X.T*]8Q6^V!#P'P=KQJ3KIU6&E6L*^6-W]*4K(N_096 MQI@CVU]24FLG[G(\D.TY;.DFH79C4@ A69.6W^&9Q?)C6$<<].%CZ]?Z+)^GD;9+_V.[0Z0//HC$$CDN7XJH7CQVF#DBF7 M(X<*S<_3K(J]?D=:'32?=$XMDEGGVCB>Z)R*J9XZY\595Z/QYIG,N_@Y*IZ- MP4=/7,SFLSV$:_>9=4!$:BGKS)FB>VRC5VR)35X9>ATO-/33C[.QF07&M;YN MAS>CP>G!\6S,)D+3K'2P*)9D9J:C2\H.@GZ8R'A)<*V@JLATNB^>4VBU8(BQ M=QTM&81M6O"MR+F+DKA3%6UH/[I#WZV%@'ZXD&&6-A MM0YY$0,S)FA>1.LS<(O9NW$)UL#BZ8^1^:;R* %1-,? 24=M2MA#Q?%CY>TC MB:SWAYR<7@0%U"VY9M3C_['/HCR,UK [-2J]%0LQP=M-H%8*MAD%)TG:A:=N M[E]AJABYC G,P?EL]]1WD+VL24YH?(9S#]UAKKQWKCY8_)[Y8&3EUQB! PQB M\ID&4,Y"='U$RD/@_"I=6>=3Q.^XZYH./L+YGJT&J_RFYXO@;!E'41)M]UOM MMWWP.5*>D8K)*L6H^>'RV47=T3O?NH3!#K=ZLHOVC&8J/F>SF=LL#??KXB:[ MI]E+M-8MA6HP' LRL5P:D@IF<7O2,Z%JF0R@_#VKA$9;,B4O4-98LI)K4_<, ML*C*H6?^0$.Z@%AJHN/$35>\.#;Y'"2!> LH^3+N(;70>'M'BP#-/:,&%&6O M:.2EN]94T+7Z^'%X,E:.Q5]_7D<)O2KH]G#)[(7IXRO0CF!N+T$K-$]?@Q[P MU__I)! @G(*7ST*/1SY+9<6IA QJ(7<2'7>)_+('CW:SN:.[-"O@IO6>/O'6 M\1J?:$+ 6RCM8C372CTTRG)I8Z>;VLT1H-Q C4)*'.0U6-K]I- 6E,'BEHM MKCWQ\5;908QV2Q\_4[*K*/%:D9*62-!ZE-1(S,D18(DQ!&6>9A)H*N=F0D@X!0J2D1 2I%>'$"%##7)ZG$?S>]%VO&M_OW$[I;+_=QP%T M@KNCL+-F*M:5YG[_F-._[:&H31RGKT&RMGJJX70]<%]C)T7ITX82]/> MP?NMJP'8VBQ'34D",TZR%(-88O[G/B.3I3 M:5"45/JS4BK+' X6.%V+$F'E,"*[E(:J.3&"([E#!Q$J+V> Q7->5J:4/NEO M>[9SAI0JYI&"BD*M+=#CE-. &GC%,_VGLJ<9EL_I+V:-47L$4N)@NH91HG2_ MH84-^].[;'1[FC=]W'^\AUFZB?=IQA"SQS3)S]A_LH)\SUD8-H1_#F3,5+DX MG2'TO714PP69Q+F5OFT%@59P$*]UF2 ?_N/R[&O2X,5#ISCAE!H=*?GT3A[J M[M_'N^0.0PYODE<-(\4NA#96G@S>6._LXBQB*3^F:?@: MQ?$5\QY1!DOB=9KK;GYTP'C686:_:1=J2!2+,+'2T9T2>$5J< +PR&8P2 @2 MU3+$)AE&[ ;.WAE,2+-SNDOSJ.!%O%6KJ1H.*2XW,5T%URH@O A9STTWI-C" ME3<_3Y1()!18HD8Z5D3:0X02E$A841\?,QH.MS+(-3,%D;6N-#1 /K<*$H'K%C0\,U.=\9[G@C VYG92$):(&'9EYV :J" M%P"#:DT]>"U,O/I0$>3O.C]:Z:3IY%NG,LT?9()ZG.L MZWH*%JM%O?$9WIK>8<)]2<\$*NJ*[L*^X!)[/7?G%'\U MKWNULRWQ69!E[YLTXVV)-2[$A("W-MO%:"[!>FB4E=;&3K<0;(G #V-("P5Y MQ1PA"QS*D+63+,N4O:$;FF5\$83UL&BT#]?DO/7"1"R)XRY8JT".'0VG7(XK M7]WB.1)3%,_AN*W.]\CI41,*6# ! RG@2R7@1"E/8PWM8K.AT!V75B6S[H*" M0H :)7OF&:2+2!/=FM2' )[9]1>S:7WNV"A&V)>]CJI6!$BC$AK0@ MT-KE1 M'''\ZC8.V2@G%!B,,YN_4A'L0&>5R+S'Q5FS>\>WO2AXM(;WBX![H/NQIO>. M*Y5KN\>!\WB)S_8,/REX+WBR+YC#_+M8YB%I*X/N[VPG'S8B N3:SLROA%&\ M!X]S3]?[+"HBFE^\P1$4#<41U7:W%^<9-YN+($O89$"*$6^L+.[U-),Y$6W$ MJM%33DZKQ/04A''J44_'>?>2N$&;U,1)2;T\NJ[H@RF5(T! (KJ?KX@8!;O> M]8PS)=N7$]J:&9X:&L1K_MI"S YG@'V> TGDG3P+:$0YMB!FDF_3A,N9GQ9% M%CWN^9O?A[3;KKUNYFXHMCV:,&IIY8FFY: (\TBJ6.6:)V%;5=BY)$P$9>$L M<)')')(TAP3V=/,-FERAO:0.1*_0\"6"L>#???= MW(I"F8'J/JVL,_"00IIS&D%-^SEMS#+[3G4I;NCFZRZ(EF M4'[J/@II69PN]T>C>XK1D@);H?ER(8H=L2!)KB75(I,\066P:TU9OL%4,(UB MD,!ML^E% LFP!O#8C:$%%5*1J6*-!B%>WLZ'2G?3REY*FC4DC1C\'+EI?!/$ MMC?G5/Q[E70;CGVAAT>5_5"17"]6)0^70ZDA3(AU#2^)J$ M^PP4#4[#LLKH9!9=E)! /$4)F5Y"\BO["[3-YL?U']*,__*XSYEF0Q[,^SIF M%/FN(-@PJVD\B-TP8#9D&(F'3"N>H1<]/1>P;8!WL%$H;^H$?MF8FR/N9&S& M]A8A#]!D^B;D^#$TRCE-TFP;Q(S6/A/7!B5?6,E_X[ZOJ^J[.J^^*R:EHM'? MBC J,\GX1R%C0I\@(-9F#TXNJEFF1?MX?DD+FO-F.$'2$,<6H;BCX_?Y=!51 MU??3AHO:!]2-.6TW3::%0&!%.#[W/% 2CRW./##QH]-FE4]UF6;GZ?ZQV.SC MKO7I)LH1&5%'>XG7TE G3!S][,&:LN!$O:B6Z*J58=Z%3P0)%XER69A$4D8; M+.U3$,^?T2BDN2^"K)A-GD_T*4H2%Y%&5G>RUI8#]WC#HK_#PZ61M!#K M-8T1OE68:0@AW I,PSDVO$$/*Q2^ J: !*$H;!G: 7Y8^B)9M!TM])YZ+BHI M+RT>E]0T"2-*.%6TT\(YYN*\K0UF 3T*@&2FV2BW7M'P/1PZ$+9_5"0)>!P< MM3@<$2.MB*2$?J8_A=P/61#2ROW*,F3<,049)0DMQ,M(.#^AN=IG8Z<]O3#I MTNQ=RFE*1M# 8B8G&9AOYQLI )%2B+2<*,YI)&QE,W[<\5=\V:(OQ MG*4+A:LGMK.3"M"G"YK>W*-W&:HX_C'3UY<[!/) EUOL*O680^#J<(,%DY/C M8.AA@1/7C;M^$9>7A<-\4>/3\#_W>6'.2U:!>J#2"M:5BMV PU7O#B,&)]V M1;M"&B# -95R!_8WR-PD?R9 MYGQ]R:?0/Y!*V:V\%Z:'^M<5S$G_:C2_].^0KS[ZYT6O\VOFE8UYU4T /'WJ MLME4F_I3%.TX'+ZK!+#T>9,V[<0NOE9>;7=9^B(>FUDU5 6,JZUZ]@\UMPN) MIL4Z5M0:W83V2[W[R1$UH''U_M,^BB';PZCOAT!X>JYFMZG?;0@4O5:QT$U* MD4#^J'$OMCU16V>7;4+ 5V [1G;3?%7'&E]\(_=),0L3P6%;W9# MN$8N/EGNP8TK30<*L8RDFN%6K<@V"$Y!2!4/W:SD^B 76W4',HZ :C9K=I'&T(%$-0 ML=#1B1+(GP6A%]O8O6>AKA_-W((:+31FQUFC .UFLTI0I#ZS!EX4S;P$-%DZ M^G'H+]M'#D9)Y$>5\M 2;47R=%.\!AFR%[_<9TE4[#-ZFH27T1O\9/;H)@0\ MJ["+T30,/32*;=C8Z:A5AQ/#TS'6,1/Y&1XBL;0ZJ.J14*O+ MD?PQDY%"G43)R4XBS6 I>58T MK(3]5EL(^^6OGX.W:+O?*LU!\?GRNJ]E$A2]\^&B6JT97=%CD\-@;PYZLNMI M*N2UY3V;"Z*'B9 =L9SR(*]1W[^YLM4W%?S:FS=R$TBXJR2D?EPU:&4RO:JS M(7EH4=I7=V8,ORS)]+[-:$6+O-0;;C\FN>[WCP5^![+3]7J_W?.:U^>09[ 6 MI=[9SS'E+1N3\'0+I2%%A,RK2O&5 MY$F3_HI4(W!GT!QC10[1%MN>7!^R?T M-_C0&O6^8/SPC?^%IQ$#M_643Y*"IEPX<&GF,;SOL%RZ4Y.61^]&/>@W9.S7!?(U4;!+-;=Y?5=CON M^G.D?MN'#"B*E3KL>Y91UI[<$OJVHPEV1BGL)"FMNWK#E?=U%#Q&<<2B9M$9 M,S_?TR_TK7AXI?$+_9PFQ;,NKAQ.#C-38]P4M-,XAM%"RO$8PZSR4(+25CM[ MH+@B%K") M A'_C;3F_-M&9R M&BL%>D=DI ;QF*89 MY>(=AS6/G))CL-DQ9NJU94YBC#/;'N343F%[.G,#^E ),IYTRP:DK02FU<" M(3M)Q&-[_*G!_\7;FH&*IH]#YDQ/RU-+M0GO;+8Z0O[9L)G300;=)$D$32*( MHB?93CT5\,QW#V)&#(GQC/RT12.89C*TT'C6:1&@:7\:4!0+,_+241R][2 ' MG_W$N!6U)V6'G7336>UB2<#4-VV9E;V?8&(A'R+-PBV$VF*%HGR96_L@$ZH/ MK8/LHJG;!NGQD%L&V1CKO@*3J&!9!QXC)+*BGA=-@Y2275M>*=N0?%F"=.+H M5Z)## \6)#5+MG6IUK)K;]XC#Y)+%'"O#;9,S%E*!;'>!JIK9=I1%+: 73]VBZ0*1<$S21B6_E,A85C"?;#ZM M(%5X=M"PWBVFJY!\64%TXCCL95IMW?W8TI@[S9M.!20F^ON^08*5K9IRVZ[J;%,Y0$+BG4N%_[;'75ZY^;S664,,<1!?%M MFD?@+2[>"B8>]&Z[CO)A]MF'O*^6W'^*W&W>G;:'WJ$O\T/\R*KQ/HWMD*IQ M2#D0^:4>BEPD^RTGF1H>KZ$>LDPU=?-XJOZ3.2*JO@$VKNIF)J986@^+%$'; MF*_B9AW@\M&RF9.N<7(M:< O%AC;^K6,%<2G]?AG&CT]%VR+RX0.GN@=W8IV M/OS#!YIM/SKY%QMB28E(4J2B)2 (4/,LY!XL M?8EX$DAALTI8MNIN";/CPU-[Y*-ZH^#G\K+QCJWXMY3-NN-6UX6,IR9M$-G9 MI!4T_#-I+9,#3+JD18#8BDAR?ANUN_P=HR[OX FC3CVT:9%"P(4^I_DZBW80 M.IANW8P8V)DP1D&Z^2Y*<,2L%@,_VMP5:6@-+#\NTNYIS,@]_4@3IN\QU'L+ MMVQY@QBVB%[HA=RJ&6N>]*2!>-4[1-C6G6\? CB7O_TY[-X""QHK(JF(NH8M M.J0DY$L)EDGE?FK(';3E+L\N?%P/KBWWWU8LW]:%CD#VM>$:]0K:\2U M-]?@0V7S)7IJQXZPY[O9G*6)ZI2O#R*VS;B(94LA;F-YDR^L8LL].1BPX92^ MQ/?"? 8(6#:R$(?KP5-&Q04$'#]X==0@UUBGK5L%Z\NAP0'S^I,!">C!]K_% MB7V/?V&IXX5Q$^4J@M!]6R4RG%,(LPRG2;)GD>0=>@>*-M/ERR(G"6M@7ZSU MD'V]N9:0'MAKFQ6[P=[:'F[AZ+NS&.L@?R:;.'TE\%5Z=J)V!R> -YN?BX!%LN%5R911%/,.:8"*:UC>"'(J)CN:W8P"D9HPJ2G[D,@X][S\X(7)7](0;O4Z&BFXZ;< H#,B-BFI$+9UIC MXL@\WX&C^VU4@R2M)02K\,'H8%(X(_)#KT R2ZP&_ M%_0YW5#&>3C=3FT41=C=(5"^V>*4$K4AZF)FY MD< WMCZBJDS.!1_5\-P9U)O?X3;P*,QPA.!>;0HO-ANZAD<&E0SPDDVUBLN/ M[BCH?Q1'IHH%DU/',^6))ZAIY1.11G$ D_+>,9&*>M,9 !72)E,]$O4I0IYW M:NI+3?YN%/EB4RWK@4#E@30XOCWCX;T%W&L6>U+VS6T,FAB[R^A%UB-W,8#O M$:XBJ*]OJA$.D?QY=3[?C)TTQ/_IF_MOR$;."O@3_]V).O*BNG2D<23]=B"V MJ>CK.73TO'499H9'^ K]GH3FQ^4C>D[1B10]:N1.K4A">>VYTE$\BOV-_[[B M2YJ$--PSL,>X?#-S_QQD]!,453Y+M_ 7#GF6:NL[SC&0WWYEV+3U]3;]1O'6 M!PT18X1G:@U7'I PAP4CGCSR:N;-,0D,>EP>:Y()/2G[\A\EY!EYTDB._H"TWV;/,8TM-U<1UMHX+CJ,MH+3,D M4KW)A::R*ELY\WBS^;,P7>_AK1P?#$%!=$UTQ*=0^(I%$F'$F,@H5&E_I,4K MI0FSS5V:B0Y3U0D'+<]_I05_S4,R^.O:"@FFS3M6/;Z38+>+W^%.-63P>1&M MJU FK[9"#6*\(!?S$;N,PJ_RDP]QFN=?BW>%Z_J:-BV/9FD!P.PO6?J4!=O; MW4Y>G8QJU>[N3]7JSZRO'_KTV\$RWG1:"4,TCJ*60#\#GT M>14:_<7WN&=2S) ARGK] [:,3VM=-"8A*&%].MKAS1@>LCW]:3?#*8Z*NL<1;K\) M>VTR7M=V3;1P9+5,NPT");/K9S=)OW#V_S3G@K.OP4;)K(?N=S##OJ*QY] M:')33]-/._RE8IE9.VF(?;+?^9$57:UT[(?R;U*P.YK3[(7F4& :NED%L>NC MHZ%$\3.GQTV'*I=Z&$74[.HQ+.OSK>MX<<5_KCZHO$))7-1@E^1]2K&<=X(: MZY&L&?;!GV:6 T4O(^'+-#M/]X_%9A^SSZ#]B"YQ:HZ!CLZO.$S;!+[&,,HQ M^1^K&)/[I%6]S^77:N6PI!SW6#U5_ZD\J6<(9B(L9R*PS83'7JO\TZ1S6Q,] M-F]T.!WC/4_YIR/R,FV69_ HY9^/U'58YN>$[11?V-8(]MV9 )WC<*P?[VPW M]W\SWJ--! _KTO6O-[S-QZ'=3TH9Z5!LVHFI#L2F(8MWE_]UR^%O>9N^1 MLH61\D/AM3@?3C?DI7M8G,/?$_:7OY5CR&3!5(R"=9HTZQRI;A-4;K/VFFP, M.%4BU2B$#T/D.+@-DF>=JQ,NMT8[/(NSVN4Z7%>:0RR/(B6U0,90J(WB1ZRC MXLDMF#DH).-?F.(DVDDM!\^%I#ER L' C1K\2\/K^GAHVGV@@KQ'MCARBB8X M.>G0]L.Z1S$_QRF)&(I<.[0SF&2VK%6]9YZRDTID/WIG=L3]0IWO;CBH1U;? M8-UHP0S.#VNL&'&SK"_BL:,BEP:YJ&(/P4"&4'N?@;_C+PWZG.XRNI:OV=F? MMVE61'^?:)OH-,A1G /TF*Z!1P(.(QS+Z8"S*),<%(2-443OYL8XQW%4,'S" MAIT:5#?*S0'%)XTAC^D 8?@,GK0GX;\%V]V_ME3(F[BEUQ['OQV+^_[#H]U$ MS[U! YR',>@IO[U$X>6?ZZAEJG!EK G8R2J*"7D<#.%T MR"] R5_=K27^$FSI>;H-HL,-PV J7NJP26!'/5:1\$V7]3SVU.=52YN!&/E% MD$-6ZB]IPFO-%/3T*:.4-[/^3+>/--/,E@D!3U7M8C2U4@^-HH V=KJG:!4" MJ3'(+P('NR]F;VG.TA>:!$E!DK2 )S(2&[LI45ZD6YK=064FN#]_CG9FPS!B M8+8CL@K2[D6D!4=J1&3A1]&%2&"0%HHOUC%"GJR)@FL=IX_,9C\'V:^TX W/ MS9:AA<:S"HL 38O0@*)8@Y&7[K$Q0!,!3@2\+V8P1)"M$"3F\-YN!:XM;FI<9MS2+TO!C_TDR4_/2&ETFP-% 3:1\LUD[K[VWYA7)UCT?$43]->P! M,Z&0CWR($O).@PS[ :E!TA^S-!^PGDHT+ZVW)9*CF7(!T223D2]M+,>T^&Z'-HI M^F:GSBSW7R:;&ZKJM0L0)X(Z$>0]7C8'SPVSRM\>DQOX"]OD/KRFDTQ11>M8 MC/Y ^.&V+@D=@8FW.)W(LH$FL^STJ.S9/!',JGYW=&;,1M:EM0ZF=E2FW)R MD<8,I([%G&M>)S5H('M\)FV8#&9COS\VH[YDDSK9Y ABQV323?''6310.A*# MKEF=TIZ!ZM&9LV$JF'']R]%9,X.=;FXXL:.RYH;X(ZV9P1Z+-5>L3FK-D:$6 MG+?6K)\*9EQ_."9K/MVP^9G4I \H'HM=*R=BN'&WR!V!A2OXG/5\OE;![(+WL4+/]YG M2C:72I[$IRNRAC>EHN)KD).U8 *KPD^_.>'0I &.;."#1:B_-^25C7>0<@[P MM-!X*YM%@.;*I@%%6=F,O'241O3Y\C"L&R*&]#@D=BCB.6*%NW]F>Z\'FFU/ MD_ Z39[@QW/Z6*A*W+@@(*UV3F)4:YX1&F_E#S>3:\B0/ M/B<1 $ ?5!DW;J(D2-91$!,YASD44(WW(:^D2@+">XQ^0QZ>&7P-$V24['.H M6Y;R0#-.V:>BNRKO21HE+-#9Y"Q3\&_1H5S] ;-6"DM_QM;@XET!AC M?+24,>4TIWW9(.N81=*=*G M-,O25[:GL340-6(@%JFS"]*J2J<'QRE#9^/'I%3GW$C\Z<$Y2ABPB1]F.9]I M6*P,JK_0XF;#0VCXXS?*K:@#%M:IC;- ]0&.%07Q+,>1MX[R7!7-11K6P$!4 M:X83GO9*4FZ4$E'(7;0"QPQT!PL-B.2ALGZ)6U:H%]O"\_D%LYSC#)7N1(@6 MIT%"-L&:'_&2D_+KP[ZYJ(31'DXW(#!O*#J,MF\EJH^1;B(.QE?NX[95N2GI'%U MX%$$-TBD12*W+VFB7$ELRX\>SX/HS2:4,G[3(?D1P9FY&Q/#0?]-K^.XGJ(? M1'+00%(;S>%VOA@AI"J@.RF_OO+;A!,QV5,EGO",Q.Y4+J,L+ZZ2ZR O;O;L MM_CPB:(3A@>.1"^(TH5TP?UP'CJ^.FIU5[J,G&L,J;T$TZ$-4(&C4K;$LC_L MO7 .SJ(=N 6.1ZX2 IB$H9(/EU?7-_J*48M[!&?)3@AP+KXK< C8VSG15>22 M'^[3LS0O>-A2OEYI%L A'6Y$: MT:\N.'V%.R'7-,]_J%OBR*LIYC+60(.P5=0;^WHLP$T4XMZ$G_3"SV?I]A'N MLD3=+L-VVP49]Y#%7;S#\Q<[)MK1C"MKFE.;>EL(5U[U^?Z*E$1L%=N6.] 9 M+*KH2]7(H!!-VJ8,7DQX[FERJI1+*I5!/'&]7J,J5.:V%;(X%( M2DSFKH7N3=,11[WAAGW"-0M'E(T*E!!(&VHUH]4&NOTQWH99Q8=I@PR':LU4 MHQW-"EETN4P=*B-&K(VRDTA\3PQ0"W52L.V!^S$]AV7]3.,XOPRRIU1O6UT8 M).O2,5O9UR$ GH6I.1EN8Z] CW""6!;F*-+/-:?8_4H&LHW9R!(V1%4[UY& MD4/R.1-,0>6(1M#"\TZCF>ZFY!C/"@(Q'C_=S^2([(<#_8=/2YI>:O8DWN8:0^R!:XI MW+Z6-QO&GL9J4,2[)0/KK?LD!1S.'9*6$<75)("2F^KFR),FQOU%@'13#HRK MYYIMAE'A+3AXFN\D3-,$C @HMN# 48\MK2?6,:E0 ?D/;+D_N)R#.*I44\G#F[H^N<@BZ#&T%U04,/-=A<,+T#5L=R, M20]A4,)0-1,=Q2C!",!Y<9_=9-QXFZT"]$,Q]#?972ATY3#>8A^HQXQWV/QH MF(8W+S1+HJ?GXK)\A@(C&PY;7="P#E_=1:H/8^TXB(>SKLR-BQ[D,*0:AU0# M"3W\<']S>?DU'[X M>-N&WD(V]Q'.R*@;BYYF%AUE89D]*7_+"PFP@PV9& ^M!N4L5\\I"ETU W!*774YLQ2U7!."] MV.ATI##N=K30'FF.?M^C ?5#>XP[((W^S+@3NCP[N],'.LU/D<*8+H-5D%)_ MA!>"'/(P/,#81&]L&[)^9BL,+$0L6@[8#]"P!2V6L H' %Y$ $ZN'I0T/X=!*&ZH9L98V]&;%/I3!_'A= ^R/SA@>JBLAO= ;\Z-T MI>;,N%;?!N_K9[K^]39+"[J&)83]])0%6\-)A0T%ZW#"393Z/,(,CW@$X<+8 M\*!@)\F3744??H0!T X8!DE<8I$:C4@\+P*(R:7"KUYUE>1%QK77$&JH '&K M4JG9/JQ U89"JS:E8D-3TJV"]"*Z:#,/M7N,\84>W!=EZ8J@5YD:U@/%.63& MICXK66EIQD#C+& BGZX+\],3%112.*%GN(H@NB!X08..E^%QPMGIW<4]821Y MQ@U6:. L5YM=+P* @;S/X,7SK&AXXO'*8.=$J"+3,J##F/=!OE;-^R(*$[5 ,)_PF<*PC?[L(]1V 'A;Q4L#& MU/"%OEU//=T71)+GJU&.=E/06V)>2[WDW8< 8)P(BV?/ MP5NTW===6L^"'?ND>-==ZO0BX5>19YNHMH+/.GQOBC^;&70O!"WID(H0*2EA M/_4?+W0IVV,EV]HFVR*V>9NE:TK#_)*I,8B9EW)JIL( CV=U5B&:)J8%1K$G M"S>*'%-V7O+8E9#/I*XOH;R%-@H8^5'^I6&8K;5X$/'W8V"7&CH9= M%<8N4K="C!X'L5J,C2E-V96&?9 &YFJ9'C!N561ZBR9-)VW*$WM59:9]0?8I MR*/\GFU:@O F:3XF_.ATOV9"]^7RTBZB_C)3C^O!Y::-.?ME)Z= ! EH#]9Z M)(IL@%/(&C5D?>2RYI6L+Z6LF4G6$2=,!RD,(;/\*$V"^):RJ4J*X(G>IE%2 MY%<)FPN:*[L5]Z>!=)8T5-CJ *DO ;Q3HV&<=@/&"ISL.#P)0JB1*9_#K8-X MO8]YHCI,%@<^0K3'*1Z[^^P_.2,] MJYP^.2:!04ESU./SO/VG\',OA9K#2TL.3I^>,M[W_">Q.8';:YOO=49%\J@] M1:O\I",>GO?KQ6"W\&C3D94DJDUI74>RJ7EDGXM];T@! R_WN: #Z!O:YKG M;$NII&E;@*@OF0#VUSL MT@R.QL)]QA.JF.6_TR##R] <(IM$("4&X2BX:9K#OZ/\X$N:Y9$V"U[2\#+- M&HQ:[=@!">NAMJLX]5-M&P;B8VTWUFR[H!TG0S9I1G@!E+4,C-%>9 \42^"1 M2Y"C8>T>&?M(R3K?$/:U]H9F;$LEDC29('F1?Z&Z[! M-.:EM5& ]AVU$A3I M2MK B^8J)\_W $LX\(HP-\FZ:L;K!?4F.ZHJ@3X:J83U(?CIDQI[L!!A^Y!8.D:1.99)')69!%HVY;C;L7TBU MAU70LL0>P.+'6TKF5=%6"Q UUE)PH@]22F 1;:%KOKL$M\$[5W>V$-3GQJ&7 ML5?;H,^"+'NWY:>;47Q9'M2BZ)>(-KP'RX2*(6NQP1^S-,>WE-YBW#*+6D>[ M(":/0E==V L>/;-3^4G<"2DD"MEY<4*!"@ QN ME#F)L(W%-^0^\?!;Q%]P[RA/CX;6%%'! VE*\],DY*++(R9S1-J+!NZ2W%O8 MPS7:F0#:HMV30[5]2B*DID* # F2D"@.'SU8Y,>*#0U9:$8VI93T;4>3'%Z? M)A,L_G.<2HJSGV@M?8SF_V,&TYW, M0G[:C7/>,YLM0'LHRO44O=#$ XUN[]/*Y00>-O-2J6']9-#IG,A,P)=311,)FP/3ASM[-E/%DH:_!W^B@@RC<>N'FQ;Q@O5H4L^;\DS2T.JESEE[?8[6S[7&K8-$/(LI M[Y48R,$* 3GJ;(?M8;N8P;-U^*2^X7)*;,R5?:QP4H+"_Q7_DO;*(*'^)9 < M"F#('Z$>I8_0OMDCU,_D$8L<-\4SW64UH\@N'GZ?S7I;"8OU^#3AL M456TW## 83W=,#!=O]90 "WZ[5NX4!6QY*"DA)VD]X;;UZYLK6&$].2K[[;5 M,(#A?_W&EAH*!9BQG<8G!IGIWNHSP*DD!?8=\ C*0(5O8K7=!"XFVT M+"PI]E=13K8<@O#2ECG?*G$RA-,A%2&L[5!?F93,>U%Z?A))9NE>]QQL=T'T ME%S%##B-&3*&MZ&6S7YP$A6 MX=O7WABYJZ *0Q$BQ:5(7BS0,\HWDU_(XK0HZ)Z)Y0X6954C MS%*T-DV>/M%@_>QBL09@K"*R-O;K8K Z2,2BKF:67"TV9F3((]#QP&3[R@3P MY-,!\UZ$TY-(,H?)WC"5RJ*.(]&;K04!R72=Q*C,UPB-9\(.;+F:L23E@0T/ M$:K+O1=&/$*4UQF"&/0NINR%84)%-V%*4R9@L\GCD[,>9JT!4Q#TQZ MF& J"3R)IT<*-+MQ!TF1[F/[C90&$,N036S7YJN"0C1:/3NFRI[ZS%Q)<(5^ M+=5+LD.FO5A_1TDPAV'>;]^S)/B10O*M=;TU ",9J)7]RDBUD'B&:F')=5T5 M9(BD@V6;?85I<^W)*CI,B%4IQ2P&6J3).^]%]^7=:I]:6"SSM#!?6Z<&$-$X MC1PYVR90$7T/R1>TAD ]96DS[8MI#I8!JA>_DK^DV:]SV.?/:1JN6>B\N0Y^ MI6R@_P'K_[O>1LWP2';J(D1EJR9@/'NUSEQ'";TJZ%97XLJ$X-$#FHX8QDHZ5:+-,AI76+\'+K#Z\16@B*:A('UEC$HX'#,0,N(HD 9 VV6 MIS\WO>V?.]Z;78 Q^0%MGD2MJ7.:K[-HI[W7MN)@90LX"E,G#5@0$','G#A3 MEB0(H<==NB$QUR%:ZY"L2!#65-"R"(9)U[$*V1>H@8F:43!&*N/WA+O(W:^? M:;B/ZR@E"<^]Q6//N,PKOMG">/ M,"!ICK@B]9B 6(]:>B0^[C0OV,=:[RV3]TNPI8HW[FH0/%M1L=I4\>;G*)K9 M9:#[G)G]1@!FDG?L4WWYRI?N.B!\!>B^;U=#H"J!^55[K08SOF9_>$T?GM-] MSG;%ITEXR<0L*$WNBW3]ZU4"]="B%PJ$XY *B7 ;]>,V M:%XAYW<]%]'3\SC78Z?@A>MQ%53C>FSHOK@>-SXG=#U4#NBQZQDX)\PJ_W \ MKF=J(>=W/0^O;+CWX8['AN^%VW$34N-TS,B^N!P7+B=T. 4?SF-W,V@^F+%\ MA^ELS >D%6+Q1%4.5: M@IBQYBQ=AVE/ H51,N >@PE&KI*0OM'P(84>5\Q17?QM'Q7O#VQ MD5D?T9H':2YX*,=K[HQU7_8)?9.XX $]C_G1."O"%#PXF36)J;QQ-85V5^U MU)_PNF%ZJ9K&$V%GY9SDO'BL>E8W;[735X8_#O!X2F@5HJEW6N#95,TA96E-/)1_% 8Z>=,*6>3S,$BB.>18:N,?'K?TZW;!1)3K.,@="R M"3/O<2 .%,Z"750$,8RQDFT;?,JZ77+*1,;$ND$8UPU)L6BHEEI^C9J)1J;F*@6"4E?B'R-%DRC*R,UIBXK@#2L79R(L4 M?F<6WF\'),YY\A\98)%?R0%0=&9_['#TO(BT$I8\681> MS@\_VB5^-*U!=Y! EW>;RZMF=_JQD+WR7)/7<1Q'@B9G?5G^Q1 MHQAW1>J1??#.2\VF(I1<02QIFPI_;MV^I DP3H7X^4-:\$U^]3D<]W])B[_0 MHKX(:-Q"CKJ+&S^VYS=T4TUN[WN[L0/[>YLWC63];PJJ<=L1ZXH_\66?%N2= MQ:GUF"L_6K9CSNE/258_B,XMUQ0DHS%<@4!"3)(F)W*RA6]%KNXS;0C\8Y;F M.K1,#E@D6ITPH<_\EBL[[36TK\ %/AUN8\D M:4UJEI>B(R4]?7K*Z!/;![?EK#;HWQS,\%*#8KU@76HZZ]>P)CMZ&/-U3N,[531LTN MXQYE .TNV*RQ=,5&\U1ST9AZ@<2<$7-M\)E44O7!:0XY0+D,HHR+?IKG^VTY M4SNZ9NO \VVQM3NF08\PH-0YVFV$C^.7L;VFIGXY*!.4KIDI@L"?@ZR7VEQFT6=UW*SCG1L9P1. M$S?^8, XS!&>!CC(X_Y&-6@[IF:2R$XZ)GX.T,BI(_#=DPWXJ2T?F.Q@Y*,[ M'1@[CUH'_ZD\$E!D;S;2- D,*_R]&)CPD8_T$&#P;"J/G@9H)0N!FSK)^,D9 MI>*9)N3C=_\7>4EYZBQ_">E!F#QDODT+Z3F\%:5)>!<4DQ\L MN(][A*<*?2=UDB,%UT&/ZSRAGU0HD73)!KGSH2D=UDQ7L_ >T=B'0X.IYN N MRG^]S"@<1U/VG15+>4/UN/\@WM TJ;-Y0]6@Q^\-]5(MZ0V!"P)LD)*/!=SA M? D+(R>:S\8&9B,J9R,;W?#3*Z]8K@Q_3F-&)HZ*]Z6CQ,.1_T$\HWEB9X\4 MV\,>OW?RY PJ"=YW-7SKSZ+5;7C*PO/@B9;9N#QAX?0Q+[)@76US5NJB=["=9S M_$5=')Z FI2F3R-2FLH'[,VXI62(2(ZJC'Z1Y$1^*;G"[J7HQ7=@F:WC#O<< MIVC^H-L\^O&&A3TG>*:]OFGHHPP?>\FVW+G 4%]QE <& R;^_TO'"..GY_@. M%_+^.Y4YEIW)V?!X_9EIRGLM1!/SX.>*-(N0@Y:F?-1Q!_(J-?ZR<9DO8JJC M$G2?VWG)C.%Q>S)QQ/YVT'1/ZFU[<7"TB7X2U:=91.%M1O/]]IWB*?VJZ]A'Z5#[";= <6_"1JU?410I_S-"KML"2;@CY[X,]=/F M$2V;O'^$&HBG81C!#T%\'N7K.,WAZ$239;'0F,?K/)TFT",P9[D3:=W0;1/QZZBQ-..:>S=AUM/$A)^+1/CF/@U>*@PB\ MFHC&/,Q2#7$&!H^P>N)L7]/TS6>FX.ZXJC/.)+XGL;"C#YR_#.1\C5Z7^@+_ MD0/JWI.W1++=6*:.-R2?YNM8]I3C^.[L%A#9UU5@R:L]+XY*AN2VS>COYWF. M(J;!O2_$4H,>Z9,3Y^F<[)&)=<0C+##<3S1#NZ&6'<=E[$TB8JF:)'TL4+YB?9CJ:P?@XBBC!]!0L M=XO%"J*DB4" [(J4A$F+M=E^UCN[IWSDL%34(2IBA2PXMMS:\_ "\2*1(W$B1 6+&S7;:)6V9^ !*) M1.:__\?[TAV]@B"$OO>77\:?#WX9 <_V'>C-__)+',T^G?WR'W_]7__R[__[ MTZ?_N7B\'3F^'2^!%XWL %@1<$9O,%J,GOW5RO)&WT 00-<=7030F8/1:'SP M^>3SP>>ST:=/?TV:N+!"5,7W1DE;AY_'^8=IUIKO_3HZ^C(^_G)X<'@\.OSU M\.NOQT>CAV]YN6]H9#/(*NA"[^>O^#\OJ+\1HM +__++(HI6OW[Y\O;V]OG] M)7 _^\$<53XX^I(7_"4M^>M["$NEWX[RLN,O__/M]LE>@*7U"7IA9'GVMA9N MIJ[>^/S\_$OR%14-X:]A4O_6MZTHX3ES7"-B"?S;I[S8)_RG3^/#3T?CS^^A MDX^K,BP&\>@KI)3?D/W7?QF-4D8'O@L>P6R4T/AKM%Z!O_P2PN7*Q8TF?UL$ M8(;:=$(/#?+P:'R8#O'_7&9@RO^=>,Z5%\%H?>/-_&"9,.B7$6[_^^--:5"+ MV E]+P+VXK/M+[_@(E_X6OLB8^!/$4(K[F/J>Z'O0@>#]\)R,6>>%@!$(?^P M>=KJ:= /5H ^+T $;+FT@C5B M&)Q[:->Q+;2FV+8?HT7%FS^@P=@0") BWK)D@JXM&/QNN3%H,N9"9@XL M!V3DAX_ !O#5>G'!'8B:C)/6FN2!WWBO"(-^T! %I>J2A_80^"L01.L'UTHW M0C3/5WC&-!DHI3')P[X%2!5IQ,R\IG01XPW@V7IO*N)"=D;2.! MW'A()YM#!/-)& HI'YS-21XZFIY!#)RK]Q7PD-10E_=(.0BF<8#5A%MHO4 7 M1@VGE4#CLC>,A1]$SR!8HCYO?6^.?[P$+XWF'+DMR8.>^LLEC)+-%'6%=EF\ M!:$C8$/N4YN3SF^D5B9'2M0KEK;H@8'9DN0!/R(%.$@4EPO@@1E$BC%:4IL, MF-22$A6H>U6H,Y6(K_MGK$%T2%[>?F^*57."V&UVIV0U'W5-(WTI7,T'S6RR M$^6K^7C+];M3Q-K H-)(?TI9\V%S-*I*06M.E' 7/2EK+=9Z1HO]*6[-:>!H MM!/;1R- L M@!Y6$-+5]P$$28'.F=)R6$I8N2F%L6MYZZ='@!27N <(L7ON33F=+M 6!\(; MK_JU!1O:]=<;\8\@!,$K"*_]X-*/7Z)9[.;E.B&>I[_>B)\X#L23U7(+5W:= MD$WOJ;LC3 MBZEKIZQ"S61VNW/S>A5BV!8ER^^^+.;)1V["C3DZ#WZPH#F"$ M.)_\_F"M$_:WH(ZOW4Z(*5Y)3UTK#)/=$#,Q/WW($6";WCHA7#9">5KMA)"G M>+5*5P#+S2]^$3?O? __5AC&(W#Q1?&SG]9K36OKCKLSAZ#EXA5B]RVTA1?^ MW&JGX6Z\.[)VU?=<+YW846RYJ,@CXO.S_SV\!@X(+!?[!,1H>USCO\LA7LX0 MNF/1)9B!(,B]5-"?4IM0P78BAP\"_?1G3LN%D:VDY8\MZ&[=97\LD+VL-^Y* ME?6Q!:WB??1D?VQSTF ;HCL#K9U%N)6^*0VV,OP_P!POD"*Y^05@6&.5^UXN<(?$HOGC9=;/!%W M-YY\F4TT:6OR9@5..(E^"]"A\Q+I+Q?K[R$J?.%:]L\G>X$&'MXG#3X$T$8? MOOD.<*4S33$9O8AJ8\Q >B1\18=@I%LG/KGIP,(;1#1POGM(I\PU#FP*:&4# M[F8@*I"-EXC 2C3P6SA#:NK?@!7@M6.GW-4["&P8 BSG5I<-W0^J%S8BC2Z M7@CM9,Y(9PBA^5X!37Q/+3D/X(5.J!0!%8L-DS!,2G(!'@H1X"K /KX>B!!1'_3 M#BV?(4RMN R)[A8=IE2YJ,@D>U0CV5Q(AST*Z0&@;M$6Y&#MGB*A4KEABH=- M0B:;XX$LF^D6?PU=Z8D,4"@<%F6"^#FHVX4N9 "W>Z8D>/XR=8G>78#WU';(\J;6&*%YQ@C)I MGVHQ#9^M]QL'<6#C(\!8( GE2X2>GIV.#[]J+SD14C*9G6DALXGC(&:&V3_H M7 W&1'G5E!VBK'C)R.1TKJF<#@7D=&B&G.K)R(_=!SH):HK]PH)G_\UCB6E; MLDS=^9"$Q" B%U&=:429B)(-]CY(O(/2&$A4.>T4'["P>"C))59G"U$FL0<_ MC"SW_\$552VL*SQ@:;'IR&6EVKJ!%X%) "R"=(J?AR4/YLAS"=39,/J4 [( MYCXL?(]LF]@M,BQ)<(T^EX9JX\03L!/_\/'ARS.^/JJ1QFZ184F#:_2Y-.HL M$GU*([M??%HO7WRW1A2E[\.2 WOHN1#J# 4ZFH5R9%V]V\G#-H)=KZ[8L$3' M34$N03W,!G\ U_UO#ZG[3\ *T6KL)&XV9%,/H?RP9"5.2BZT.AM"JQO%_B3] MN^_&B/]!GMZ6XFT#O_@@"[:^>(DY M9P>(.4?:RU> DES,>A@L;KP(8++@*[BT(BNC@W(O4E=\B!(3H"27F!X&BV0% MF5H1F/O!FGI#O"DU1/FP";T%'Q3.EZ6EJN>Q&'T ,A>64LE1JB^-@$ MY.(;EG/&U1($<[3 _Q;X;]$B<_LFBK&V]!#%R4](+M8Z"XF.8KVQ9\$D=B!J M9Q)%($RY?NU:\QJID@L/2ZB"=.0RE>3YH<9[\1IZ3]$RN@H"/YCZ:,PV1=#L M2L,2>$-Z?"U(/$\]#_.)"^]KU+?)) MHU!FB!)A#3\7R(#--_AI*O8E\^V?:>RX^SC"R6^PO9A\Y*=4*C-J/ C#CC ] MN;NX="M/'TOJ!.TA3K*/U&^;I>_#$B=[Z+GDAO(()U/P"/<;A:\#$Q1CX+F8 M!OG4)B/N&@;+&X#]OP'YP+!3;EBRY";,FWIPTT^ M81;*#EF<+#)R@=89:)H*]-^_5)ARB_X@)^X%3UK6(ON)42_&!SCJQ:8Y]'.Q MQ5'6Y"AKLQU09U;XDC L#C_-+6N5!1UQHS#_RQ:VV1]^;$9V/[N&'AH+1-+T MTV?AA-@8:" _1*K_P#X?+>=@$]*RV(7U1-07TFH.-N+S=I8*4"@I_D8$@A#< M2EESF\L[TQFXQ+Y35BOI"XB/)',>\LP0/0[#C ,(HG]PO/17RP4XI& TM8)@ M#;UYEKJV%@I<=36&!H^4JPAI3K4DQ"#=XL57NES49@.I]1#CJ6(<0H2)E10$ M2#DP\E0;ZR1K="T0BD6,$SR3.$I,H 'M&9MXYEN $Z5=*5GFRQ'BB\(@&7*$ MSD>CI)A#1=G+M(0V <)# %86S(.!Y[' 2\PD (.CIG% :4HS)>[1@!8-'E28 M+7]N2;>UPT9^9+GJ)$W,PT36"FA5-,:!\ (@2*4DO;!^R]C5M?H!1YXK@P"$ M_+,Y0J=2)$D?U$#Q+Z<]08"^>K?=&'L[,23.4]4<-#2FM@/M40%.RBDW'G&, M]_O9]S!E!@$@U#KF($.<3$EZH?+%HZ &W_F>3=40:\L:! )N\F2IBCH<"JBG M 7.$2Z&'$E-S0(I_(?L7TFX3W^>%[R+*0JSI1FO&S1)O=:T0(>FJL17M'1P3 MU**'[R:27$$KA$@1,14Q/-2;<5N9WZP\6&ML9TWRE/-=/-74T!TE/&(E7S[Q M$FS0I21.3%F>98D^5?@3&23LNF7N'9^.CQ2^-I,)EX:D=VJ<4G.?<;5O+ M3;4GWTJF]P+UY%LO1BW=<2'C%-.$!0;>BI6-OSD/UFQS**O>1\!0,R:8X8I5 MW'&9:*DO_!$@(D"Y)-VDK)[*#,/14CMAJR4? A!\A]N!JR4X" F,DKS&V&/= M]_ J"3R;# -*C8\ "U'R)=W"*3_+"M_5\'+Z!/%I]PW;\&$B2+VDVSWE*'G( MAYO03WL95%-22UP("K**!%Y"3;&R%\):45^&[10S4_A<5';RMD?U>77B.#"E MX\&"Z/ ^M58PLD@N?H329H)"A%@SSJ"/(+*@!YPK*_"0NA1.;#M>QLF5P"68 M01N2E AV13,ATI#N3DZF6BB;W$JFF7C@I-.,,RE+%6_H'*8E,KHS6O#S@)+Z MN15J% >1>4B8OP 1M+=Z!S.BS E_1)G1GTM=_*NA$6;.U428V8SMF?)ZN%RH MC.ZO"-V[ME2=W3[/"2L_DT)))T6U H" M!"EBYR*1B 5Y__"@"_])5)C21: 2D&]Q<!2! J6$6$D0)->/1Q6;]0QHZN$$_,G?E34$M MQ=]N.Z;39DJ4IC+$T2GG/D@XX"1&[ <0) DKN+8$4F6]L4$7,VN3$*+9C&VC MS(!;^(\8'YD1)>D'@$[-_+>!Y.HFHT:0:C/7FC03SB2.%GX _[FUT%#QLEO) M9)1PT6K&K5$=X4E:;;J=J\'JU!TI1@,\*)5)+N,54-2@UC@<%%J*R())H!@JIA$$H;#@0* MD;+NCC4# 5NQX,_>:1P<6)1FF&B;G[;F9-J_1T'ZZG#SB3 MSTH.1BQOBMC%"#3#2/<$7!?'*08>HMV=>,[$64(/8KHC^ HR3A ="7@J:P6/ M9K*N^T'DZ4?1/"?=?FPF>6-!(@8M:;<#5:XQKN7 M&(D!/BH-TR;23?<6:5 LV6]+EOERAOAR-FP-@D&:&<]^DI"2./2*%2Y2@O,\ M2 Q%DE7/&#@T(M2,>YL;#PT A!%=@]PII97@VTFQB@8>6CNP"JF.HIBP+^4; M;3U(2Q@- !:='8<54"A^Q#R_O#72EP5Z)?-!(D9Z!PJD:M1L]:=KQ.4T:%., MF)$I6+X77H"9'X!-C$D07KTC-B-60,\*ULEU&98&JHF(M M\-I"G>F;169D4-EP(YO"%\ #9&LZH;19$.(C3Y*G@G*;R!V(F&?B4AE3A,TF M2I+C@>(9GL=\R;WQ+JP0V@1!UY8U1>#\Q.7GG(.A3^Y=DB^A&T=$;S1":5/E M3R,O1\#@KT'^ #BO(W F:"36'-S%^'GI_:SB>45;%83:, 4M[8G.,31P'PL" M([+9P^O?*-A*F:'G@[VTET%VCB/ISZ_Z=W_<>BAF#^9K W$QG"&/Z,Z0VSY& M_FQ4[.5/HZP?'2+0<853(H;O.OSZ]7BL)K)[ZT!*&LUF#@[7.%>P:3,GA%+* ME:F_7/D>GE,\893JZF@% 0%)4L3/3:9.L7@*WO?4*"R5V$UT/P&.OI,_O+.$ 4/R2C2J)R)-_N$^K"JW<0V# DW@@) MMV,8<*20WTGZ<=7Y> BL2:>:!(A1&BHQ^?P ,?G )!*_0)CXM$VK##-3)([V#MR>:8JH8 M**DQJ B-? A4B=#>0>0QU;#B6>03%KWLKNB/ )V-0QB!C&4I.Q^![<^]I!5: MW.6NNS4+NDJXU4&$M2W83Q6%H5(JEJZF&@F21UF*%07HGX;VV M.J$:E^3200J?@CP;NJ#$C&=?SF+415'+ZX8!*&("+MO_1*>XSM M+(?BW#+%->UFN;)@D*K#M[XWOX6OP$GI_D_@8K/]=W)H+IZZ>ZSMQ+=HS+0. M_)G;7I'4.Q<\6&M,'^)=!&P\2/33/+"6B+8YHM8#E6,#;[4]F I.!$WYU4%8 MZFYP=.N_X8>Z22#] /'S$5@N6J71PIQ4^UC ME_ W1&2@677IQR_1+'8GMNW''E'WHE79@ZUR>R;&*TGN)\KUKK+*>0T]"S'= MF^.)QZ?3EZOL<473Z#EX)"$F M;&'5V\.M#+=F#&OK!J*G@V:MCRKMEKA2>(^NFLMF/B[)"I=7JX&I20EWF0U< M+$HFHU:9>8>(>0;H"STE2$% O()LU]E$AUI@W M;>^$9&&OWH!?)?06_W/_XL)YF@Z@SG+/KF4V3-HPH>,GR&I.@+5;>1 73BL@ M?+#6HFI1?0MF8TL60SJ]Z='EX)K= M!F'X;+UG]_0A.4I<#7_KC*_M6ORX@.N*>9T^H%3C(9:KN?>S;R"8@^ 1N%CA M3'PSV2AMV,K'1:9,AG5RW:0?P7)Q<'O$C%]Z 2XDS;:RC-+6_\2AE_ M V4^'G] A+7DE1E75)@#^/^Q9?O5IE1. M2-(>M=8R:;8E*AX)3]E.@QV"WX( M)' 1W8E'VM8$=J9(FTD<1I,W- Z,8IR"QK-C3,U%'-WYT=] ,D.(B@M?]3)# M3TQ$42M6]!*MKM,8^)T;BNG#)KC9\E;5:$T3$4:-E-B>X.Q6CI^E^;<&@E&&+,:,/JS,: M-S%*V^@?Z9OQ;X?$,V=IU7Z<'*EYE;49U#=@X1'AO>W&6\51N!TE:_(*M:'M M'&:+ISJ+VU,^^,G\'%@.J(9^*!P8&+/[J#J[DS9'5M;H*-BTBKYYJ&$5][[Y M$%@NRC4ED>!/#XY/OAZ?'>*&CPX.U&CNM[[EA4BM1!M,(K3L^7MAQ/QSOE%; MY1GP]71\N,L(!3H]K\"JLU\>#P:_"M2$/F%,^^/JM"\VHL+BD?:^WHZ)8U.G MU/JAZIUU942LR4RKHM6<%>!\G=%&D,K!STKFPT'&'#VISM&\R7\;K7"C(\MS M1F#3K!+/OWH2.>8NL^Z/$U7>C/7CXI_1(DUH.\.YY%/KK]B.]L'/^R24#>]& M_+4ZR;/Z"C34I&..J5LN^./XX.3P3$WPG%L0A@!L A^D V-JS]1*VDY( M=K M-&-Q^@8_Z0IW0IPS[[1.!<:-C**D%86W?DP=F*/&SBGJ[.!$33;MFB&R%6)R M%:UF9U,Q4*XT/\PN^9OO.V_0=9&*0,KZQIC 9]4)G#>:*,9PT^S(2MM5D*. M3*7005>HG1]J#%Q<8V3-?;%&RE/C]'1\M*N&*-JKA>5571(D<&+PBT06*"V+ M&!KF-KXIOJ7':>TK@>H82\9Y=OJU-;A+@.YFB?TQ+'MX%I#@\T,=.WBG/@\3NIC6NT]^D%-X@6C4*+NB2GX]C5Z15_C-5$>]BR.8EIMAE7,;3/ M=N2;\*(L+:!=J^5)<:8V>Y^@#&NTA@Z8,7#MXA%$,'4ES,.8C$]$H^%M0<7>/!I<.+3G&/B#\!A5Y"MSC-VQ. MJT6BA?1+]_HR>6&4E8#K^8S0,QJD9AP<-G]&,_IS_M._&O"BYNNNAWH;L^N= M%26;W3:N3=+?.OTO:3T0J:K5W!=@\7;&MZ:VE]G=]];IA8AR)V$%'2P\588/ MDL94FI(G8O/XY'Z6!;6RW!L/\2I.=.24%:PG.[2ZYF"D.;D=/+-5LWC8B-!T M'7V$X<\I&CB,\$_DM8-4PQQ8B!)I1K#4+"3.;K POBV%IVZ9=^>(=[M^U(,! M2&-R.TC@I_(M"1\Z2,7- 800A:9DSR,ZU/.A@K>Z.2AI1;$9,:0HOF-\J.%O MP!S;]/5 ^FB #RR4&N:@0Y3(# [G&AE!ZDUBTS4J@\9Z"59^ M"#>N9&MNPYA0 \,'A"2:EG,<"I"K!S 6;>'S!:3.,P\I?X MSH!G-1%K9/AXDDAWCBGI=Z^*G@SQGGOJBYL##2$*ST1UX*W T\#WT MHPT*%Z!\&!-MIL#?\<'!@3[1+(3A)87R'%EM[;L*_=>YW,V>DP!X7,YF1X@] M1VVBI@T.<;G M4JO;C:3RP$"?MB=[ 9S8Q4>(G70JAJ MH>WDN+J=%)I2N77(#W]]IGH=V SNSO>R2$J"BB2SA3*ZQZ?C(TT2:;($0YOC MS:@>^*M;HL^>T/P^J.*Y]P^\]T;]<6W2#EK2=O@3Y M5.>K+*([/?PU2WK"LAF4B;[Q+BRT9MG@:0% -'6M,$SN!S =(B:$IJT.%TI= M,J#C;+=] "L)+%%(Z-H<3/26# 50 Z(EO:_M%S1U:8"1_H2.2_BW @.R*$;/ M?D'IX(23G#Z, 5J'[.C@5:^R4#"%)!1"&NYIG5UJFXI"K6&JLYP4IT?C8T7) MDK=V?'^Y\CU\&8P-+]G LR#+65 C0:.5<(OE67%X.JYDD-8YHT4F1)I!2PY' MNCKW*KMSG\V '<'7[:+QB%;.LM>"Z,6[<)/&8T\22R0IU]J [S(;->)'ZO&+ M(YQO8[X+XDZH->,AUYX;G6CEFN3V$=*+SJIZ$3W#CTI-25&J'S4NBUNX7T,/ M1B!Y/% K:_YEA+LEK9:0=J*C+23M^-&IF?&XW_6$._F)T.IR7EU=Q)(!M5EM M=,H*]$.UJ\!N7AK/J::F$5Q,Q)O4:E5I+D@>]Z&63#$J>B\AQX_(2H(X4WU M0+@\WA0 M@L%="!ZAN;2CJ:R9L5.$\1PN]]@LT0 MAYI.1QV&\3+]FZ">(*,3K58941'3-(S.F-.)3M+6&Z$+Y!;Y7N3;!%]5\#KA MM6_X R!4 D-,25C 8H]4\.T!)\:$[JY\- -9$."'DTG.J'7]1I+-T-]0P2B\ M\1X 6L"=Y+=+*T+::Q1 +X1VDE!"#E:['--'@WSOO)3D/T92&K1,)G8)(@NZ M?$>6XX.:;,7 MTF!K%VMJ6:U$*,#\LL3$R).Y)A/2\_KY,&J7UMHRVDE"C*D[2C,7=7HLF/4B MO/< 6X:50F8)D8\\,QX5U*B&%\"S%TLK^"EVY"E5TPH0G9][V*03#<1:B#P? MOMBA9Z>:5B)O)2P>F7/0KM,9B)&=B'H2XJH[$.ESB*TJ_>8,T&.GEV3'+03) MI.*%5+S,H1.UJ:\E0T2(9C,TA\VCNTD<+1(#'D5?J"^L%2+D:@D"!!.OP+00 M*E4G(!772K -1,(C3PJE.NW\:)@@C* ]Q6 .UM25N[;L0&1)$4=5FOR$FK&# M/R'A@.2)C&VY_Q4','2@C2FAPH%1RT1@-"%9M4'T$;ML$(S7FV]:"4N>S9I. M7R:9MCG.)-]%\XBS=E[N?-5*I&QAU BN^W6W7]%]@QY.AER? A\)[:C^^ )!*_0)BVN=<6TDJJ\=9:;U$SH;5/_]3MO,^KP MRZV,OI!XI4@LJY7DA616*VI. G4ZZGRS/"MU7LT&3M5N":5U%2.G/*HJK0B= M>BS9#?PU;Z$';B*PW%VF!6J6&?(5,637'6UP*W=;ZC,XM,VVJ?CP>Q=CO.,4 M@BL_B##;\@R"A)6!7&%@&*%+M[I4"!(^F%#H#R# 1GZT#-[/GB*PQ:.!SE(\!; M,AIRE>ZG^"4$_XCQXE7GG'XK]8XS=[EK>>A,5I\I]K)_!G;NP'J&+PXGLA MSH^ 7A$R3+CXHS*2Q2I*U6J>THA7OBBV'Q@3EFU;%4(0U)EV2L4TGQ.0Q M6&_0E((!/GO<^B'IH%9?V'"4"!#=P?F]F\UNND9ET%@OT<$SA%'R>+QNQZHK M5Z;\U!1QB]&;2?JL$TG+S&2>.U#B0)VU$BY\-UJR+#HSB9YK-'<[=D*^\6PW M=A!#<9!L]#\<@K^92W)=2X:"239'0<]*L@V)B52?J14$ZYD?X.@T)$V17,%0:#0D/ >+3H;9]B&S=S*Z M;.,;$BRT C4-AT]3#N0XTLG,VA9'])Q-M5\C[0(\3=@.*I:,B(' METY&7.F+E/ 6)]""X?!JRXD<7R998B>(HPYT8SSKGH"-LYTCSEZ]XV,!<-)C MPW(5IQ*_GUU9@8?XA2W:21C R1++A( \*6V7)7&FN^.D*":[XU&.5IE68!4O MSS;FS/L93K>2),Y*I^]_ M>Y]H/O(4E/XZIK.,":\R '4+=F8JTB<)8SB&;1 M4,/OV"[B7P*)V?AJ5QXCKA,DHL9"<4>2/G'R@ M(P]$(YAFG$8[75IN&)$_>2JHX? M ,X7$5H=T4BL.3)$C< MZ2T7)_WQO90'DR@*X$N<>,T^^]78V=O(VI08"2T;-@!G'3&A Z\_?1:N2WRN M $YE+HHM7:16# "5#(H["52OGV:\*94YM3UE%XO"0>NK>;9$E-]"83L=R)_" M49 -9:_:MKJ$+Q]]"A?'^6./9Q^[*J+!.E:$K6C54/CM&BO/K_,AKB@2"9?[ MTKT3.V-?SZ4U@8)$X6Z1(\2!SE_5]O\@6K%LA=A?*S5. G5Z$)V-G/H,NE1& M5Y%Q\KZZ3K.IZSAKH9K;'I[W[Y37X 8(GDV=*?:(;$M*W^PB]27;K3:;F#?' MUPBWA ?R#5O1"B^=[MLR&61&X$^-W'@U 9X,;-2=,>1PIY=G^CT9,9X#RP'5 M8+MW()HNL 4PO/&J7\5,%T?5?'M)KR,K:W@4;%I&W_#=VZ=1UOL(>K7%5!HL MMGQ@62IJ2VH1;QK+-P[P-*0;66JK:+ED4*1"CRO-H$O29%\E:3V?(BN(.G7A M3\S]5HBF:/IOW?1%%->Y]W-6+7%I?'"J-(,KI_1;T]=6T3A/4>"!.5:3-#G4 M=+DL# 08C>F2=/^5+@M77A42VN@!CZCYX!6$UWYPZ<D#%?X>M M!^2]CV9^,'*R_K[Z3UZ6@/R5PRKI0*Y*:I:(YT9WI$FI,H:\PQ)&#JFP@6T:)50P#B3"I>E@RR)%S MV(B_S$-)81/C?;2HSW37M"U#\"&?!Y(4$>565S4;T:[B/0@0R:!:DO?-KOZJ MA\HZ<1R8TG/C(;UQF70DJJQ6_&W8RNJVWU&A8U.45+0K'#>+7-+/VL XN8JT M,*&D%G:U''N^.J];K0EM*YG8]CO1T=88ZC M_G]PU/IQB-\L*7$!S\;T6T!^'U(NI-44%>)O=7YR4&;*4Y$-J1/G[W$8T=WW MJT6-E#J+ODZ,SRIE7[V J"M2YL48\4*AMBY+UB2Z9+VG\"/+5;"]/@0^.@I$ MZP<7.\%[SM4_8KA*4F3D[N]7;OJ:Y'Y&+"NV,9]4-^:\Y7\;K7#;(\MS1B!O MO>P$#[+AX)]7U&HJ=W@BJSCV>6;='X>':FS.3_8".+$+*%"@^"4 M3(W+5!O*]4P )V,R7*R?4;>49,D<-;4"BQ1YUQJE&[%!,P]L B-0I]34RAPU MM01!4ZD)R)_! 9WD?XLV9ZH7]K; L*3)D$%5F@Q"33DP8C)OEDA%>TT5-J;P MJX4_ ! XB>[$15^U&]-%C)@,O3D5&>5"AB."@UA3K@US4KF7"'*%#P(*L:6B M@^?Y,O,;U,NZKHBATN4F55(R'.43?L,BZBS?*66H\$6HE93:1KG\MQ'XOF/( M3ZT5Q"9/[-!-7_C9%0U'24,&F)&S]G>P@+;+@$BY4)D;AX@;)R;!@8-824EP ME*\9:218$/#M'832AL-!A.H.4NDH0,5U''@PPI=WGG,-W_%/].6!7,%P; @2 MWDW*&Q6V)[PW+GQ7P !%KF$X1D0IEY5%1SE($F40^F[GI*@C*TL"S8MG088Z2^,X3?KG2[4XO>A"Y5) MBQXO_#KSO[AEQ,-B5]0* 7V[X-"Y8$:T;2+Q-*]_>B4M,=-0R )H(=/>P=:A M)C))O(Q=[*Y^"=#(;9@]X5NY(!&DYTR6.#38/Y._$_E$N@J0U'Q9 D=Z/!.3 MAKY.N63*FP8BU>0W#K0J9B-*F/*N7D5H@I'O(9C%[BV.W,2>[&5P-?ANC>-5H()GJ2M&*\L&_C4D3 MS3TA<247+[>X$RPX\IL82@VMP"%%OE6XB))O*D*H3V:H=;1$B:A8N8%!H7GP MT)CZ870_>[)8[E&54/)2:86OIS:*K"3XD;R0-N6#&;4#1+D1 M2;%(F1/'B!.[\:0&<%8E(H%):5?K14]'TLQ3V(IB?)%X/TM^S_*%"@95^EJ- MW9"VCG[(.\"1&5S\Q]$JZT/I<3,='\?9LESP!SIN'QV<*W)?"T, [A&Z+9Q$ M(QG8+;1>H(O8NQ%<#.Z0G)[?@/L*OB'I+TCK?=/FM)KU')*JSFRIE _E2P\17RTA]7%01 -.Z\?2:AU6J"SX[CDP3&*' ^?JW49%)TO\ M6Q/@D-HR'$5"9+=]A,U(/;>;NK$?A!$80\ 0H?3P42)"6%>/KGNU'E]8+LY# M\+0 ()JZ5AC"&+KE'2MC6M3&UOS M:3-;:V(=",^V+"FD7/OD*OI!4X6G$6Y*Y$XZZ1L'C?O9-?00LZ'E/OAAXF5ZA=?X$+ZXJ%;8#%+\S6L%OA:P M$<5>2PX9>(U%X->=[]E-%K=M/:T@ULOZQJ"]DSBT^B"FS3'F(Z"#A@G%;WWJ M]>#=DPE-^R65U4K,XCJO$%EFSN\_ )PO(N!,T+BL.7@$V*,T__@,@N68:^*S MF]$**N+29ZT##1E@IEZ\PXS+S##XB)2S!Q#8O%H'NYF/!2I>!G2W4O5J5Y/P M*O!K->/MQGZFX?._%C:RX[&:MWWIG4 RGDL0V@%,P$9[SD>IH=5TYN WZ8J$ MGSC*^I^?&]7(M=#@H_'][,I.@_4J+W\%0<$'+K8 M^3QO.(CO]#YCE[DJ# W92LME3+[W*?D+ M+!@:@G0@H\A/GX1J_!245$CY_,]=5[D6@+RPIBM '?_)LYM*3"=69=4WV8_8 M%GH_^QZ").G3_0N:*QYP;KRK=WN!XQI?^X'8W66+%@>*(=D4=[J/C/O=1]*# MX;/U#L*'P'^%(6H-L:/P9[&]XK0:#R!M:Q3AQM( =6DW([0KH+VA\%'E5K"A M>#MVQKY J8%@V+Q!+=<.41%6UQ;)##'E9C1CRS5PL*VHPAJ1Y1Y_N"5 /6F.(.1&=QH\WO0T-)A"=Z MN >V#YB6CE6>;M6B12VQUUZYDLT14U:OG"^93B"VBO%5UA)1LO% 1EP#YIBB M<^4L*&D'S2#&T\0'!UIC%IFVEC5#V!Y4 ONEP=J8&'KVJ*GZ=PFAI77\KUVT M]&_M?@2V[]G03:/\8I>"Y9*H 7ZA@!=XW_+FH3 MK\0SV+&)EP>#X^5&"S#*AO2G<&0E@\+%1TC& -^>X@+?/S]]'F7C&X7Y -,B MAMK2C_!Q0?$=K!^&4RL(UC,_>+,")Z3Y?3-J:;GDB J#=FO+3[5.3J,;#DSB M:)%?4:-**X=_>+6XEF@0D",/""B4ZC2WT3!! M&$%[BA^5!6NJXW=MV8'(DB*.FI,#-Z&#G]&E$_=_Q0$,'6AC(NA/ .BURJPZ M0ZS:?=,R/$PT(=F,9"CD;?*6X>7/45-+J,A1#)I2;P9JKF8S8..7,)MYAX^* M=0?T[%/YU,1SN,B';-'J7"0A@5:EE+?':) M*EX,M^?B1\)O_;4*(&W;;9K<(U8^^TRYW.)AS)V/C<8Q*H84K$@=1V0\@E?@Q4A& M#IC8T2U>UG;B$E,/#T_'QQ\&GI*8U3:ADQZ^DV3KN_ EUQY2HLSI M(!>4#K$$*EZKJ?J1QU6 XF$%*B%M=UPH\QX+$05&5M+IZ,_NMMM_-=4Q\OCK MR8F:+:NB9.+19G_+=O1'!*_@%80X:*!M!['E\CZ&:]9H>:H=H;FZFZQ:9[?* M3)0U7CKRF6+*I5!#UN2GH&L_N/3CEV@6N^@;=H(B;7[R.](2K!U 31J>17GY ML3&>_TDJGO,_[;$KD6^ZW'K66UW$"$;G^O^+"(8SB-\X^O;/^U7=J55BRQ\/ MBETS3Y>+2>GK9OETPKLPEFM]/+BU88RD=X/Z08F/P?A?1.+V&"I7N:PTOP=G M)QQL>P^H8:;,"K_N />1'!7= XW)C;9W:35&XFX<'YJQ[1(@.NS,5(K^O/2# M"/XS^;6]KL?1R<=#8(]\;'O%IN&V+;0)[[=4,7ZTO1"3Y3<@/2A-@7#V!DFH MM4>0"&/:7HQQWN[W=#7VF^\[;]#%69-N4&/>'+L[I S/ X]D.33+'\5NRGXU]JD09,3' Z@IH_+"C,(WYA5:,96A4#L_#D_.U3Q-MA? MB5UP/[N&'HS +7P%E?'2HHWP-Z#58M124M4%IR4?= I70"'@8OW-^KL?)'G= M*?%)!%HH<^-8CPC;+85914=;A@P$'EM*[JPEH(8M$6Q%2YBTE:H03KBYHA-6 M[GRL?ZU !";S "1)F^AY+\D5AH8 ;GE542#(!#-R7$[C,$*J>I#D#<,71 NX MHF.%4N,#@464"V9$OIB\^*_@FQ7\!%&:C8F*%$+I#X02$0[(BL_: 4+"("J@ M _VV10;ZY<6OFDI=6D:)YM4X@+0IY!JI^O.5ZT$Q>9KC0R:;-H] M2>$;@MDR7A+E4/JNIR0H8RO+@DV+UOYZ+$E:[W1)%K\/79),6LQ0;RB;P"TC M'AQ/5:U0H,+H0N>$Q@J0' P] JPZ0F]>O(Y] 'TG;$XK&BM:8FTQL 0PI@P M6\PXQU,X\EO@APV6K:3:!P82F?Y.TP+OOJ-4#I^);J M1!TI*AE;F(X4VVY'A7X_HO?$F1I7YGR4-\N5!0-\3W-+UG#J"VNU3K240'65 M$*#9#.TW)YB!@8\A=9J0Q(T[L+7,E\ M7^^0BO#\!MQ7\ WI(HL&YV6.1LW&6@>\D:6[:FN;J6',WX 5/+_Y4@"8M;7' M'1]+.GCV-PRXH9Y)GL8-6]M#CIRXF<."7&3&1JN5-B56MQC3X0Q'43?[-,(GH6MR,C%#S23 M1X33., 2:1QL\[SZC##K:02RKA(K>/I@T$Y[&Q6";+8R>M<')^ FE6#.;M;( M#S4W8-5P)-D02:8L4ODRZ+^J?>777 0U!BPABCNP9JN/V[+R0[AAV)H.$$)I M8^$A0F^G;ALRX[,D3P7N7UPX3Y^6U(N<5M0X>0L3VZF[A)J58!MP'/-A%_)) MVCU\U9#2WW <^-1$U""D"(5:A;2,PL)ZMYX[#7"X,D6;I=3:"*^ER1K)#-G'5-18XS:GO)39=3X?AIX4?1,\@6"9)9KTY M_O$2O$1"9]_Q0?7LFS3\"4V597+JQ6VGOSFH=:7^70EY(HY<]15^')VK.>=N M1';A!X'_AO905EH(2@VMICJ$__BY M]OC"K*65L)N*;O<ZB"(9=[Y7NZ"QUGY2/:TD+2PWRK(O1' G._]V#3CI M" S7, BC&^_6"J/[&/WF[OJT<=0P%@" _9\6,-%1:OM) M5&_\\]1?OD O>4,;4P\2[,JF8:0%U;(LSXK>C9*LA.T?C8X/JH]&Z:9#+=^, MRK(I'E>.X6T42)+8ZH)ALRMH-9UY>;FC-8H3J%,H6C2!P?ULBE8+&%U;=G)C M2@EA32JNE2 ;BJ5F!Q>A5G>IWN+%,J!&GV95TTK*C83$)V,FS3)E7;_.8KC> M^I97&[^NIL1@1,/D[<[RRD&FWC')D MTJ+Q5B5P7. ^_K&T[*%O9H)T$BWYRF5(/>;5%=5*CH)B8,F/0F'W![E'\.J[ MK]";[Q"S1)HS=D#.Y3 S5:$%Z!"%^A^#L M$(I-_\".\07>)K<1&1@MFC,*+;+YH,=F3K"[8]&N5V&FN^IKNA'0H)OTFJ6&BTKBU%8L/:J5IEI0*PD*"8 N-PIUW=MG M$E42./>O(/#@?!%EP0&\.1X9Y:#%KJ:]N"A\WSU2-:16CR,6<4]=@JF_7(( MQX+ -]D90?5J(OI M($SJQDPHK95 Q>7!(4NE^_3U=/I(7HRW7XDDQNY7+L,[:TE?@$G%M9*GH#A8"VN#.QJT_@ABH$5S9=:-U3[,:XT1V8S0P[0O%KC@-L_P7HL45B6M\-!Z M7VY! 6WB1TZM%?H2K4EF+($FAH,>NO!KS%QMN6!@,-6'P+&F_BLZ;WK1U%^N7(B# MGF:Q#F[A/V+H5-7B%BT9"B*)S.@@-;E.4'KV+\ E"'"26:P03EXMZ&9)O>2A MC-))F>>'I^KS%"D$H"B?.DABW@TV,T(G\WF01%3^[CF!]>;A>R@6XCBK&HJC M-M1WD'"\&W1@ M[US[08$^INR9E0S%0#.Z<_/>02=@4./M6)L-0"Q9PD[& "-0TH3@'!XFF7_K MU*ZK]Q4,$DFFTTC@3F&WJKG :4Q]CJ)N#,2J%IFB"0*Q S"S*M05+_/K2(.P M']T8]1@4YPCI)@VYVFWH?H;^Q==L>*%E;$*ELB9C@Y?<'!@ZF7?E+AU3*PC6 MK'LE6A6382)(=8X6_6VZ9=(>K#7^Y^K=!F$XM<+%M>N_U0)"K+)YT)! ?PX2 MG:RU,I:41^#B(%WX23B,DCT7)'G/$VZ%8;Q1]BEK#'<;YB%+'AMR@.EDWL^*O"7@B%2\S*]C@\[= M0A3G"-')NML6(6@S#R+XST1P][.-M!KFYC!]/D*::S=2+D M,L;1&BCS] 3Q],00]+3D08ZK;LRZS>S]/(:ZG-#4@&VY-2L)9RWSH-&&\!P/ M.AEN)=\0 J$+0E![6V8"3)H0G,-#ILFVSQSK6T,BMB).44%T*@/H; ;".]^; M8G.BBU\YW*\ ODSWYK? "D$HEFU]?##>S;9>Z#=)MVX7>T;?4>>?[$WO(S_O M?N0F_2M-NT[A&3,;>Z,V$/).#XY/OAZ?'1X>'IT?G8W5Z">W?AB6AEJ7TIU> MN#R)OJ))=*H^*$U[8=0IL=SD]Q#%+< 3*%K?XCJ8K]6X,L1R6DI,@+N[)T]> M$ON72FW(&$I)K20CQER&4"CT=2^6"U32>_3C.;CU8QA"R[/(@4*(A?47#H7) M.^(1(U+G,#'3A;5<67#NW;BHL ]#2D"U^J(FR56$1$DOZHB/ "D_ M!$1,E/%'L@>M'$;A#)[_%U$(]0=IJ32MOF*C%Z)3T5+VCV7T5 MHN.A QU_:KEPY@<>I,B86-@D 8L1*>D]>4?2Q:::"V#9"Q[I$@N;)%TQ(CMX MXBU-MO>(WP&LH)0L7VH%DV0L3F@'SZ7EI3"':'$(H0/X)!>L0_)(2^7*X#S_H-8/<+YLPE%C9)KF)$RGJL MW-%T?8I\;YT$'KI;,Z5+*&N4<$5HE/72N"/9_N'[CHVVE=FM]1/<@;?_PNL# M)?,OK7R9_M/3\?'!8&4L3&<7;X%UN*2[)80O9E?0"@ZMKGX:TJI'M.KV$4.M M$&R?PU]2(C[6%1T&"NB"K$$"+Z62KC/D^J$3+"EEFM+G.Y<@M .8C+K6H,*H M8Y;TFY-L8"3ALD\/8@CP0I(W1VU9L[ A3JJDJQ'6TJ#>%4S4W>M0S-WKXSIS M'1\?G1^?[6>_!JY%HB_%XA&_+X<4YFJ1D*3_[#JZYDT M^^D%MXLF_K9AI?.^GE;&1&=54I&8W%X )W;!_>QJN7+]-0!/('B%-D&8$]?- M3M+WLT=@^W,/_C-Y$X%4H.0Q)LVELY.^RA/I3 __0CYTE%*A]\8;28N,JX<2 M.GFS B?/D$S 7:F,GGCI3?I5Y+&Y(QBX&@84V]V2SOUAORV2/2Q.^ M;)GC.0^NY3%3W';1E9:09<.F9I'KBSG#1VSDVS\G*S1<&R9,>L39\\*GR>-3 MK6F>NYZ66.H-%S60;,0P/7R46Z<+RQA&V3J+1?2$CL*=D\D?&PR_*X2O R7?O(JU MH+7PN)9H641W<@/3$2ZN\.[3"A>L%HS$12.B]7Z24B;P^0V1M&Z."GI](S'1 M@&2=WZHDA-PG(Z(+OK:@(1+FITV7%RFU:EL81 65#?VV5==PQO5'?.RI4I) E$R/*H?1=3TE0QE:6 M!9L6C2T8+#FF2=[)\ ^?9QY'(T8"N M_A'CM)#TRQV>JEJA0 ?+56.F$=4J#4%#M73Q5=82.(V%)XX#"AU0K\TK;ODN"/#Y @CS_J!-%';\["$FH>N+( MW7E_"_Q*2K@.>]I/BMZYVT&TQK9II)0I41GK?D_6F;L8WU;0Y20V^\*(!>".W?+3>F'BBZZ&\_(Q3QN(-0H-M) ML9N1OI73Y3WSMT< MWH9$FJSGW!\@>03L3- H$6\*\_\[*GF#X]"A^0\]=,3:+!*9\2%I*S5@3Z+$ M0H?C^5ZLOX>H\(5KV3^?[ 4:0Y@]/42,1A^^^0YP1:/;54);IM'MDA&,BN2@ M3SE%HXRD48&F$29J!+U1@:P1IFN4$#;R9VG+H[3EE+B1%8T2\D:8OM'+>I10 M.$I(_)31.$J)'&54CA(R38NU5P[=>(*FZ.Y]Z#[\GKCK[O%8CXOE!K*O44%Z M8Y>>T:JD/U+6!AV]"78+*C975#^/;?9(6;5,V7RMD0&%#M52:/Y(61M)4,96 ME@6;%HV]XSM[I#Q .3)I,>.1\O ?D:G&ELH=N$_^FH'WQ@8*F@WN$K\@08?C M1W0 E7T?P=NOEG.B#UQ*O(QHQ6M3GA5+Y=XC#']>!P!?A@($OZBO&5+7[WZ& M*.;U?@\1KW-]B$R]5#)*7=]UH?:T[T MQ^3NXETJO=1[BI=+*UC?SR9VA+3*:'WM!\7G(TDP'.>[AXC'U2QO_80#@PIF MG#L\..)..H4^I6/"5VS1 HRL;&2CF1^,0CRVD9_=T<%D=*,8#R\IFXWQ3^$H M&:5IMVK[*[3VA@M-%DT^=/1\7U9>Z^J.CVI?N+1)J*&-X'L38Q5"3.;H%'2N M;4(-703.9#I93A2JND^H(3$@NFZBH/!UUXF,FS93;&X&W,)H@C:5*WT?_/W@ M-K3JR[)'WW71^0E_[/ZI8*$S+='?!P(E6LK$&6S*@B^19>F+X^ZQG_:C)>Q[ M!&"GZ*>P6!+P5\DL?XJL(!HN^)%\9@#BL(Q=QURKZ6D_ 61/ %XFMU5]SM,I MX"6O.3QL>VFG#39; MRD)U),P]IOOAKZ2;.7..H2JU\*,]YGMBL:3@EZD6?N6U6.B["4U3X,+.R]-\ M^TO>XQ+N4U4,0D48FZ* MZF.9Q)9["V?@QOL;L()PXE%W>M&7*<<"+U,V >.L+&"J/3''(UC%_4(W333!UH2 M-R\8??RGOFX#>;LO2_!8CYBT/8)5_DQIQ?F]ZVJ6(,%Q8$KZ5@,(F^U_'Y^/2K1MI$.B'X$\[UTZE6RV$+,4M6 M(IKQ;6^)(3ASZ)Q>T03,*^=>=Q:;GK;F1Q#!(&41\, ,1B&.$".V&1\=C'LW=$*-:QTZRUAPW.V8]P.G;$/"[3P0TVBRTO$:P]/ XS=EQ@/% LT M>T 1X'$&( %IL"X6FBS]V".1W:Y1+9<=04E6EYP.>-*!3:FC['M)KR&P/\_] MUR_ =M*.;]!:B2AX#BQ\S"DZ07(M).?G)\?'%;4^:W24M3HJ-XM(R@C"_\&V MP+_^?U!+ P04 " 7B&Y8OZ%VQ+1W @#0-QL %0 &ADR]>7/BNM8O_/_S*5Q][GE.[ZJ0MLVYMRNP<%!TH9^H:O.C::A M';PQ^@M==1-&/,*N74(*4-RFHD,:=&%[9+H:8)GPL::M.^P']C&5B4:COQ98 M$)U6(2_L?SVZL/7ZQ2LQW&H37]U(U <$"DG)_J&])2*LCPUM2:6X5RI#EE2* M/_[Y>P2!\,_?8V@ BL>*H: W&W!A_+((@Q_VP:DISO[[P[[N,Y83^./7/W\; MHB'#?_[^Y?QK-=57A>4_?POBC-*-I0S_^V,,M*&H^ QU\N2G)\9O]-)?Z/+6 M/8*H3V2P?%)4!>(;Q,43;@UJUD=1$*!"/J(;4AK@\9 I4Q&-*I;9!OK0JR$* M"D 3>HU:LK<*B"_!FK3P2XE QC>/IN*38/ 9449_4D09C5 S$;')@!96&S&] M5Q[T&+;G9WJ8U3U9,0--48GVI5!("/N'/9%=VQL.4N&DM$)^.:5#37KJI4B*6*LY__'/,4?TKQO.( M[H+3!40C1+.R,8*:ZR>'(C8%CA$D:6I$PWM,SZ9(7773I]\7!HH$#8.>LJ&0 MWZ?6H]'%W*$/,IQ/'.(7(@4:O@;DK"+ 11XNK8'6^5[$*"\J*\',-Y8Q.EC0 MPO1PJC_WD&S\^(=&_T798)"-?&F';:ZE1)T'<@<"C5.$).+@NL^59E -+M)F MATZ :"B99RH^-1WK^7&??3Z&18[R2SN<5'ESO-7C%/I%7_!P;(JM5E2:]BM5>M7J%DKB\Y4:G"H]C1:!R6\YV\V3#3:6.U:+6CLY+K-[YG/,_M6L7T44AU]8#Y7!W(8%Z07ZIUT.FOSB\H"Z^Q>V)J<%> M<^6' 9_,2A+;\R5"LV*]O$K.C[%[5YV9+75F>GJP.(>-12772,>:SRE:F==5 M;2W:.(!^X@8#B+HV@UD4R8]A'2RJB*15B%[#HS&1YDLJ A:"B6Y#Q.06$T16 M=+L!-07(53B#B@D3J@!CO%$0$9@DSR#?PR.^;)%=2I=R\5P^DZ'+J7&IQD0: M?3$S_+B.7!_5B+C448\:DWT$6HWD7'@<;YJ2F&E/$ZLR&%YP&%I*8PFVU%)K+G4A(FR%88MG)\T>HCB7D/:K\@Q)S?8].T2Z*&W;V=72 MUZO6IU)^4FN*A5XP795CGZ!MGBYG)NWRZD6:#C.-YB@)EMH,*6'E8Z0]@+3( M,"J:BM3.6!94GMR\&6 <&*I25](0E9 CXZZ*// M&66],5C$D?$$B$,E*\NBHHJZ/=36*MS@"X,P(Z4CTX3:;@9TR+Q"9F\.-=MC MN$%J;F8:0&*36HSKY[ABS!XJ"BB_=:BL(CAWV:..Y5?%-A-.(0#-EI+9;A+( MH_'\W:,>"*-D5HZO5#J=J>4S1;9@M@86@T,^.OK5H]9DU3!@"6GT* $T%0W> M$>@J!XO+V&A9X=+)< [X(^EFO?#^\1JKYF21[65\=*W6&^7F>G.^6CV3\0:_ M6J Y'34FB(*: +(X4#5%= ;;:+V I+X(#NAQK99=-CG?L%-^O_:^, /%)P5* M L?FC+18'M5@/FJ)=-A'A[YTL 55&<8AX$>O!ELMA?C,6 K1',BUJK!FL@F^ M]W[.KFJ!XEP99.99?J@Z3>?*PW,7A4H0PLFXF]%41'' MYG@'5I8GN!62*X="747\U1@ ML *J%.I4LVDQ,U5+QBN1J"'/!_&LM9!0QS@$M+B@:;BC.*"*+S>W5, 2_Q2; MH^ V!42-)&)BJ']C\F(=!Y&\@3J-,/$VH?VUJ98.C'LMKKS*^1:C5"G8HW$\ MX#]G2G'G=*"?G#^O3*[L+W:JLUG.[+^&IE]$DL%(F:AT1B\W?'"\ M,.%H$@^U,4G83O0S0)[=(@K[)E%6J4%S& SX0M)2?HF;+%\(%\7ODI-A(3/. MM5/0:"RE>:[H'S6258SZ*\'/R,G[$BA;0XZ_/>3X[I#)7TVHXVR%%=IM#S(9 M,,JYYZF>:+1H?Z>98?4)4T/NLQ+Z? "WU@7'0)#.O#(;Q%S$)A,-\E8RJ"H. M1X9>BU5KMEB(XVB;+?7D5B-4+*?F<-@H#'I?1Z/FN#WUC0;]*K><54:K<3RZ MS,>>]]/HU_8T/GU.7\[C0!5QJ\&NG3?)55TV-?"-E)D\V8\@(WK)2&Q[8.2O+M&," MJ@J9YW9S"L]_JPKAE\V9_L2?\TT50^7R%:C2X65ZM$SA3+[5%4@F0)QOHH"_ M#T2H480,<&_U3R*;WYYPW7W8:4Z'0]QCZZN 7K:8R"(O&E;7*$$_-HW[ D1J76O$28VL/>W@0Q#'/ONM37] MA,VM]G3N]A7GN_.27ULR<(I([-KHSXI$JMXNK8"\[$KY@3[1)ADIW,W>1>)4 MD6!/%PGV4B*QZZ,^*Q*%2(I-->I=1A*[RRH?$'-&,7@7B5-%@CE=))ASB<2K MF=_WR4 5&D!4H, !%/QQ \Z5+V=P3!#(A!:0*T 4LDH"3$0#R XL"!2;Y5BDT.' ,C"GN92: M+P2OG<]'AWQE['ZOFS^@S_.D?Y@%:F0N@6A@-"DDQ7*U>>V&_4OUF?4(@X_K M\W/*&(8F+?.YP7)".>[3IAR0[_KL'7:_%Z,=T.?NM"P7)]-,E N5DR%>]:VB M"U*=?"CR[/DR(P&$E/5?]=G[[";/H\^BWI: M+-+/\SP]9IA8)@G\RR)[[7S^4GVF/<+@X_H<%L02V^ME>2DO#Y:S@AFL:/UK MQV'?H<^78O?G,ZTU4=?-ZJPQD=*S8+("Q\E@NGCM++YH#L6#8=1KMG)5>AJ, M5>N51KE94T/S\GR5CMS9>EUH>@];:9!K#8ILC M 56OV#DV]FV^5]WZEL MRR\4F-%*]*S!SI9I(P.-F61Z%L)\,]O.YMM.G8H_4V&F$BPUE')V7I=:K7!= M;E0F@E[UK&Z>,N@-KCDXZIN:J#^UPNM4M6=B[;DR[HXF7,V,]SJ"OHB$FW>U MO\8*KE-9ONPIX6E0S\\XF#$X1BNDQJN[@[[*"JU369[.OQC#:B4A2^(RQKRD M^N6X,KRS_)H,NS>6<'A,8A 9GM9$^?$/_KI%E8,2+]%2+P2=)[!T2TMACEXVN$#4:+2$93);J87' +=CQG,JY%8+R UK]F]P>/"LC6*#>2\.8PO2$1Z-:O"LDKFHHW M?"UK-:C-1'Y'*JS?G*1+ ZYT.K%@N;Q9;.155DC$NIZ3 PC]@W*)03N47F# MX5^8@SG*-[_TO <''B;]0?&=]-"L"^G\PXS'VJWGX>] M64#F6F-19)50+5;W7R'KOX;A7@@-WLWP;3,?-].RF?$WDU*B+2<:TW"DH7ES M3MD+9OXJ&7[(S#_#VBKZT@AE&ZQ2S<?-EZ[W%#] 3_O=VP2] M9.09/CW!&/7YZ<_+ZJLEH*=6PSI[O..B82.F"#AS/\'CCK^>LVC"D3):N6P%[ DDW!C.;1J>4P:_9%/$2X@5.0E@ MI,I"=CS1U!FQ'.L->_+Q7B\R* :X5E==3N8O0]&H>#(%XB$9.T+0N\!A@0/* M/EDS>'^H5![Q+?KZB1D=2 M&003QH0V!YGRW9P=E[$=(MX%R]KV9V(:4-L5L%4H_%P.!!9%;LQH\]12E5.^ MU5W C@O8 6+>!0W=&S=%1 )EZ.3*ZH$5:Z28/&W."KD65Y]/AL&[DSPN7]LT MO(N52ZSV0/X,4VP&JLM A5NJNL8P\W0W= \O3Q2Q.^S?*VXQ78>&GH&RT% $ MJ-F[M)*8W!&[4C-#Q\*<7Y9JT6:"+4;J#3U_]YS'Q>YMNO[1XF>=E;R414P< M1]#,!2RJZ93FH]E@;]:NUY,3O72W;_L%CI8WK^^BDSU5+#P0H<"/2.M!/2& M_.S)R4X/R=B-Y_T_+W#[\_Z]?J,X2V9KC%1[YF.9ERG'P>)=UO[4O/^GQ>Q( MWE^?%>,Y;EGS2>EDI A?%D9C=!W[,'RCJ-UVWO_3XK:;EBUGF6*J74C6I'(L M/ X/RX7>;'@5F/\;9>P&T[&?%JQ#>7_9)Y;5K%Z.-B!HQ\%"7B3]44_6,'I( MP&XX[_]I0=O)^V?5F-9.Y:IS*9%[GJAB)S/)+^].\D_+^Y]-K/9 _HH 9O10 M[<\Y(':3$B/(;?4Z2GT\(&)WV/_1O/\JUGP>1A9&LY&&0GL^]OFF]>P=FMWS M_I\0O[UY_V$W'8,U-MFCIP(]8%[BX71=O*J@D6Y%L9L< M2$#CEF9":K4A.Z"!YQ(4?V2J_6.I=/1^S>2MO3+1DT,DWHY6M])+I=27.FK# MY%AS&!FPW9B'C_%\7];[\+C_$,;OGT-1^[K4B>2[37I<;6;C]41'CJ5NA>>W M,=-QAID,.3U.Y\+Y3JH1*F7TY\8DZ _D;B.BOO+YAC//)Y1BQ1#/-6C8,$VA M8P[#$5\U8>RP#7A*#*3U=,QI22&ZG@S#BC^>3MX',OCX#[C&V;S+@B6$X!Q2- M?Z&7(ST7+H *S:1O(XMR\0RX]YBZ1XVYOC\^*R4"$IVF]6%'"/JGI>R-J/%7 M9L"]Q>PC&?#&))'37M1 4VJ-FB^]<&U1"<2O&WQ]6P;<6TS?S9#Q928Z2RK< MF(9=:/8RDAXL-&[#=G]-9LQ;[#V: 8]E@92M]EN-1AXJU2*<%'*:][8JNI8, MN-<8OS\#;D03Q54ZF^AR";-9#8VZ/KJYN U+_K49<&^Q>R<#OFJEJLQ*;N4: MM:96UDN+R=*\D8CZ2S+@WF3NOEH4?Z7)=-NKO 17="!5:S33EA3Z,20 M+C *X)A@_;JC[B_,@)^-L:>>2[O>CM\ZE16C$U7!1FQ+S:O0 *("!0Z@,%09 M.KQFZXMZ#\*$1K,M?Z<= %Q.\][Q89(LW,#&K_@BO[7>?VC)^"TH"SK M*: -5?NQ@++2(MEZ?L69S\I22_GK@7'9LS)U\"":TXAT4*I.[L ;Y^'LDO>2 M-@[Y0/8T&[=UZZ7$^.*'-[T2W5$7/L?GTU6 [Y2/KH(SHO5CN=B)"\?WW33 MXGJP3FG-C80,=+T\J!DJ+VWYWXH&!U!#5".7G)G1YZX6YR):I %[C54.!)YC MH;QG+>7!0;H/&WP]R@M%:)>O4?H@4]E.2,BWTK#!A1JPPT.CFUKFO1^,>8*I ME\JGO$=3:^@E4(_MY6U9ZM+Q1442N-I2#53S4LSWPGLV@7H";X\,]H;U]AB+ MZ>)S-B2FFDJC]J(DH\5F:NCA\D)/LOCR6IQ5>'4,ZV 1,XV1JCF@;DL"8HI0 M4'D@YTQ-U 613.[:/%Z(I:@\CF6R=*NZ$!*@VS;JWIW6W#]8%X./C_;*]/AD M)B?11=T0^81J*H:VM%D;F93$K*07,G1:+Z163'MB&K1G(=5;K-T[1J\S]-24 MMS7XM07#XHL?V['4LHQ"\#14H 9D).0Q82PJHF[@5\P@MY@@DJZGN$PFT9M4 M)]FXQ/;SS56Z.9EX<.NF;>;O';_;>K^# ']DF_4X4(M_OEE MG%Z8"_HN1K>=1C^_&.7JAE)45N*,K@W4FJ]0G)8S88^[HJL0HV]-N+NMD?^5 M,3J4::R@]VC.T>;.95M.:O/:G"T9DUDCGZC4E$EHS,7[GHTX#F;^C@S1&P:% M]I]%$BR\>LID*2K8/&[X@!_2D4 ^*$<]"J8."\0G*W87V$" [6@'Q7CE#7E7LC+5,(Y$" MD(UH?784]*R<_!E<3 H F6X#P'-1VN 3F= M;U9\V56[T9I7S%6G%TLP7<]A+!MTOQZAP_XC0[SI1-$[1:%FJ,JRHHJ*4;*I MX]3&11=BEIN.$U(ZEFPKM?BHV"YZ;K+O+3$X-+R["+A$8+S4%)"&JC84P98, MM,50I%3UA_P<:.3C8P!RJ5S5JPIK))OC>U7F%@^.["\%&"#@=-2:(PBM]Z35:+R"I+X(#>ERK99=- MSC?LE*_.+1P(R-EI6N'0RG /^ M2+I9]]Y1H6_)P;$AWD5A2Q3&$R .E2R>!5/%]=[0JW"#+PS"C)2.3!-JNQG0 M(7-U\>*!T=T%X(@ L%;5E:NT+)9?%=M,.+6B6VPIF>TF@3P:7Z-%>&.@=['8 MB$41C-:8@-BO:$% M$Q5%]IQ]NUNASPO!,2L3,X6B HQ^1PJ)*Z632JMYSGO3"'=;< 8QB/75&2P" M38+&UH9\,) QS%@O0DOCYU4QVDG7*N++;1F" T._,O:SEW(%0[D:5NFI6N32 M7;;NRX9:=<:[:XVOPQ5W<_ M;R]M8G-FV/^>5=X']HNU62I-1I.)-.S3G"A6YS H=@+*B^=F]4]9MWUTG!=C MZUF7NH9Z#%%3>K.3HPR4$AB[SE.HS]7Z2#5UH.#UFO4YZNF2;)V&Q!WW>@;Q M,S9WNYUT+:TF_%%NJN:9C!HS\EX^J=0U6+O$YSVCO1"/:>R(F+.I;J@71BQF M(B>SF!.'(P-"Y2"39WZ=+?3S!:X!])1I=+1A*0^NE\EOC?ZX59C4>D"#>HQWMBW!8:J# VHC?&CVZ?G5!#@ M&D%>JFBJ 040. 4&\3,44KE1ODB;8931CUDQHK9DF=U_S5IG+K>5[3Y M?)W /J(Z6P(=I^KE'$G Q_K/9V&L<&Z3ZSN^J8"S!9(M.:"0B8IEI*V9T W0J08^E,L]7VV:M">.CMG_N5[ER):5,9M-%M\QZ-JC^[FW6OG[+ MEC.<]G&F\VZ:Z,V@+\,JWE=YLTD WI@'"N49U!0,G5.B@OJ &L6W.3+6%%E# M+90RC7$L7\I(W6EWZ;W]X;_U_)!O/V]GE[O.'@EOL_>24Q<>.WKG3!HEBWFZ M^1(;QQKE>7XT,^68; +/Z<.E1?.JQ>/ O+=5CXVG^NW2#MV]DP9T?G7J&TY< MRY)027QJO;HJZE)\&8?(^HR!)NTF6Z%BPI2FCM$SZ '>:(G&:.>U1YI]?02Z M_>BK>YUJ/3A9<1TQ+$G3"[;%GO_K'#EX\;T\LOOWE+ M%+82TF_+PD4ZM.=4^>-2=-.U$)\S$>\V 3&>QQ-*>A7R4)QACWX!K4]VZ F3 M%UMC+A07$N,0NTR]>&\7U*_2^O?KYB$FW=7QRTN3+JR.7^^10Z%IK3U?S0MT MS332\=:H5^O)G@.7WM7-N]_T1M'8>Q2UI%Z?GK*2R+60FM:YT""NIIF8KM"7 MKX(ZJY[NDOVNIG^>FN[6=MZ'OVQ$>Y=4:^E MZO:;%?5+XE"M]5R)TMUX+Q^6^B.? MYP#TMY>0[&9@PB=G8+;J3>G9'"6&&:[M,76BB_-8;:1J1GUO[5\JD:C:=[>SJZ6O5ZU/I?RDUA0+O6"Z MZMV]65;-86?FD=[%A<](IS MO<-(H6R4F4M#HY3*>BY&_(/K8'?AWZE.D#F7$[S(N5SOL^+/+7]W$1I5?(TQ M[)9?(J5JA_?N:IR[*;V\*=TI(SUU:\%W2NFP%(R6"B]LET[DZD.]7#$7JZ+G MT,/E=PZ\L9,&#]0@OU,X.NGZ6= MMH1AL5F:!:L]CSG+2Y?!7H'Q]^]$N!"6/E]ZL!,2_%2(-J8TW"HRZ5" MV0BEO.=@KP=9W]7A4@MCCJU K.;[0654R^N-=$B?E3/A,LSW/3N/\]TK$+TC M")N]!Y D?/-&!-UR.)@>,^D2[1.DG,A,5LV5=U>Q_ND)V)VM"(Z)[%7MC"9_O58*/ M+R#OAF-:6M0"47H,^+!6;B$[]>PYB/ 'Z(,W5HG_*:J!(.48)M3Q&&J\".0" M>M:F:7GPRF<8=,2(*,EAC4L#L>6O!H8PY+V]F/Y<'7D/,Z]?6?8F0[X'3+W4 MGL?MB(^=<:#//.L)P(Q#K:MP'N?-DGR[8OQQ8.J22O!Q,!5/:IVYOU$-ZZ- MXKF^)T/V8WM% M\EHF(9ULADN]^J(KU5;+87(F/DO2V), \:Y9?TZ2P3..1^T*3&<6[,X:>3,> MC21?A%%^[#G'XW5)O3T?X#U#/BM,*J%>>% 0Z@&G\V*KQ/ZX^3,4RQV%6W+BAEHBDJT+X5"0M@_[(GLDO/8 M<7N7.Z.++ZU0WN"FG9B:$CMT8);SV&+S\Q_+:ZV-94*X-"MLT0)],8:- M2+'&Y%FIY5N,:WYUW(XI7CA[T%T=Q(1.7IYIW?H5"Q_6=;E.P,%-330:Y!4F MJH*^[IQG+2#S@5H#<@6(0E9)@(EH -FVEDTI4Y>% C.D?=-(?B!/2VKXQ;/6 M\NB(73O)'!ORQ0K)O+!&YM!9Q^<0%;&9Z$JI59"C35@Q]6KN65TV/3=U>16B MXH6]\G9%91B<=A+5=CG+Y6/R["6=6RHO$:_98T]0[M )TN=0LOXR(=7Y03E* MUQ1_,1X5M'"^Y+ETUU4HF2?WN0L6Y["QJ.0:Z5CS.44K\[IZ^7,+KXMR]'[4 MXU=:<7:V6J3I\4P*S)LO]>:@?W'->#\(8.BO!@';1YK[>[%5_R77D<,C*0_Z MXWPO*V5"+2]8\NT#Y,Y[I#D3P(,/]'RCEBSU^B#/)=A49J 'F6B3\]C@ SB\ M9@)G#+$.1 K]OC!0)&@8])0-A?P^M1Z-+CRH,U\#G$U%M,C60!^PMU8$H D] M?807NO0BQK H+>;EMI0HCSO,2T]GHK.-:1Y#H)L:_,?N(WG&>8]SS?F.7_3& M2QNU9&\5$%^"-6GAEQ*!C&\>3<4GP>#K-XJZ&F"9\!-ZY!,O+-9[8G0D+.?9 MB"&5ZTR-;N2;E:QKKL!IU#2TIV+]$Z^:H/M[S94?!GPR*TELSY<(S8KU\BHY M/T!._,3[7Y@49TCL""EM'B[%UJ"4*.97C5I9+^09 *5H:S-"@3S@;JQDCB%2 M(57[(-%?/8]_3$)%'8O*OF9/E9ZM)GYM]_YT1MC0J9=(FMEPM1VN<""9#PX[ M+5C3)Z\93_*.]C/'N?%+7#RA$:BFQD/=^CJ"0"#*C[KYS]_H+THWEC*R(6.P M\,U%P1@],33][]\3(.",M4^& ^,I^!B);'[2\-2+\YNJ$\B(7B,#?!CR[Q\[ MK6I#4?$9ZN3)3T^,WZXWH!LGSFT#9 %\ S 6Y>73?^H(P.I4" MK%_0OSJR&X/__"9WZ^(*HH90F]AV^( L#I6G%U-'UFWYVWKM$[I*X3]^^P-^ M)Z!&&AS\]\>_ZN4$^JI/@++5"_+Y25&U,9"M-\TA&;#]TX]_ZCC?3ZD#"F]- MC5'TW[]P*XBF /V9[*$M+T.@/?558_1[E\S[Z'<>LCCL0J\UU/$3X_H)LX/9 MIAS>2Q=JO_NJAL1C\\R"TE59%*A_T>0_YSKAYR.FZO;E#=U_[Z4MZ1RZZ*9K M7Y4%^\'U>W$#,U$7^R29_C02!>2W4)/_^Z\(2_M_KPD^N8 ,V90X92C!\PX% M$-O0"T?[(;\0@3V6'3"]0##:[X$^#/;\$$9#?##*,/[ #TO:/CWX\ EC[V^] MQ#W4'_\T2MDZEZ1J]5B=J_W]JW\FGGRV6S4NT:AFZUFN1L5*28IK)S*Q4IJC M$N5B,5NK9E_R#:$P):%I/H%,SB0[!1,,L#6?#")-+*"1D/WT0*"3,6]3>ZO]W47^; MB /L?HS__A 7N+\J\BB*H9F( I>A;DQ13"!7X435#!>5.5:I4O4PAPU!'VF_=QOBI^UOWLBL4Q@J14C3)&D!J(.@]D:TQ+A#TH%(%! M@7(Z?EBR!)PH1(V.!+#$#T+E4@)6(3$@9T6&+@EKY_.%@%]K/#?853LI+)-3 MW2P,WQAW$O)6\M///%"X(X>DZ3LL?KGJ50,R +)^,0N"JRK6=\^C$5QX)>IX#@190A2K*28Q#A>')AQ)I:70*TODC2Z1 M3PT&L0B?ZK)<(M$/)^JT.'R)S]\'3WP(^#/L-R*47??CTR'O$Q<^*ZAYRI!_ M>L.X/.BQ1G5%MX!JZ .6;XCF\#4'/]##J$.9@U&Z3:N,*>B(^W7(CQ155H9R5%2A1H41# MI_@1T% 3?UV&L:_3)(>!!5+ SX>T(<#[^X"G>_Z(/] +1".!7B04"O68: "' MNBP D+%#6NN).H]BWH[66DTS2J/\',W-ZNU^+P#F2#7IW3LCR5IP_JP.V@V3 M&0&YTC332F"(E7CWSDY!&*\DK37A:E(FDHZ]-+NK=JP7?-VF"8>900(F=2G4 M%C2I[O._-.O#7NCUG2]&O^,#C=ZD >H#81">"FJN@^]TWFZ0?)%-6#N!PJNR M#"8Z?'(^N+D50O0=6>*,TT6\E69RN$ RR#Z;[>PV*TZ@O,UAN<@FL%6",]&&'"BJ3.L M8.='K99E1[9#U1"6(8V12?4$/@I+6R94P<:P2""X2'#) 2;7I45CY(L-A(0N MO Q[-!&=T\T]IEQ'U:2#]OZ7(9S$//:BO NO[8/=I),&>$EY">.EAD M[>DW:Z=@-TA 3U8/"85''$1,$#2HZ_8_ M>.<;9NT<(LOILY@H399TNLWF$W2!:W>98<__3E#AIVFJ+O*0BJNF#&= $^[P MXLRROS>XN@O_^X6?70N_&!W'9Y/Z:L3YI&:#T0O2L!9\[@7>*?PU4T00@HW2 M=YF_R[R'9#Z!/I:UNCI77 G#$@^C!2Y'QSC L@&_JB;4<'_X+GEOJ:K R^)@ M0!6 !/<*_>F-/>Q+GWY+%&Y3C00$9:V"WB8JO'L**2V)4K:>K0:X6N)Y/-$Z M_;H1>U^N%4M1#FHZ7-YMQ6TI6T5%0BIWQ?0\;'R,D5S+E7<\CMI;/=]) C[@[X03;\1 5VEH?D*JTPV(!(-$35I3>!"#0K4Q-1T$\_D&BI5 ML\Y$L/ <;+#ON,JG*!?,8 MO:Q8?':(K@+Z]XS+'WGTLU?-VY)=% 6QSL,%/\)[N%.J0LU'(OIEXVJW:?.> M4'K+#%KKGTX@D-^N0J0W58CG,1Y?E_RP(/IM. > Q4_:B/X(&5+9>QI)SMH+#7Q#H:$P"NJ";.*L(=$J U&Q2M>KI@PM*@3H M(&53PD5*1)0#.<<3%_KL1Q)A5B\[4#^T^L<%QL_:T]#'>OI%:U?P MWL1YS.F:S>@LX;/+S/6;]7II6DMJ=#Y06JKFH-V?1M^WSK:D?MT:EJ_3$T4U MT"]34\2& MD'LO)((TO?]".&PX^+55TKQVRE<9S,ELJ<;7G<74\^J2=-5385 M VADL9>FN]+.E:<-Z(@52A-^N]KV[CZO5C/H*D2'M'27XRMHR/ MD-? ZB%00);7.N)6GCZT;T -GZ0O+B>SI3KH,EYI20GHJC(DMTXTR$.22V)8 MJPVRXEFG?J*6!^B/;O(C2A^I> 66LRC2& %C=SQSH+_6>/*P/:2_D']4!.HG MZQIW'T)$3K/_@D:%'R+WHR=Q?^S&\.I9G?2$=!?H!A6EK18$L-0?+^-"O:UP M"5/3$%FLI<0X C2 8;KU;J6J7"W.E(+T$CFFEV=I.)UQ[_-+':A_4M4[-IP^VG7X'9*AR:LK6^H>:K4S_QQ?!OUL\^KM&N2)9N3O#2S2\Q.5;/ MUT8$ZG_]D=;!Q67,9-M8N*S#(-=E8HW%L,%-!QGV>5(+M64A=K<.E[8.I]0) MOT_G240JH^Z3R2(*0+6/AQ.*KL_16!<\6W]X(^1L8"O45S' N2SS%2 MG^4#QAFH.>2-<5^'U%!3Y\;(N?R($ ^$2,,^^8#?;5OW0[0&;;O8ZD]T89'ZA,^78X V1#;CPY CQGT MF5X@%(STHL$PW8M X ^S43X"H7^W(*"G%"6I.LTD&FE9S*>*J[[26^XM1\@% M:THU_3+O23#1X :15;OEK^ [7ZUCSTRZ*$X0&AQ=2]2Y9:L[2C7H&+KSU=O5 MMCBK^N&$Y\9RQ:QG%IGL8A7KL?M6O#.UH2_+!QI0]>?FY4%<"(2?T9VOWM[) MA0M-?WTXX\HMJ9=[3OAG0Q.W^:ILHEQB>]UB( DX&.M+P6J_)?G]PU[@1M:Q MCT0#^I"0\'C;B+D&UJG[P&/0_^UK)0K[S<6I&?Q#@PNQC^'@UU;;OB-)\7K7 MGL^-E@D_1@-?6OAQR@38[AH):[]EPE[L]8:JMKS42@F2G$C8+UG/EBV+E1', M@&693O KYB4HSI4I-[O#ZX$L[;+JNT#U+?'9:W'-8IC*P="C$\;\??+*7:];UX MW\,^&JUJ]-7%97PNH6;"WB3NQN\NT&/1CDTF$]OGZJ]FRTTY%9K%>@#BLBVW3Z]$:M8_G(B^O$#NS M:]G!D:0U7@1Z8D$+GEHC$VH(V>/*%D.E3-U*>*/>6-N)[]DZ6-7(N^0E?OE< M1*]&KZ44-%(5 TQ$-1(I*$#!QZ+CA!?>0!'?K-NGX>@4WC]"%(Y6V_E_@L/E M,H_4NQ#5$0QU"_.C=IV%C>[QH@H\80 , ^+-.C#O$'7QEK-H'&!(:@_6BXB! MKB,0BW]R)@K@8 #)-)MB;PJ GQ3Q[)N"V(G-E*;*E(KLKHO+F\#"1'*C.;RD M G3@9_^O=9D@T/H ->LK+V2X),4;/YD@U7BL/28>J3 ;PHLI_\(#WXS2+LKL MR\AZNF1I(&IC:_IT@MX-\$U(_$C)HD!Z#$Q!-.Q^/;Z]+?[E8XPW51P-*WY3](#:_ M4:I+D?6XU*9 ]Z ]=.O31HYUYQA5W6G#/2])EM=;9;#68W9)ST FE3[H)U[5 M-+C>L1*;:4W#13XJ%M.9J)JZO'2D=-];/2&ISO;^*5&I&6.#PT-(K >V([&Q M?K#L2\2,'%TKLIEBV>PR'=_\T@CBZYWN<2G"+I (C(H\J,7SC2@X@NL2+F*Y MUE4>V'3S*BEF019:7NJB97@57,*.++&O#[!3Q6X7*KIETG&Y";I$RN?6;W>+ MZ]K$P_56+BK9RD73W74K&L2;!"K&I@NVHW=KEUT&$Z ?&3KI8Y"*(4']9%+- M:Y;F_24*^@C*L@.\J)^'ZN2WIN&12;I4_8X-:=X^!^/])<).8YW8>"S3K!R!Y1Y7FVGSUWMN7,;G7H);7UK=LZ-C>*46 M& Z1JF!=&EM+E\BRT>TC$=;6B7(S,HD(G7SDZY9(*N984 T!\N@% M\@\*'[B$2$EO2^>)9SY3=C,Z:6!7-"L$X*9D%;A+VE+I^20?U!1)FI9R/-O1 MI6YK-/SQ3X )/S!,X"$:#3@"Y0SYG\?OX7N,>*PBT/B1;?4"A$WH;VP_(37' M?YW(G^/G '^416^>3.UB4;:4VE.@3$25+,JKD1Z638/$M,B7NKA&&Q5H%F(@ MT*BQJVRR5O,%HA#9DT#P(HU*EM*E*N55010A)VH@8(_T>(P!A(6<7%Q&PA[F CA2(01_ Q MZA/7F]9;4 T%"T@1$+##&*$"-,,^LB:;75<75^V8E5OP<$+.CH&+"=ZA#X<. MAYI[.'5@2-(0:,'YGCXN;$0_.B72*/ TUIU((1VS%9GVY<]D5#Z3I M^;Y+N M,UUG/-#U]QT5[(QN>\.1?<3K:8*#P=0[AO<.H3I^?K5;5+_B3.]M;\(&7F\XX";/NX9(_OX?]TC[@)>& MFFHJ BYM5;4G1UI=)+#9Q!(M&:+X6X- 0H@4]?()R'.PU&V21"*/['KGCJ>U MQ)/3R,GQZ=3F(Q['_4QV[Y[);A>5@T%HT&?]T1X=I/V]0!A$>Q$_Z/?"D4' M+PC^"!V.VN727W1 (L.>=K3T*2?BK8OG+3Y\S2C>ZGA6$>#B*^=C/FA2KKL\ MGMP>?HQ\ZSYBD4^*"H;,']@6+A*ZZ+Q_9'\QQKXTF*O;2&*P;/WW!_OCS2%$ MOG>'Q\^R+8NBCP^P[<+%/SNC(JKU 3[N'X?%)F?KI<=P]*H96$$PZ.-;\UE6 M9PV\GO[%\Q .!N_>BNJ"=3IK@((M3+;'1AAZ;QW,VT %-T!E7>CD\0/&:@^Q MOI8>'T'<)XX020-[->* +1?C%/OV&"80]$<_)A>X)8KQO8*MIUN1'+%^A\7_3CL4JXJZ ME *\H6IZ+QCTAT/,9ZQX[ QF_";(@=NA[(;>1Y(OQ/E>,<3?.\3H>;'[S1BG M/QAP?RLR;"@:1,!C!H6: 08#/+N.T[H]A@[2GX+8<>HR(/O6J+5IDB)M4DZC MGS/D=Y#MB5$S=R!]!]+G-T2)Q+*/3TVU-DKO1?R!:"CR&6N=H'R4R^!05XBF MSTB3K9;N@-K3@/I3%O;;\<4=4=\8HF8KFCK!'89Z+QP)LZ'/@&CV]C#TN>BS M:>:.DV\!)P?N./F.D\]M;/P%. 0R,A5(Q/&+]9X_$&;]@4^89/\Y3/+-D(0T M1KE:NX-E;X/EX!TLW\&R9\!@H"@JL 8&T%@F19V75=W$2\X"@5 @LG^3U-., M=.#V;=SQ]"WCZ,X;^9FS>'4][;SC?CX5KXU;Y6Z^@K'<\H#MDLD. :Z\"JH@W!-1TLC>@=>0K53$U M?@1T:^,)ZUG7*8MW-'Y'XS=B7.]H_+QF+E2%Z)D9%'JA$!N,?&:B,73E6>WS MD.+_+JZW=-9Q(M74=5%5$,3K!=EH./S! M%:S$,(=O#YU?AEK%U[MJ;QHG<#OFVM0UM=[U-Z$J@K6U.KX'.0!3MK8=+D^@ MM>'E'8+?! 0/WR'X'8*?W9;%GO'NS*)!]B]"%@1]E>UOSI3:9ZQ_[,IQ^>7H MXVZ7F&Y7R^[93"K65TV#LA,W>*'D'=M[&MNS]WKN.[;W#EJ-K*'B>O=6'9F; MFCF9R.0;T):?L/"1V\/WEZ/8!K5O6B:V?ZMM*@D,<,?L-X#9/^4*;L8JWC'[ M>>U3-$%.,-.Q,1$04@1##5JV!)^C%B.G6WW"HD>O'+)?CCQVPWC/=6RTM]JV MSK"S6C< .?E)<;[B+=_Q QOSO\'W=S!_!_/7: 7O8/Y;;%L,;UNMJ3(&I&35 MBD"JJ-EPD/YH495E],^2J+E]8CDM$GN^:?..UF\!K7]F4O9FS-X=K9_9"L7+ M^.BJK&*=-X4/H M$HW[F,R6/T;/L374[1"&-4:[6[JC:VZCZ7OYR1]4> HJ) M33Q>A4.@X;>G5 U9&25G:J(NB/QGK'7B!K'UQ4BV:9=:-TS9+5-.T]8Y?.3X MXXH&9_A$NJRB3^R#DN]H_([&;\13 0>:CAY&P"GT;\"83-T+>' ML"]'LG6[#]2Z9XF[QEO3^/]>\;[CL>]!"Y9 M>X..97FN(-0W$B?J((%& $1DG/S^4)#^C-F^P6V_+T8QIUEJW2XYG=YJF8I# M!2)@CFL&K>L$GV_6BMJ+/@_NTW)'[7?4?B-V]([:SVS1_+:1(>8#SYLAVX-/ MV(WXZ=!GK/^U[S!^ <(XYGRKQ2W;7=< 0O+6_.6#75YNI6FHK") A/.1Q'TV M"_,'&.\KMM3?#GCN,/_68'Z@HHD*+TZ O%F9DH*0+&>$VDSDH?X92W^#VY1? MCF3K=EVKA"C^U*]<.\0^AOP8)!;C- @R18@KS<&J?$C*'P&0M_@[N67(YG3 M[LYJ^G73%&G;E.\P^C9@]'W+PSN,/K]Y"J60/6'H?,T\=XIX+S]6RZ5*LWJARM5XD$O0'/[C0JH:&!(SW[VWT_11>]V\]395009__\C?YRGN-E"#0L MG".[<9\EJ$]^_!);(6GZWQ>12AXJ!M2<4;&!B4'1FS\X:G)UFOS]/^Z^;T") MCU=E57OZ%TW^^^T:U,BRN"S1L2'T]34()!\8H/<^ 7D.EKH]R$CDD0T@H*-J M KI$.YW"9*""CY'(OZG-1TR,5Y0<@X7/12];HWTR'!A/UE/.3T09G=]4G9PK M\Z21HK49Q&UOM4J8@JSCEW#DM: 1;O@W+-GXP'HY\3&O5\=VAM1?HZMX6]=7 MSN^HE&Z3>1_] "4*__W1HZ-!G@&A: \,!N%>(!R!O2C@00_"<"0P"/7]_G[P MA_56ZPDR_]1C(PSMMW^_L,@[]&78#7W[6Z^T:==79<%J1H"\:ITXM"/TNU=E M48%/2#>@AC^]NFRQ25=E4;"GS?[W7TR(_IW]^U??XH)%$Y*YBILZ:D/'Y9F! MH#]Z*>(0M"OSX)PT5J 'Y._N7,05=5:@ZY$<*XL!0 MA/J#+5D*_TC]Q$Z)I7];MY$OS&]*U2AC!"G[&EYQ!Y2E??&O!TI4>&>MM$ 1 MII';93 G9W#AD7143<*;0>> 8@)M:;V181XH)AI%?XLZ!2ADMI#IA?@P7DJW M*\$HWGH9-='4F4BV01(519U9)\0@ 3#M79!4]#AO:AJ^ ]V++-C8VHY:5$AG MUHV34\)$14"4TI:/E$V/$=#)*Z#R@&Z516("T0]##8SM/9;&$!H4CQY3QVB M[LXJ$ HZU7=W$BHS45,5'UZ'OL0=Y&5@[?%')@$U:.KP@9H@UTFIUH%GF I0(UL!*CQI M%DY-<4+F!YT&L3 .EQ3$B]Y%J/!+TAA$HQM:WT0-D=\^6,W9OGN;COI2Q[JG MP0FZ^0%S88 &*6^-01!UY 70C_AQ'FA]]!RO0=0L96@ 4^OQNY2A/K+6C]K2 M3,Z;4]9P-TE]X,CI?CB!.^RJ^O'N&!7S"-EE$T!;K' ^GW= M&)8J+&WZP]9=X\V"*I?Z$1)86N5TG@CI1@2W9=:IZ%__4!,%B/0]'/B]KN]T M9!/1 "D66&O5FH0(-,#'MQJQ^T9LC"V(V$4@C1LC(21=(V9AC-2&&JOH5A3) M/U"J:.]I(L" 6XPG@$9A_C&'# MA6T4$A"%2(IQJD0\N&^E@*RKU 3@F%2<($-*-MC'-PR)SW (;>N/.ACHR!JA M=E\@:G=+#FT)QE1VBFT1SQREQX4#\Y&*?O*ISKR&8!;%CV. >GU4>J MH2")T4F?,,V0GB$2(:."C^%D<#*@" MD!!W<-=S4-/AP M+\.2/X=]K*JX(UN1Q@7!WGP^?QP1AAJ(GX](]^SPY&$CFHIE%.8CD1\1@BFJ ML8U2T!"P<**A#E!4_HTNZ"A>S-HPA8JO0^GOQ(YN*=@U56 #JBRXA$@[0F-! MID>#0Y.L[[(<%+\Y0,0"9N0J<;@H$,2[5R)G@W2;ZMMP'O'4E 7[(KFR 3F: M==3K(Y5 V _QG5@Z5R]-#;U.1V]#<&PH.G )^2[DR[ C'RT%31W(IJJI/E6& M"+UL('"J[$!<\ICK5ML*;^Y,K.]\Y0E=;WMP^5#2&C]":G&@S82K48ML!^]- M''H_P9H&((G,=Y /$0- MC2TO^=-EWM&U=2>0"28U:MB1CJ#C_FP79G,"=?HUL61DPX\^E=E][. 06)H. M6/U'/:,&ID:\_?M?0/HU@ (.W+:$=8[<',+0@,?M6:8&(0;$9U$?H5]I.8Z0L"XAX&0:N!-)R$/L,"QZ^Y',L#03)9W?;AN-]W"[R$[H M=L$B@5U]Z'X-"JI8VD]_JT^VI%ZQA&:?)#A"8(6^P#1&*MG,P$:#Y/D1P" 4 MM6(Y;D7XI1*H,E;Q=V3&)AC-8I.$0@-T :^"Y3=6\H18S#&_#RZ_Y\:S".,B M(5I!V^HBI=9WXTW=\8O8HX]5?3+",DZB0N0\30V%!_;35BAJ]\)GOF[)P@Q8 M]1QC8$%'O$TQ,? #; $0Y$3R@%MY)1@/CB!MJET)R2QS+B#PND>)$X=:^VX! MLO"]S7]]FXC'^NT0 8N)OLT)W:'\VLMLXK'#=-BU BK94./!=JFJ[26LK N& M_U:T@CG&JZI,4AOK1 ("IK*XPK\=Z;\&MZ1[8.>2L&0.W5KBA%D:V>^:A!KV M%7>,VH?X=3AZ?D0(GBHA"FY,$#(_MLOB*C%D6'03JYJ3DD &QKH-L0\I!6X' MW:I#)XJQ3C##X4(J85$!?7;,HA4K;HV,H!P\/# AF2,!&ROGY=A)R@;>-1![ M)LO.'R:2VX^&Z A5)7VUG.GC-4X,^>\30_>)H?=/#'U'/GR?P2+9.6"E!0S1 M,(TW-1BG\FQ3 3#X8"423,NAV^&)JSD_\: &_CO!T@ M:?O:@UUYH&8HPE!-;+K)!J?.:]\!(2RTTH=0P4E/&1#[C\8_5@5$S6TG0,R@ MY0G@&WYLTZJ!-_I8=P39V0/M8>Y@A)PJ[W@Q9R^1O>RSXTY+?!$G\?F4RDC% ME!L2]+ VW7V((J.9A8]PYD 3^XC9^-M05OO(:\R!-G9HQ2/FX.U@K0 6_V0% M0S9['^Q,PQR+#4[+X6;6O,"K<[9 HR7WUNB)_P,X0'3\.1PC]V5)P>#5(,EK MYQ"A:O3O!I"Z1&F_Z+AC$*M9W35=$\L6"5+YB04?&EC@C1&FD#K_:SL#!!?X MD F;C*\X0$ZB,$G2<2ZB/O:A+426AT2\U#%/+8]J+">0C'&=(B5'B*)WHHL[ M/)BHV.B("$E]&YI#D*.,E&H'<8QQFA@10T&Q"DV1;0TTDF.T"_%NHUW"0$322/#?5J 4 M"%N,(@T2;=I$I(A=B YD^L(R9C@J$Q"S9 3]2$3B?+/ GCT(,J>#.KJ"3@B$ M;0+JQ"'#A#OU8'&1Q$NBIAO6$Y9HHHYNWKIYC:B0Z'&W_WW(HR]XCNI FL(* M.747#YAHV-4NL3G8O U$.^Q?-^[-G)^MAM^=Y]L25HIS3V<2X;1.F:%BUE2A MDXE"T'>=!++QMXZ8C>W3!H7K&ZET5&.@(:[,\1PQ5@?9RF_OYDGL%,)QH_8Z M2[>-M# MAB_(?F %(OYF'8B\JI:]B].7B1/K-7&R"AKL+,\FJS."*!)RAW8;F':DK('D M(^]RY@$Y\WM-S@8H0)9%$N%AL[4);K&S4_ 0744#&)R@([&+E;K>4BR1S( YF7RD9CB]+XXG,DG! M;H$F!P=1;D BXM/'<02"D[O(!TR(PT!/,/2_K2G//FH9EQ)0,HXT[.""98GZ MHP]^:V[!'1OA&J2Q:66BJ !J9PO6X*ZLV\0P#S426-<.HK%!$2<1;."Z9XH/ M23P*.H!&+2'0=-*9!](3ITL!G $!)-PCZ>0%234@,.JG$%=EU.3#YB-YB'F, MKK\7(0[]J3J.K[B%G9]H ME$7$%LFN&W&Z3:RSH>$A%EB>L%K?Z0ZIGMMS+_ M=CA@J!CQ8_#JCDQQD00*EH%SLN=6Z+\_6_,>S+Q.D1^S M]5NF]->Q!6$?,=UG7>OF>$)B%'==X6L.67CW]4(P+_7PJXJH\+9!LKC:LK7K M\KBEM0^SY<'P5)2/LOU4?9W041 E .^HI7N.C9@PGH4F M2VHG'EQ)*VINS7:[I^W(])ZL02 L*3 #HHP5S?)&>*SKJ79284,T%L]UV*49 M3E9-18)"-$?&Q7.*B> "KD1=5TD@P]Q'A+$ZX9I(V.3$K;)1G-VV)@B<_.[! M!"GU,]VJZ'^Y<@]VMI9'XM6'Z_)C"%#O,10F4P5VV@Y/_LHB,:G6;#5BVQ"W M3VPI,F!!/% K%?)]:Q0W9M8?DSF1'2XJ336MR4)O78MAR7:^J./N&I%T1_)'W$ MV8\1V["\?:"S=\=VNMM@[X[-62BGJ5;!G&OM@/NDF%?N3,?YP"IR,"4$>(%DEV2N6/9$2)& MVF WA,.))2]O)FC7 -CR.UN]3A=!RN@SJK$F9 @#1>V(,?Q[U?;CK^X'A.8"(Y0-WCR1W(7#@S X[M M0A]E)""[*[#6:U;6M6.D3-9.Z%E!TYX)]8>MLBGK5DQ1?HDH)N BUSX<6%-! M.,OCK#VR CY@+?9 4J1A+,)+&[SP>,"175G=3>!>=W.ON[F*NINC[U$'B9 M*W*5PNO,]GH%K"C K7S*X+JY9KY:S%N=BJ^URGML]P($:M%;0&G 3 MGKF6T5IV_E#=\OZJ96M!D&9-TA+/K*[P0B!?>6;2E*CQ M)EYBAC&#.E[:@:"+/O8R32LIY^SVP&Q2N4D+=%U%(0A9R. 4;I"WNV;?-EW RZ6V MZH'L*BHD=639CY7*0BZ?%'[L")*(%T_;*=6M&@-2S^N,;5MJ]RV+Q"5TF[XA MIAJN=,8,:Q*N]W#*J-P%*)NJ90L.X=8MP<,%-YY8_N>*/:U8#*$JO 0:G;I M_!LZN EAG>5&FU7!1R:X9-!721'XDL*)2(M$5N'#OE6MF]N=]V$;0NK[,'2S M.G./50XFMQNUHAEJMG-=@/XB3Y0"'K[B=?HHN'_ MY;(_0$38QE(AA E%1$B<67>MW-^ W&TY)C7Z.H*\UO)9^^6\INI(79V]$'Z* MC_"1A.WH_3(4]BSY6G./:#IQW@X^Q3>;6E_41VOX3RI6<'T@PM .V9W!>$(8 M1Z28'9&&Z!R9YUBGR':W8 !6E99%!5():-U&Y@.@0E(*Q$@*>%>UC:_8+ A7 MMQ?%;Z]0/SB5;)OU!YN%M];F"%O+MG!?QJ36 M?]\3>W=>>%@OI[!FM_8JTM;&%WA=_BL_N^N#]^C\+A7L%>6(RN@'N-FI8=,H M/R)&^F$3JZZ]SV#'Y^! ;Z_;^;X:NJ.(K+KC&+,;$4HCL:@!LCO^]^$TMWKI M4)9U5_R+^VO74?U4X/RO5T 'D*IB:"V=6:_E_,!*L6WKAV-C43&M-#;NE*M/ M3EVW$Y*3^NX^6:6W[4+<2ZXI656&<$N0["7 ]H)9+/SN1ZS%/?;J/\%6813" MHS&2@OP^TKSM/K]:W[O=&]W$+>ON]]GO+V_>;RV2M:L4MQ?+(N7!8+F_M:CX MD8JM58$D4EW]L0J\R1SFNF<$ZZFNC2:,5U0C71CC!@1Q0+9/0'JMHA8VKOQ5 MD;M=B>MP:)."W;4N."5+Z1-H33A,L.3@1*O;I+C2.CAX<-_6-8=B'T%NP[:= MEAU9KX=4G 5>>^CD!>7Z?^R]"W/;1I8V_%=0VR1G7%M??:4" 5#"& 2XN$A6?OW;Y]9]&@1U26R3BOG6NQG;)(&^G#Y]+L]Y M#E_I.8( - %*NGJ4;/6#/5-0))LF);&#Y(A=-+M)9PVBV,55F5]IH_FWL^ 7 MA(+ X3+V[#_:''#9PZDG)5!*&QEW(TFI@@#,-&(N@+)/R,- 0NTJ?0:Y!OOO M$+*_2#&CA>_3WS$2DUZ;B95T4Y'(P&O2CW"13I/"W.% MO"XO(+ 9UUUX[_/7#MXK20-W%86NV);;A9KAW9I<3BP3''45>C]A4-AG>>E29ZLS0\X- MHXWEQHMAY@H.L_D1N3\2$P#W=9.5R,J]EAC _>0"#'DH8LJA@3]TA0'ATF"BVXZ.K6O;^T0JI+V_F-+@'N*. @?[!" MK"5;(IB!M91:*IM@1A7';=5/^75RF>6Y43/^NQ4[HQ:UA9$ MY&V6H,='R=1">1 LG?TQ+.6F,_T)E>U'4%5@-C^E5Q)=F2;.TPO.=TA!D"+C M?G)\C #7 SAEDT^P$$S=54\!'3S JM1>\Q,7J+&^(J?G9#.03;PVSL+4:[$-W"7D(==32:*CX M T1/,&\_O_$3\AQ(L-PBZ4=[DAYET?;^+GFT2QX]BN11;W0* X]L5ELE:PQR MOG?MG7-FGMN\H/#.F[=GHDIL(MVB6C (8FR/EG2#*WYV@2";IW 6'> M;BX0%6J4)\X8P1Z9>U V!9#V:\8(B\53=DI^F<:9^6GG$1)@ ML02A&'[I6Q0J#;\&[QB=?[QJ'<\AKF;'7@W^R_A.JZ3V!WO[1N !]_*,=2N> M0X':]/1H %IYF)DYY>WROY4!'"/V#9D'TAZ953-3($I)4=D((8MV6PL2)C;V M68W0,G4<> O4&RC0:FQ#+.S6455Y!949YNI=)V]@56;K5J4S>?--8J0W?_AO M53_/U0GT8MPF*C\OB&/TM?$M.E$2B[*! M@3M-D<\E &[(*J=4%]&ROBP; O$MSZ):'OV(^1>WUH2 ML3/0:%&.9+EK(C^0!5TPA2T_VD9]WKQP1=T<9 8U E\]:]*(_)2W[%-)7L^5 M*IC?2R[-'Y>DU)AG.[3>,_SJ=1I!W)XS39AWZ$P9[N<:WA\Z>5COR4F\BB?^ M*]-PJ,S <]H/7(4WU454R"F6A?CMUU?/+2=DOR-H'*GYG$@'F@J09HEB)IB$ MQE[V6)WEAC,W0Y'F-B]^QGDO-?G\QE&H6,%Q*^:JUY,TSZ[XR.,0\"@ ,WK< MYBUYQ,.1"C1;KH0[9R2IZ*3#>*%F].+LN+Y]&EL:T3LALH W1*S\EHF5-QG) MZZ52\_ K<%%#&2O5F8DHH#%\/PJD(!H8 @3$7G#7$2 " $LRH6E1;@5 MD*$+$\R(X$YCGAO8P&<%/ 5YY"GFCH0.,]G@*O-^;E?^0 M=B$ QAY\E-\+0@>5/(0?)S.XR6WI]".Q@O X! M,AA*+"1$6VU+(CLC$4WVQR$PF&_J@GQZ]G(+>'8@>[+//*YFZ3+883ZKI^D% MF4X6)G)R:B\J3<4:&3>NN2P3*FYJ;*C2J$^S;!="101L) "& X T&!WL7RER MDI657V%D9Z&TW^3(N,/#>#CG#JG5@P5QE?WJL0IB!Y>TLC9;2=5S)LGB39/U MK*;#5VF@O52G2LE7J$%+XY]'.?XE@4,%ET()?YNU^0=L&#&KR@]B8>$#Z=1P MFEI+UFJ\W;?(\**"LH&2<@00'B2QLY;$)A-_M^WXB?@F6[/CXG!QWKZG\0A2 MVTG@*.S&E"X@V2.'7R6^%<,< KM<1NP687$I;$N@ZF^]*WSQ)' O. 8#A>I. MB .H$G:%R0&A5S1,Y'Y#XRZ58(VPK(BHEK\@&(X.I/LJ5(%2!(+$;1GF$4;1;5F2LJ4:M/-90!)P ""Y>:RP^Q##-#6+AZ6MDV-AO%WZR98@$C=<967)G!7G"/>8[T/(O2C8=2BMZ@ M[C$[4(U-[WI]NHF-[C4Q\]];AG'?C?J\,QD^RHS8=)<1VV7$'D5&['8[%:@( MC;,4&Y=)>0-;T(;0YS^9EU V@V$-.V+/?]D00V!OE?.GY]HB'H/U7%MG-PNS MH9^%4NO9EC%JO2I"RPA 5S<+#&ILB02<&R+\0 TI*V.< MAA)RM68F2!IAO$B[4+>0F/U%2?%V!]4[J,?M!=!\/.2] 1SX( MOW$<&@XOU0I2TOF9XPH2GB#T-\O1E+8'Y35E0V84\P'+W^DW=B MPW3KS^!IER/AC@/I^JW8-0B]4SKC=/S'.&]K+*GBL-*ZP&&W'H07T](/JWB* M)!5)3V651T+S\[_,2 7'\>B8"&^U>'[!Z9MSL4D;QP["-1(F:' !41JT>1R$ M6@1UC:O6[0,)T9:%>[[-(((G9PN+,+)A/[-W0[I8YN5-;7L3N.=0F-Q#+"79 M1>;BPAC-X^:W00,QFH8:=4'EWZ7YJ$1T$N(V0TK#Z!*^&VH. !''=&:NR@I? M]8R&"*?8G.^&X=70O-2XY0EJS9K#B$BVG1(TLV2J2+B0$40K>%-*.*9-<%OQ MJG2N?++:3_(IE&X@YHC"T<6M#V!60LB?T^8A*SBH(KI=.JY(_QWCS!6.$F&R'(B$ MC5DEE*/T)>PZ1,<$6TCV\A8@9D:X/=F(,#^X2QGA0N*,,4>NUX'GN9VWUVE6 M?U",>%MS@T45]P&JVPH%!\O0B+\?]\^2BX/\6U>0T!P-RG./L$0U\::"YK'W M58?UHS$.T))<*?H.QD$B/U)$VK--.'=9,)<17BG4#49,T$%E5EKUSS& MXLKAGS6% ]O^^EH4RERRU=/40ODV>E_I:\,J):Z"KMT*&!6AS3U:!3CTQF)O ML6Y-;$DD![Q6*P9ZQP>D).9N8JPY6:\1X"3_W7;H"T+V,ZQ:10K6 HT#M%:L MVT1 \4J%LXX.B$.K=*5,[!'(EYHD_S_HRS2&F!-S(P,Z>10+=H_6O'>0=>K'3,L'#&[SQ M_::MUY=4IF[.K*L_3UJH&*RD:@ (9J4T(D*NB3R] FDQ\B P7MLL;\/7O&6S MKSNR"8Q:685GV.DMLP#?#@< ]46X+VPU5HY6J>6#T9\;7=)&%OH;75S 6C;I MH\R7'NSRI;M\Z>//E_YD,5$J3+QI0VD&#"^L8+N\?SZU"3FVX6VD45FMKSGD M_8;0?11=4:->],5^\/0Y[:E;>&*6Z%*?X+)H#M!')?3!G%1S[7?@$(_SF M[&?'82(1P]N*8; 7 C);>,]Y_N:=WZ%[ V)QW(->;KBE.2X[FEK<>0^-ZP50 M1_LI3*$7PA^0\R261\BE8?A'XQZEN525Z!5AIQUYEC%G:.T/#%MX%HFU0>S2 M4X:1&6/F#$\%L#6A$-$.(+"S1S@!CO!Z8T\9=6#4SXA&&H\ 7>3&P(F!ZH;Z M+4!$-';U>GYPBZMK[1G1:^N0X;2RM6?W*A;]66NN*6[QS.;P-L4Q2(EX]!"= M0,&ZS/>)T?0%9KB/F3,5D?K4G,:R1&E;#EM"M?E%U @%*BD&#A'B82>97$0? M4K AV\*H"V!0%ZH)SA<($VC95H2R5TV'0K:_.6_ +.:A$E:VK%S MBL($U() _'@37*&"X$;&UQF>*R:G%>)Q'-7ZDIW0GI#>[U!WNM!V(]\*0/Q; M*$I@_ !N-6QS/\( FS_49A%KKM^LH97OLL4VH(+J.$O2%,.,5Q M;$P^/%1X6-US=,6'$2;@#'7M)2I$+%-E.XN/Z$V.*);7!:5<,1MG(][H\S$W M0(/042;( 5:2=Y?<8(3O&CPXDK.-+24PY/ZHFH,73G6-BY?BW1,A8JU MPP#;/VF/50$2"P7&^65)J/"+AU4S&PS% 3#[I/EH2QQI)P*Q(@THD; P!\:S MDL7I81:&38-%ZE0)P??7SX;TS]T,#MBXR*B>""Z/3J!8?48UE=0ZB'&V%=]5 M %L'ZD)O&%N1J8!H ;-MZ.M!Z_-R_G 4K,4B/4AG-K>A2)!EK(5N )W MB9%\,*/R0]46EKI'F!WX#L)&MN2?<1-PSW?K'K5M"=TCMF)1,V8PN=^"&LM3 M8C$4"#*[4OI'H^[Q"M*:[+J5;)P?1'(66EEUJTO%R%EI$W*KP4A&@-B,M.^= MD?;8H+RQ/MM&7^Q-D:(LR@9K3S/JS]^)-;73_!10(CC68*\Z>/A42 M-K"JH+/ET<$4,S_8O-Y,2]R0TY-3Z\Z$LC&UD+?8)"'@,X"?L8%J%=\\<5N/ MG6JD7F@IR5,Y28H0]'$JR@++DA3HO]/$/T#$1KW$Z"-H^6P.=XEP2XB?*:)/SDA#DP6K M.,$[4O7@L?,%=EL8*!?=L_?DS7;=-66'X;'M6%HV[,=IS!2;]+/UQ,2\3V;IF9H[T &"2]ZAJ3MRXS:PD!I>(PO84Z,]SH&7H!9:Q(3/(VCPI[(YOSOH RU9O@%"([SYKRV?\8R]V=IT/O M/*FC@U8(Q63=3=71F,"18=^+,0>[(DCH$B.:$1P$LJ>>O ,XWZM7_,3ZJ5C/ M L&J&^EM8(O9W[U"R_"?LJ0KY"RTP!6$@WSVB:-W*8.K&(\>7%Z\EJI1MWLUT\W M0;"R>-8NB2^&DD(]&2A2C,R+B,$QH$BMW,E%!T*G&LM.'27Y'<3]8C4(]MZM M"'"-27=?E7K:TUW'>\%QCI<^I$Y8>-"EO^^J^:).E[T0&$1=M%#?,*'<.,!(O25I!+*[C MWN@ M+%]$PV)HES,"-GJ\[XK36@MGX&MD\L;ZS,T(0X48)0P(XH%I8PGZD6P3Y9%N M-H$!0.3S4[@CG6454\>/8#:H3O790X<88]A>$!+; RWLX>'QZ\8)WMN5C68' MX;G]$'P ?@5BF4$ZTC));L.!]E MVO-PE_;N1=)5A[H2C\]%8,!YD)+JQ%YXM:&1X7A]& M4-[<&%O^*K66?%I<(''FO,V9'40]3U:888+"=]N+'[.G@[ON]NS8=IZ;G]L% M$G(M,_;6R,#8Y,EX4P0OTUFENHE/NDTPDV T/L!=HUH49SH^B*I9!?.!@A*9 M7,V?+,MGJ+IY10J.8"4(J[)^A=3?NK(O9],B 2BV\RK8PHN,>].MQ/%Z,4*& MXZ(L$U=4XQ+<]LG;*5=OF;2;F45MB8@JS-H6[7MI1NRZ.ORV=[8GX8$4ZE"9 M?KP3"2#R%/ILI<$UM6_ K\-@=X9-[E=7)&6H2979NH) MM>%X9S<);(%$$>9V"ULF&.D*FB7@ CI M/A2R3EF)N2NOQ1IH-$QL8&P=P4E([%C6-5*CDG/<6T?IO4&>! O)VX2;8C=2 MQB>@-?M[B#.TV,)Q9:R2*KUMQ/A&[GOSBGDCK]:UL71+:-[A=(J,+:10)Q#4 MYNF%]&>5S]3P*!%Q^T+J76<$.XOX V3)^ MT77H.1&V^IV+TE0A$0B*O8YNC%]47L/MSOTDY0=R&%DWVS[-2H];EL#U#B>"Q7ZUO5:Z!])-W!BR4!4(&B@!YG;,T)9&SU.# M7I#?EU&6HYO660=O:2GR3L 5E2^%(OTZ9;;_;8$VWDZ)]>(D>$GWSK;8D0L, MDKI*Q)+*K"V;@1 .Q.42Q9X4VC'E_$ZIV9?Y#23W*'@Q'#S[GQ": D">.K_A M[]0K7_IG&)QP7JOW*X?P&+R<(30O>1PCU4U)U:AE61 ^,8+RK!ER="+%/U54 MSHDT,KU![3_']+Q-/IZEL:2PX14O/A+5."9PF6D -R0]'C2R(F/=_? M'Q],A_RE[9)+? XTY2.3NA,O[GX*74&^QPP7_&GE8XIP JD&"#RL0S \W@NP M_I/78L.B7Z4<-(3$!F&]P!RDL?E5 )"A<)V C9UGU. 3E$EH"HQ]@J4U(2?] MI.,$1R"?W<.C=-EB5,VDYE"G2:L%MG+9I")M2-_H OULY-/.@@A#0[2:^C4$D$?^1Q;TNJ>L ADI=H[Q6""F Y$%>+X M'4%)< 9WO+3V$^)>=+)N2DC1^7/2$2U>@L:HC81^ QTE@'>A41T9'V4ZYVB7 MSMFEL2Y7S;:Z\C0ON1B.&GWID8=)2S, M*.S@^0 J"!P'W.TOY\BB0R7-@W8)N__MP7Y@QIY31XMR$;S'KN@OS2B,:$3% MAY![(IF5.*Z1R,LK>.M^W2NBHSL'7DYA#HB'QBTS_RAH#G0QRA$3"ANAR!GX MBL((Y*+-(P[AX$U)D+P%P('DE[S71F]66(Y36Z1/Y)9J+_BEK-(2/3=X!-#B MU?*$SK*21TEW-<1!K5 @X@DJLK,KHJ0H+*RAOWT(N(4T;)PB Y$PUA'#/S@T M"+AZ,W,V$8<UVQ?H,>?+;CK+KB?+1,O1#?4UUNB9_P>/EL0ZHYSQ!,+B*LFL_[& MIPT0CQ'$@'S&_$;L)QBQ-9K4>>XYGRPQ\$0I#FP%G@?P7[\J*Z::+'VF-I6- M/OJ3^LYQSTOC9Y!FESS$=8GJRV!NS,?:X>3TNF,NRE][.J;D>$FM$430FAOB MU*JW02$^<.X8:%2S8W8DF@]G65VH&NLCD ')F[?J.M%]GCE[2*0E3+EB/;/E MC"J&S&7MR%RG$<@E5">BKTP:'?4;^?V93=M'B1'MB!(M1.0;:HBB*JS&$XK< MB8)DI%'C/U+6'@-?9CSE(HO=.3(S?D\N6/H1,&!H)P\\, MT#J*A0'N%.T?@E]"FAZQG,PK3M^C@GC]=53##?.=X>YQ=LW]3C#Q=8NQ-ZA+ M!=2,6= +6C32-#0<-QJ[K)CCNTX?<#@?CXYZGU)4%$@#U47'*AP<^=(6A*IK M/&;X@ 8N[85UYQU+4BRUBBMBR__):K,CH\&HP.[[7[ !75#A_H+B?78J$3S MAE<:'V[.&0JCZIGFF# \'<0AU<[,C-)R(&T\MCW)ICI-/WB;8SZ"=:K(%W'2 MKWNJ260?QG!'>E^L(EKE%09+WVK"?4:#5/XYK9T2+50) Q4=J)Y+CB834W62 M@BKG8?]A5@74MVW_G:FQZ]0287; USVR'5AE@CA'+(O:"-[B] MR@+GI]K'F)MYSO6':8&" G&^G:G:T5\/OP>..2'$Y@X6,(CUD937A5FM0J*G M=G'!0^?%=0O)MMXV&*!VQ^W-+7ZA'3R;AO>8/9Y)^AB+X_4=0*8D:(LD!2FG M%KYLP+)6EO(%#T59ESD.H&40#E86 BE;6A'JH@GOH6^@Q+"M6Q3]&-IS STB M"&%;N0NG7EJ$4-TNL(M62F],$*16JX$J=EY4)MZ8KR&Y"*?U;55B[[@T81Y1 MJN,V Q E0Z&\GE?+0LLY$Z1)U*$BXJIQU,-F&4A[:O^T]Z0[892PGX9RD4KN M<4C,U5&LE7KJ6.YU.C_F\Q#ZD4X_? +Y^WU M5D>4K_?EW+^]^J5[*W?G.>J<[=L:(]$(TLFX> TV@$\S:3;+'DH; M>'V/#7Q$&_72RMJ)Q#>_?*OUP5W;IBP2945B'QD\97Y\%C<*3< M71^OW6ZC\Y$E<(>#709WE\'=X@SNG_&M/%W$WP MJ@C^T>;0QV\XQ1#*-0)_KJ,*W>V(.@NDJGDT- &;FSUYADUOY=]U'%U_7J5% M>@WHV27E*^G"A-J7&=0)6 ;JIZ'4073I/N>(^'U=7H#ZB^O@F(@]+-6GXY&P M?I?B4I7JB]ROB<"P6(S4%@CI8?JI^";/*'=&MA5EYS.LQ3 :^K>SX!>X:2*J M_0)C06:G__#AW\+ J$'X'O<0+E4ZAZJ7\I*(;?'G MR*'G)/E^B--UGMIV&+!_&NF@X5P.FNQJ;A24'>4Q \D&1PWBI0@',RM7M4L6 MGSF!?6O"Y#>-N1$[GK S.I3IPZW+-'O6!L(RJM3OSI6Q$>*XXE18$C61I7R] M0A])/T(;WRB_A+^5'-I'_HMQWRM;IL2P@7X\ .\,9C^ VX7 ]U ;V"Z@G\KO MKAC*$2_T"&S(1;*81J1PK52)AL:.O*#Z@2;ZV$FC ,D+-UI"QHCN9&VU!6?7 MO(H#ER%S>XZ:1)>/ZS+^-:2:>?LAIB'I08WQ7,#) M)IXG'K6,-JV7$-I&-AC5AN0"O 7C/A!U,[23=4!_C%Q! 15Y@&XW?\B9E^7(ASE?,;6-*SSWA8@2,(*FYDHLC*@T> 0=;U849(>.Z>)N3 M[G#!V RORB-C=HARN9(8=A)U9X5/G:Y]AV0XNODK*J=:$3+T$.6Z0QV!J6D7 M:JNY$JLFKC;>AF]#Z]K8D1)G8_ M51,C?-@C:UKTWB;?/W&;HNOT4[4I(B>+$^P]GP9G-P@R=S+][BG-;NY):K]&- MUY %['D7B.>IZU)O&Y+7$X!LK[Z1S'P^*A&P!H@'-F._'F#N*[D%!2H@]T(1 MBTB.^;&>/;_5D;]N?<18W*IETZ>GQW)9U\QIS50?2UF\FT8'6'1]<^F.GB6.[5SW&#M+2NN G9P[7>)K86.&P60 MI8OM&NK,_@0>J0@NI(&Z:IB,ZJOKZ/(YQ0PUI5:OR(6BN$[9I+=($G+#&*U( M'B0!ZY37WP/1UN8'5HHP)^XJLP68']2729.^J6TC7M45_G:D/^_$MKQ6WQ&# MB=(/I$ ;"GN6N"\7*;3P6%YB3;6YH[UX/;AM,9JI')X1] F0M S-EXI M.8Z\>Q"L9XI@_T#HP\5,PN96-#LL$7WP$0J)'&HF*:$FB:L,6-MSL\'V>PHZ M@!8;F&A*_UD;+>Q//*OT=Z?.8GWJ^7'FBX>[?/$N7[S%^>(_8PP=!T6+>3M5 MI$3*:06^ZM#_E,6"> M7F0U'1[OZ_#9#&H(BN#GDY0AH:]-W,HS8C!@^^>LJ'%BR8M"&_V-EQ&/#3)/0$)$=X" W-/""^PVL6 MZ107?.E-PY\J?/[DRLS60UQ[>D4YG+[W?N9"2%3Q;:MR^)>K)Z W\D4VJQ?_ M6C47N]T7YFU%R5 72-D6_92MQS#J&3/*\M"G97\1D?:L%;%^#9V$R#YZ8J) ME-/&B%"O6)#@\ B-W?/#;G_ET"6N3HK5JYJA@HJ#=J'N"5W.@1+.7LZ M,-XUR= 5X% J6-YHFT3>Z]6KN_R0,*)+*I'"%V_L<<- 7@&'IQ^]<@'CB[R< MF?^YCHCV&E62T5C@RS.AE@Y<%1WD\+;@.4X]58C1MJ+.DK2RK:=JR$I?K+3U MDB0P81E_=%E4$*\+V)_2;$W8" MEKJG$#E6=P\5%2GH38]"20OF%#QQP$+<,N0I5 MAD5GR13=;!DA7:*\QH "EI?(Y7P2LJ.EJ^IL&84 M4J+1L1U:@D! .TJPF0[W_P;_,QI,#D+'ZC7/*NSQR#_$;[I!N+>:E1P-AD<$ MJW-SG:4Q--\E/0D[\8^H (9T)@$,^4>O'*\R?3(:C :AV%2>J$$K7+&?>OO% M,M^_ZE>&]ZI5S) M_F/?*E(6I2-_J8'T[8(JRVHFD".^"_HR.1;J0%M;1T4()>(&C*E6*O.M QP M@/#V= A>%)=FZ?(;MTI75+(O\\+#:[SOM")&C O2O?"8(E**."HR6X@H>,5[ MH19O MFY;423HY1GM)WP4.O$0"PEEP6Q=+.]+;67[5C6-87%\$79\/EVD'O^'^06^) M=#\>]2,\!8UJ!8XUQ1!U$>L+R>P!.C=/*[ ,:U"_.NB!CR#6ZY"_EQ;N $,4 M/@7?2004)6V%ZQ)5>VU5N[9ZC#V5 NL$QG(HF2:&6598FDST8S:MT/":LFW$ M43!?%7%9+4O)$PD>DVJ9J3,<0/$MP@BB([CD1"2W'PX& _@_XX5&%?EK7"DQ MRX'6([Y,8Z&'ZVZ3U*7/LX]<,+RR2Z'>(G;<$/!#WK#31UOQWZ-8!#6^AO>X5)*_>V5%(&("^4JMKS4F"@W&*>Q!R.I9B;7W,6J&: M*?;:=,_O$%QT%\N66YM',EUG/58[L[0O,'>NI]N'#BJ AT\@'K MC5&#N%%XO2ZX79N>\"V#$:9)OT+9/H3H _C7,NQ0&?-*@OJF*B%-9)7(;Z0. MXG'FA4>[O/ N+_P7S0N#&E4@,HAYZ=2FO6NO&&1D#!KCT6Q<^Y^(IO<1\8P+ M%9/5G,=<0@I&'14II!D(X@SM+,'J^8CQ5/,O!WN'MBK5V$?81P; MHQG^_8XW,T8M:QV#?&*D%L].Z<82S.O*B$,%E9TFB(UIF$P)/4 M&LX, /120!N5Z.,:[>>5XAKF''69PKPL/]!.8JN_MK 88G,+72/S&)K?CIM/ M&&5R@I3I0LW [T#.Z#Z;!"=*53$1+132%8&Z:@QG1##;D[<1=9L1/9_:$3!Q MDHR:NT/]1WIAI!0W4;'Y4QEIXJM+TY MY87BU?0(#X4&>L<%.06H/I0\#8-#S$N+M+J01 7D,((ZND(2<^Z-#NR>A$L M7H1Y%2TLI.1!+(JWK(QQL[^]/Y^>3@TE\?C0> MI>>S_>GL:)H<#L9I3[^='W\K((Z77Z7)66/4'<3)X:(]'P[V!T=?9^N='X%7 M3U8EP&4)9%TVF2. ]K/>EL_B^70Z'T*+I6AR/CF,IN>SV>'X_"B.]J-I'*7) M./:VW'QG^?3YX7AR-#W\.O?^I%-+OM&MPFTBUDHSV= M6VTI]5,^($'"PMR*1%YHKI7FNJP^8$-FN?[QAVUJ*T-W[ M',4$H>@5E[$E38%!FN-*KY59>;4YZA[%8($4O6'O$&O$P]4/+!98;8I6 M,H,I-&.!HMGP>YJ&'K< $Q]8_@0D#=B45$NVPV(/&4Y@@S&"/-$";ZOV'64' MI4<8Q\@V6(C&#P-N648L;(IJF#'H&/=R7(CT"G\#6(8MI$K@L$Z^UATGMM^27IR[KJB M?+1KR"<)&.YJUR.EH1;3?I%$[4L]&MZGRM4 S!9)^IU2#6U B.=#-'YZ%>6M M:]M 7]05ME8TD=G63!#:5P8MZIEN!UD%IL;"_X\1G.N0OPUY:D[^1ZU1TXPC M*7/D99GA6K'6K;@+I\=%1"(MT^Z=(*QBE-_\3O6BW,ES[JT@SU 87YC0"3,S MQK.P*;#5A0B[:R6,"39CJELOO#/0W1&K\^U4N3]:AQM%=!O8;"\O*GI3RA@U4549+\+)F21 M1C6Q'"E:+XQ+&?7I@'"VYXO6_WR&/!Z;!^O]V[2=UB2XY6IG\#.44:0N=Q W M:"U@+@(C%_ZN:JTBQ$P^:$.QKF-*!&^^/*),L+5C+,D.^L\8KKS;M%-63%K$ MU8W')!3*5>?4H[PF%#8F]P^RG:KO%<8>O E*M,'IH-!::;"0.@110;FBT=K" M[ %V#_+ ,YEZ:D97B06,L9E-WCZX3@Q5U(Q?*&D8Q "L)?XOXG1K:&#'19$/ MN I0?+7\@;9)T13$I1?6M@S-=2S)X!((^A=6+F1,9%"7G/;>7?T+3$_97/MS M9XUKBSK41%>"T+KU%K!"3?F NBFE')Y]CS@#>LP1=@\23C90D9 08BI MY]$$6&"]Y^\>RS3TGNGJ44$R8&>[:[-PC3&A5O M(R(;5T!UJBRE_X[ZC;V>Y1V>NNWAGP=9<5YA$=^WAL^+G_&S&X;-4G1A1T/;\ T2"X M4Z6N8@NP&1_2_$9S!_I%N]QNI.L[]F2HUC"6EKU=)?:"K8Q]_H1UCY!0V72D M$Q(V L1$/"'73W3;OZBX9H\!&:-UX).NJ&\ 4IHZ)&IBN%Z!)) D#<@8YVEV MA75H4&.$6+U:<)7I-<3^:PM&^\OBQ9 M$9R(2Z#;\BACK=6YA_[[/]2,:- MTL0>0]TFG$8E G^WT9.R\<5^Z MIZ4Z7RJYL<1JVBB(JY8\PY(H\YP(6D^$ CCW]*+W @+I'3?=,X<,?F'O65Z5 M]A6.>>G:GM7241$ G8+31F3WNQ!/F9Q KG [>?F&9,F8S#D!P:44$3G;O2=8 M0Q>1/Z-])H&GS[0[ZXTX7!'J"ZM.,9]MO SS1QI&]X56F5A!AD#X#,#*B*P$ M0?,/<=#U+K2B,^.K+EPP:96D&I'*2;14O+L2-\8+"9D_@/17EMUOW" MAS( ^)3E1W(ZKLA.<,P04K4!D= VBY4,!C$"V330F@M>Q,I)L N]D>12\W)J MG,4>&EO%:,&"19Q'RSK]7O[PPY\Z=[YW &?L!V6:XLF$03PSQ\QLY??S[&.: M]!U69;J)J4VW=5.9_TMD$ORU0_CL._W!GYK$%=1&&-W,8\+AF>$#DKI)GQD; M- ;#];J*EC^H ;#9S@/]S_\XFAX<_?!?WS6)'I?_I4Y#I#\ZWMLA4]:>QD3N ML;W&L+G2BEG^"<9PFTW_OI35?*N3[>^OK'; MA?_F6J(3*=F\V6594JK-/4XJXET+ZUX#1)XF%E57CPODR$L0:YN82!Z0 /+W M5*D"4!N@M!T<#:3I.S@#W^$YVIWIK_Q,^^T(WNJ.[V\MZ_SF3SK;Q&3-8WW1 M&O>E$SO3\UEAT9=T,CT*>/;7?!VN=F.I6D9L"F%B+_8HN:02,_PW9?3J$"4R M -3@HNY.X>X4]IW"#NGHJ>/:V/S9LPE(P7U0)+Y>H4JU/.:=2Z[#NFD]9,V( M*5X%'>=MNJ\&NX.R/0?EQ];X2C8!>\IU_<%Q#L3"&)_=R'GINZIF.%0JZ.]Z M7QE TS'J@G9H06XBY3&%F=^1%B"VB69(^7@)5?48DYR>PHRD>7[3[]D&*!6. M"*9[BZ+IW$"7;#S=*E( 0".O8I,87B-0P^\9J<("B73HV M @_URNASTQ7B)@5[T"(";LK:=[VAR9!$:4M>*E&WF@0G1!C"( \#K+B*!P3*,E[B+I6^(=@KV)8#@\)PTC 'Y M86$7BG0O%#[^)0'[<&2*3C_2[$GS0+=GYP>#":?IT%&:.]P"W$)C,^ M[WI.S*6147.U5(T@Q^5&R2S$\QG#5&=MEC-&-GA?EDF<9_-Y\#KZD(8XXG_ M$;>-X)$S;TTVZ:-14!BV=&V&(,#<05)U&-UJ*&3AZ&_C(Y5U-T8L=\$3Z8AW M^B8.V''%T^.U3T1/D-NG I%.6\V,_\9] 6TE6V>U3BXC\P:S$R%I]%>Y>4"9 MF;F=+6ZJ(@J#G]+2;$U$_%T%M$LMP^ $ N5E5621-T[*PP E0BT 2&1?1 Y" MB%<3R;*,18WC18WYS\1[-@?-UP[2?[>SYFMCRN2$E/.:0JRN#B;VW(#,N^XW M1?>N.7)$\ L%.),8W>#&V00*)XR?5R7]: 3\VU,QDAYK9H68>!6JFP\,%%X*U;(FY M7&OZ")20\;>N'Y[VHO%-S4M9M&%!8EI(.<,H1RX#QR_LZJ MC/FQA([73]J"?S$:[XWM$;)AP.7' "V80$ZGTF(=1_]/[]OABI*\#3KSFCUZ M:T9UPA#="$>T_*V<#C9&^YO? O7WA'W6(TWUP6A MQEXCV^YN;^W>[A_L/>ZM?8ZE6][*0&ONB,3CLQJ!J*QGL;$M\2P'O( M85?;M];\>'R'?].3^/2"Z2:XWJ[8F0[;HC,V/4G=@&]IQH)INW"-N@AO#R]3 M>#KT.@%PY88?L6=6F4=E:G32%E_W?;<),^./JI&_TKH_5CLCH%#)9PAX/"X= ML.D);"R0\1@SLQ?A^DH/1JGLWB5:7S\&MA*L00R!2FIS\>3@]%X M\E7"FL=[ 2Y'H-9CJ^CEAT?)03R)DO.#:7QX/IG,QV;7AR.S9^DD&8PF^P<' M\OH_B9# ?3Y+S^,!L_F02C\ZC0R,!:32+)X?Q8#(\\(_VVZAJ7KTZ/S@< M'$V&GVN/5Z SV['%,'>&@K^R^^F.P_XO"(XVYMXI=.1N,.Q%S:A?_!]0I)Y/ MOT[MM[_'??L0FNX6Q\))N6,WK5)H^WEC!V_NB?E+U%AHPBOHI%D%;]LJOB2, M_YQ_&YQ1.=<6%H]X_?C,]).TOK4?8H!+3"52-PNS3])K\N?G9[\RN?GF:$^! M'K2%AO04YH5J,]U!M9=8P&NT&=6=AE^'!TAD-8?IQY=TS [#8&0N'[\28I;F M67HEU9[8LY1 Q][C)M@+US49@Q9C/#@HA/#:B&V0/!;HNCSJ*:QE!'+"!,S= MBK">RRA+B#8LJB^#) ,B4J L Z:C[F1PK9;1C=#)V6^'0894A:'?IQ:*_)BA M&?X1..JK5 +XC:4Z\WH/8WLE:&M$G&M!NUQ3!IE&%= C<\U2S +.?3)=17P/ M'6$8S,JJ*J^IY]L55E75NK6$K96?1Z[UFEU%YK_C#DNP5LC@C@2XR$3A!L:+ M@NV/"^[VVGWJH0)I8BC ME_["7A>NK@@!@9JQ,VT1%O=3?8]%4B^-2);!CU'Q(0Q^%0S_<5V7,?-=J7XF MP+2'"R4-G_OKU+R^X/>=*,O#9D_AK9AJGNJG*EI>?LDKAI4N ME57 H;B $03F$+946(Y;#IM29;4[O$T)"ZQ:#\[-?YX!>1RM.M^NYF2T%?XH M"KX=&L7I:M\#IF[OMLY]GL8I7@#C(6CIX2$>H>:ZA(0^0 6_]^ZV$JF5FQ1B M@NE'6XG]:U0GT?_I0"%^3H>Y9X3U);2*Y$-!2X#]*ZCC8F,+C3,\^5@F3>A% MT7:J*"Z4-G%)B;]=1!]0:)%PNI:.;.802?='5"+\G-6Q;7UY\F.KCMO?5.A^?\? MAX,/@\%P[]_+BV^,(=+\_1N\2;+X&QFA,<" O7[K #WZMDL-WKFA^Z4J+K- M"95BVEE=$R'=H86;&%D_&B^)*V=35V[6(S3,6D/W7#0S-E]PZ^WK=7[SB'LO MP<+COI])"C2>XCO5R$_6:.)8=J5 \1OM;G[!7X6&.8E\:$DTG'^)KW_QT7B@ M0',,'JRT/S.BSF-@XETWM!GR=$C+/&2+-<>)^<^PD2E<.GS%F!$@IZ_U ]7+ MCXF*9'@T'L/(U2=V2.XKD]#8NT#0; :] ([DQ/S#1VCJ*M0=T !(Z(?-A0AM MXI"1EEJ4JAY_3<^0<98TV#TD#U+QI<-D,)X-IX?G1[,D.9_,(*XX&>Z?#^;) M;)I.HZ-XL,J%,3U-H:0]332:[)]'T_EX-CJ*QH/QT8H2.W \ M2C7D 5KJB%0DY_NCHX.#\5>IU XTO92-';CEP4OU&-KEU1G&ZE[:R-")1(:$ MN$Y:6[RQD9E-:LD3;O)4-^:>Y!X%S-A%5#,-L);7JOM:FM?I-48OY=.7T/QI M.'CV/T1HW&1-VSA[I*RNHRIY!OWFN4T"OT@;*>P9+]*HX*:K\%=C05W!]:W, MA->.XO@TQ:Y3UEXXVM\+SO!.7_M*B \@ZUBDPL! Q4Y3:POZ,].^M06WP+)V M$T66.'+')$C0SBF.N+EN0#V9I(5)Z)/90".Y2P@"TV#\@#.;<:IY2I+-T6!I MJ#V ,K'N]?CTXY+:(\ GP.69D>56W[Y&LH@\22:"#X-9V]@.-'FVR(B2T&PY MFFVU!#?RZ%H:=RCV3R*Q9^HT:?:X\MLD76 ))Y+P@O%,S&T*C/W$$?.WQ3RZ M,F<6="G1^[@HK'EC@FQTM@6-O)M?81[L&GK1NSJX[Z?]G154O) I*/6/0IEU M*91Q9DCE(HME.4-SE+!C3IY1RUGN&XMM4A61O]_'K&[!C@%IU6V9*^Q4P@SG M8 '/S-L61@2OHBSOX5;UX^>A+)$QG",4:[=Z1J[*FKCS_)8CYLM MG9DIV%Z56FRUK^4,-2(' M]Z%NJ/,%:'3BQ?XYS,\N#T0=[8]M'#O$\YNDV"9$^F97[9+$U;QO!BSP:]>2 M^BJ!E'-[F P[M?!>T]"D(U1*#24P:+C(^$',;/@[GTC4*-15@Q<*F]J)HO,[ M+ZJ.+:(6R-R@#K,)=K1PU)%M Z3V.,S?BHPRHK"+NJU&C]8(MR=,BZ_N]3S/>9MQQ:'W!Z*PV@I"XJ8L2\84D&7Q5;@@ Q++6\]/8" M75?85-T&0*67D LV@8Q1KBYPHK^4OBK]F2+\/30/-O*#EPZZQO5#@@BVP_79 MBQ/;R!ICXM/MY/J\ [L.'> '8GTRZHTF]DP1&+4,?9OAJ+B65J3)79-O4LIF M4NV"+05:5! U4J()^PVV$V.J(J]Q5L7M GCWT1RC3;"R2Z*'3A1\8L:9U=Q# M#U64VTG7/LNWV]06KB[YL><*X;5)'HU<:R!Z;DEHU,[GT9,NM75J5GNYJ9WK>083DQ7!BPJ)%C6.EMXENA>\*3"/C5W%8>-P,7UX M@W0=ZLB"LE;(R>HZ6,9N\Q9*S@#; 9#R+M#AJ"CL:IYX498) EWHOC?[?X%F M.&W5YBX.'2S[G#$;69)/CTU_T'Q?HIW/8UDG#!#58W.TX5M(#)Z$66S10;6W MDO4/$+/2@(U?I(@'"JXK,/L3B&%@'VN1#//-(H52!#/RWU%'D-N5*8KS/;,* M/5\Q2ILP2:3[10P3Y"WFFRA.Y<;!;G? EVZ.$)P6,PIG&N?@':B.L0Q2P)?% M94U*"7N+I/:JA;1B:5:!5*I,E^XO-^5G..7[S)): )@I(-3"MK-E$G^.(_!Z M"R&Q9GX@J@?(-9GI[Q$"-*%N/_@;=1D#MD\]O]M>5#RI67I3@M)'K(KQ.\I< M^R_LG'?B!NB0:M>/F*^@@41\8R,&-Z'R\)1S91TJV_*(1^V\K'6NE='J#3HK MX']2HW,G9=B0DA2]T9W@2301N>08M41V'NRA=R&14;-Z+?G$X1CR M(J6S9,1TL$C-98B@3F6PS3'PZ89D^_KV@@&5'0OXWXLB$UO8CO$)_;ZK^3[& M&-V8^T.RP4.*_KI>GMCQ%.-M45:Y,!=&]E)GJ)*K3T%/UP9D=76,'_T>PG$U MG1 [V#D%=\T[%MS7(RJD+2)9=$]P$%D%74^C&QD#,+&;BX>Y\Y[B^V=IGG\+*:@*8!MAX-RMA<5&2.:Q PKH%-+ "VC[\7N:V/W(*G6)V8#BE5#" M/[84\<$N1;Q+$3\\1;R!N^2XT(K*J(SJ(J56/1#E ",)@R?L63EU&ZGF/:U1 MUZXR0U2$W#-PPC%N8Y6+L5?ZWGHM#AY? : ?KJ&ED>?B\F-A)&G2-7\["JPS M1KS+S.V@7LT6/UZ:D"U<<,S7.KF>*PH&M5B[U*Y$/RLO:S^:SJIO_>.4T\@Y M1"DEV M>^7E(6P/ V41R5_G;J@D8FZ%K7TFFS@UGWM8OAO.V.SD[P'O154Q? M(><> V-R7ZQNK;J#BO0"Y5W9EA2M,R/B0,$F*Y$J2+UA0M7=YIT]3FLMH3AQ M>X%3FQ/JIX[@N"ZT?33&_XYP6\P?AML9,'YS!2FN]'I+8L.@D2)LZ\6Y."C^ MJ,BGJN&0193/5 2#Z_)UL$L_IR1O_P++CMVO8Z,Y+"S$M33D)S8ZC_+SOXY/ M3B638A/G>P"Y,.*-/>Y)#HPC :5Y(;BF&$Q.T@5@,0BO*840&95&0)*S=:ED M2?FE.G4*+BLFE!&/45C;U8LILRH.,M"_(>9 MJE6U,D(M+:C5EMC.' M*2;0/Z/J=BM$VSJWQ&M&)8"%Z1&TJ4Y0;,XG5"45XP7 ?C9$4%-*BJ[0N4$6 ML)2FVPOXL=F29WI+0MFXL&=S7EF,BVS3\<^GK^PN29M31B^ KC>>$ZAH,NU? M_/+B]/CU<\TZ"0LY.1QMMC"R&Q/OEVLPJET I:U)+X%PI14E93,5K,455$R9 MG09N7I=S=BGOH-VD )E/SNGBO6[4V&A=H HR>"H!M>0M7T0M M.X4:8FRSI+W*,?YJ3@JBJ4("?V!J*<&T'ME1OYT%OT L#R.QKXK@'ZWYW6@P MG/IQ8RQ AD0R&$<1Q3)3"AQB/-'\HZJ5PQ;%'**0[VB[47^W2HOT&C)D:,S9 MO"1W*$T_PO&N\:WT>LH_2.34NQ:,)3*'G%WPNH2:^2RN@^,+1%N(PGS^^MCJ M2PFSJG.+&@=#F%U)(\P4X]IP.QRMKY\BS$"7P"#5RJ*>BJ"4DU2)4=6Y!9R\ M3!,,@L;950;9^R"",4N(%"I9H77N@AZ%&:ZWJ$IN[-Z2QN+=/*X6-U"F>F7^ M"S>^N;*A=N\7\]L"]K-:TH-/RLCN8 M7)AO1X='>X. 33O006:A(-.#9N.WX^G>2#X$]3<<_LWF@,VGHWWUL04))*U8 M:+QX:'BC0P/9\C*1E!"_B& Q&<)G&J.N9VTC(,B\O,9VDRIA1;DF=IN]J\SL MJ%%R"+?"M$0YGV-D$BN*Z%7X$UDDF =8TW!0$5D65;.RD#)V8_!<5-%B6#]V?Z ?^XYZ M5-MEIMW7KS)[#T%1X&/$I8=AF2V&QWBIO:2U^-<_L/T18.B@K=4,;#LHZMN< MP47C#FV2KJ?+C87=_?2?T6+Y@[M;+7CF 6=Y/' ;'W*_6AWM'=OO<&1X= M[DW_\!'6&RXS0&E9V4TUF$0A^-/%,B]O4KZIJ=0?H=5%C;IZ8WMW3-D'LO!Y M+^@LX*D4Y=(&,N#;,O1) 6/+>3ZX%^ 9YJY12HTQ M=)@HRPFMV3;HO;OZ58A]ODNKA3%EC?"]9# W6NC&3OMW6Q"JG3&RH(&BFQ)Z M6/MCX@AW%!1@=@"K"$$US%?IAG1KB>0W4*E:.3 >DLG46)M!T%7([:NEH^R> MORZCAXYALG=PCS'L >Z7W0<*Z]JG0$08>3LLTEH+CM4^*$%R;2,TPGNU52IK MY.%19ND.=UFZ79;N463I7A581-1$']>H_>&!NNJUVL]6?XD&@]9M_*@17?S0 MCCFILBLA.+-7>\^C(.Y(RAR^3DA>FT0";JSR&E6XNTQ'^+8Y>_6_OGE="U$ MD!1@ 4;;&'7^.Z,O8D0I8!T2DN,05B'ZB)M,(P*]W[L\\A:R/Y!RP'UQV59F M=P$VAF8E(_8(% 8Q#BD':!%%I7Y(_$A06E"ES^ ?^#,\]<8&Q-UD!(P8LQCV MV"S!7MK(0._O;NR/G ^XXC_N#Y7(.:-S.!@K*XJ18OSF^QL8X:J920Z#N'AA M<&F./<9?M2."9KA\)+NU59[#+3&)T0-C$L--S:&G[/J6HHT[?= 'SAI9 M:F^HZS2/E'9S"JPS!GK0:**^&JW.9;3J,W>?XT.<.[$PR=1 6J"WA4N.]H;^QAM1V5<&T?H=OJV(-&4DK1%7+#KTZT#@ ML5(@3!!0K]*]AI>2N&<-6CV UC;G&M>J;A'@$_;"9T%^>,UZ2N[Y)0^I6Y?? MW%UF?_+R!+_],_R!D&(^,P"#?@E0PT;<+'4%U6E"(->?S>_]7UYE(%R2[T:S MEB:9VYIYSEOCL:!G7N(0H.Y 'OO&>^SF8D[W$N*5@Q*B]02'@@+7!#\B[:8# M]*LBK@,]).*C@0H2]DEX*)%ZB=*BTO$!X,W-DIF\*/ IA5,+L,)T7IGM-&WI MU9!<3U0ENVT1SC7R%\;I*/#J[S]L_7K$\0;(K2YU>M>7P(M@[$+(_RH]-6S?U1J:QS!= M<(*KV;T[/(YCP>U@L&ANK&))=ZC2\R2=-8Y*PU@Q;23D$$1M7ENC9V-' @J; M< X,YT+7RV$!(XBRDEGV (?E4*M]!(]V+!84L(D(I 9@'!WAN+;GQ58_[;>[,/FMK#_HL=- MH'"6^0/HX"MS+<%YI>S><*0=%2B=\OH/?'N@#%8);D#]#D9<]OVIH"%@OV^(0L'TGR!)84=!.)-XD#C,1B^KE-@"#]G25D2FM[8"Q<^)VE M72&CE'[SLS'NR8!_5<1[[MO\S_(3/#CD]8&-\B0N\UPRD&1!\@]_E.^H7[JW MZ1'*&]6/E:E%XP2\]84Y5%&!^#7,I5 %'"9\CXGZ5>CS&C2!>*N.+ZJ4$&/Z M#?(+W31 -M6^]@%M!7!=.AGWZ$)P:GF*B4(+!;[@6!63\_(_JS=Y.X1D;'3] MTH.0;0D1W$C$<$.4!!3Q%8(O1*? M!MEB810I7?VL^1.(:=E;WO5Q65"=FZ49!\O+?)I'6)%L59XSG[1*?OGJ]9O@ MG5'Q\67JZ;\GF1D%,@;@VSDX"IAF"@L8OZ9=PI^_/=C7(07A(.B ZRM[F<,0 M:F\,[J('+(>]N["LR@S!F$#M0FK^Z)T('@.H,5I[W@@P^>-:_4! BDOAH2XQ MCUL"(7LEC1I=XDKCO5V1@IK4R $3)ZH0!+*O\@>*5\0S=WG#_MBE8!4\PM\Y M\P'W<]W.D)*&8IJ>^5[C H!+R6L.P_QVY'TG3QN)OE!XR;?W7;B-6@!]J^-' M]%L5F5++2(_1PH6>2@<#I!+ ">6.>_2H5L=\D2 S]:7O^''_3K7O$/!OH M<,$B=T,Y!52MAC8(0&202+_ED25@Z :J-K+%##E;DBK"J#^/8W7O-A?J9UC1 M/1>(T%BX,]9*\F'T"!&PS<#"#.T2,OS\%BHH9?Y#1N/!2G7T"$<&%\NV M<4>=Z:AN<4?H!G MCW1\W:*N!OV^_FGP1?;OX+O#I\%P;_"W,'@R>DKKPXB&>0OE$O24O*V#P=X^ M?&O\%(L"<7E*7Z$'H7:?/!53$E6U+1(#6Q?+<".$CNG]"^DA>#$( M(<5P;[3_-WSB<._ _(GZMU%E8A !L]L%CP5 '05(<+%*D//DQ]4%Q%&OKAWN MH6T>0-]R:R##&NV-IS2LT=[A=,VP.%ZP9F#WD+=F1<6E#Y,X[\?YIQ2ZU2?_ MU21PNL>"MU9X[EB#VR7I8&]_\+?[WL=<8 0WI)-U5/]X^\Y38I="1!"848.] M\3Z"XP=X:-P6: R2(ZPD:\IJU4:$S;D4NP6? +M#>+- *B1G/O M7( U03R"!!3M/IW(7.A>>^!UN,%;"0RE(O6 P$;4\K)65/9W6^9>Y:$?! E> MXF6%SY "[I\H8D*:C8$E-RX@$@;$YJEZDTHHJ3=60CMAUOF.Y[J(S](8"VU$ M@UDE2<:HH/06:&=U9J0#*94YCP88!*:/;@N;1*9T'XT@);R?M 3%^*UFNY]C M0\S2V*473"3!IOB-,Z?A\=[!CJ@2L;%Q>>JT:@UQY3]0-&8/VO7:>>J=O.^* MA6XXX=HEFP4E 2!*\UMS"L9XD MD#NA@^\90/>TF?%6:@MIFII2;/\I'K<&:#&,J'RK$I^61M9]ZE($"[-XU$;Y)# M,#IUI1H]K3 N..MZ+GWVM(U%1N"M:%.B%GO#PY.<5M0OI8P*I@VL980@-X#/QOJ'C%H?VQ.#Y-%5'+-DI*XE>N M4Z ^AN"*T11X[O$RIRZ_*27V[%U']SS%BUD]&>FYN$@K=0/*=K'/;H8;/,'( MQ5R#*_MDX"EXS1IM-'7-=GNIU>>XJ# '8 6A] ^@XS[D-#R-%? M^0* M_Y[6O2N[.N/@B2 L0L;-P-D!2';*S@/>4$ C@_T-9VR2N^0^/\?K]X +;J:> M1S=.RFA80L&/T[JB62F5:1>1)&%5RF]=JMXM11?$O,EO? AG'27D.H/ #399 M$3V[[GS 6-4N>^N[YE10P3.Y/0R@@G5%'P#[U".W Y1!\+_6ET:RY_"FKLN$ MS8F-Y&+]71X52AO82S!.D6:#A071=]JBN[;4) M_#N.D))@\\"Q[^LSH\]FUZ+TUDM;:1B_%4NYZ \[*]CE$NG:5>=SOY%V!6X> M%PBR:88Q<<]/%GK\Z.^2>A M(H^'J5F:0FX^FMKV!J%B<\-A6,=&BD<8_L\=#*HR?Y1IT]%@ES;=I4T?1=I4 M)YV$@3^Y1R)AM14+@\*AA3TJU'EP?'823 X&S_8'*\3\:$S:X U2. 5 &P\ MYH:]"W L/H)2;[/Z B+0T,L5JXR2:A7\0 M>[;K?L*UB@@QC9@FTX];L#W-=9,!'!?&S'AYNUO*V.GR7HV9V2FQ2P?&2JD= M#?."D7Z!P_"M?=7ZE7"=V;*:4?VK;-%(D$5P8(PQWR.!P;7Y[0_'5IW'-CP)902$STA,)Y M;JT68FXC^UL^\H-/ONFQI8#'=ZJ%!D-F>R@N'C7XD8M4$B/2QNU0440SWS^$ M4G05#MU*$?7P7K3EGP55JG?BHQ12].W@/X MT?CHKO;6KO7KUR?KT9!/5MZ@P9!/[708,2D=#=%W@[!+[R!?4]#:=A/KH*;G<,C'+2G@3D#4W=ZM:S<,X%W_'71?4B.UHB"G%>=X7X<=]HZ MN=KDI=;'& 7%A#>4Y(6%+LR;^_9AA5(B[%I*H]Z[R?Q;\I$,[=%]\3@2RVWP^M183UL\@1;T=O_N M:VBO6HO[S/,%M?L3,+'Y]Q*HUZ\A_U- ?@5;W$JOEHJS#4@C19ZSICZ?I1TY MX,/&RT#9E.T@..?VL=+ K:')P-XP40A09];SF[NKQ 6" @M7IRG^GB=,"7_5 MSW)])3F%Q"D;CP^ M,,]H5_!<0$ !_TBT3UW=E?5; 8=PEFO;%H:OEF[V#EE M_A-<@;>[8BJ-09"V.M3N'.\HS27<=P+N:$-@ENX[[#7A9)HXJB"VYZX&\\*( M,F]^QSS6M19\%U696PS>2>JHT^W0TSM8_H4'0^>S)6PC1=D]37T/ IA/B?43 ME3U!.01O1%3K-@9[P9@ G'VJ,6OI6\"9#M/,1?4R4# M3DC+@EMNTYD!OY!*:A&C\SB3.<-=,F>7S'D4R9S;/<*3X],79]"#'.W%#4ZP/6WH[V)*C_#B^(7,[0$^E1 Y;(. MJD0WQE&//QB;N6PXQ?*6:.AMB.[MV[/7\V/#(NIUD=8R:&F,H3SDTQ7'"&_I4!76ZQ*QM< MW.110O\F /WY@/DDA2 KO- X]I0+(%0M+C.8W!DAV/D/$&7%18FP/&MZT3X;D:"50*XK:'CH M0H%0/F8L>'C&99HO ^Z)8#QY8Y?G;#_ [=MD2ZY\S*2@X"*KR? V6P0I'@A0 M8ZM$Y2G+JVTK0+,U1-$D[67VSO:"LP5X5#]R/_'@6,6@51@1"*3*^N:@-UA;4!$9B<(>&TL.BQ:"RP*X0&O,T%X$/=283)-I:V$$) MMB[E3I;UX0J;."DL/2^58'.FK%FDD(\E@;Z[NLS\2GK[,G,K$Y6OH=LT-Q@V M74$I8SI>Y+VB/=A*NLQ7Q9S.P":),>T@0I\/S':Y1X4LKDR(M;A@\MH4 S9J MMZTT^W=':96MW(G3E#US,_XSIB?D/DRB8+>E$27FQ\@=J;GIJ<\.E]58/Y?? M2'1#;F#"E=E^BE[LPUXRT+-F)KJ4%"\[=?#):J=4LT!2I:TU@?C%=< TBC]; MIL8NT2+%7; K).@<3;QL?V3^-_1_A9JD]K8*^X/+=GE:UQBMU%_SF)U3Y&E\ M!C2-B+!F+](Q/:H4OAY_I[D=0MZ%,FTXP$'8UFA$)9@2[ %L<+XG#& 8U MJIO[H0QJR8/]E[I ).X*C%@D(FPG(7?]F4AZ5@(C?E]A!!4K#<=1#E=*$,I06KBMNTL;TX,M[57)?32#/8QGU OWCGF.]#R+EB43=% M3L&@.V2OO37+;+OG0OV%!&JAXX-17&BRVZ'\I970K<;8&5T5%FSPGA,W)SZI M],N\A2)1J]O?V$ESN\DML=ANV94KP(?A7<05-5!A07^*_+A%?_)*I5L@%E+" M19\I>0;ZYK)X5D$S-: >QIJ2U.W M4E8MNLGHLP9H*$RR2*#:.)O(YC :I*6G5R&[N63%?:)D56>,-B['EE2.H_]< M:NYBC%;=L%M-A+<^C,C^RAK*8)JQU,(4F.L<0P++-/H@>9>N'17+OF2:?:83 MXL)B3.*D9F]\"96H'&G#((&\VK9'@;+MWE=>8DC 80>(SYN=BA9;B#ERK[8R MXU<.O]P]V.=,DB9AI_A,[$R(]E$0D T_L,S*W$HRLTB#Z8ISP )>)C\$NY%7 M0&RR6S)-;"UV#41[N4OT* )X&!2=E71=%5#%"3C%7M_5K'::1S=D[19R*&!A ML4@>QIH :4F3BANRNMI10]O/(^1$;Q@8^?W0/57TG5"U.W+)2KJ1N@=8:/L+ M"A#?-)) NZ5B8-4+D4)^510R@W+#4&4A2R2W_+@:VOU@B)Y MZ!_MFIPUPB69GLV*)$LC=!['1GGNR*1Y*MP9MZ93E8%4KWH.CS.I-]HE]79) MO<>1U+L]>(:O.?_M>58#\5'+/]HN ?J,[=]A78*#X[U +PWNBEJ<0%8' M^+!*T1 MN3U 2)V;$[)/KG"1EJ7(:S2UW>'_\-/%_SW4Y:=)!,#@J'\UI(BX"ZVE'WM8 MDN AAX?OWX/]_<.#_?3P?)!,Y^>3X5%R?GATL']^3P\/]Z?!\,AL>P'^FY[.C M^.!\_RB:I^G!:#X>K]IW1R=TM\#X$F.R1%)&6L-51L;W5RE?1WO!B8MW@E1Y MJT,W/3LGHAN5KX*A;+OISA;S4?#5=DY/J%B#=!(;P%(EH"U>SXZV!],AE^GU!BO0!8% M9< MR]::_$XXMW'H[[0=X.S=NEU"!,\VAG8\+19(8&&+W76=42\ [3)+ MY\&+C\(N]@9,J91BHO29.^7\&8&I?,89,APZV+D53*?;B%AOQ-)N!+=_L/1R MIVV>TETP'$?/AOM/TJ>LRB?3!+7 MFI):@E%$J\U>67M('8I2O#J4>OS-E$CU8AIK[@CO1]78"EXLPD*$TGH4_0K8D MJIAV)PELAWO52Q0[HG#R01&2"0[,B$9-PL!I%,=C<'=KYU$9JI:%4TN ^=V94*6>-D*U5:;Z$W)*0 M* !327HB&WW-M$U [UDQAS'OFI,1(ZUI'+74Y9:PVA!"*QJ/2@\L :X"-/(4 MU#>U4?J86[Q9?V0+\ 2QK*4C1G'4)9V,&A._,]B;/&]MHOBZQ'9K)19IELLF,2YYQ+1G0A,7HZ/%BE9"'S<6#7@)$%/(PV)Q_GGT X<4@5^<'M)3WGM!M9L)] M5OZ65?>L!,0,I-0PGB!9M%Z/,\<[WN5X=SG>QY_C=:1CJOH=XUWE([ES%&V: M[]61>06H)+*)(- -#5=G>6;L)8X0"=^_ASNZ_UT@Y62VPNUVYW#.]U^_*]*/ MA;O_8++:F;4 >&0[MM^/NLM%X-I28Z]CG1Q2^P$RR=GPZ']6%#65(, \RI"J MVE)(HU7:XI*GR9H@++N;%=0*N:1+WTVU*1E3GDF&3"NKGDGX@(T2=H-EQ<26 M%5NFOF7K,:3 -\TR&==6G![=5XJ<7^=(W\^/Z;+%]VS/R@[KS=T&9I4_$R?B M+!,@W^J'A(GNO]-KL\RO"F"ZH6,$[CR.P>%K/]GD6IE8#&DW8R8J4(S+\6&G M2A3O,U"7)9JM;ZJ+J.!^&8Z T0A28FP3%:FP<:N3-V=O=)O7VQD#5BX7G.SP M![QU+H@F]F45+5)@PPF>C ;#\5/@%5#F*EBGGV/E&/B(YG"X;@_[7_<@;>W. MJVI<"R=<-FMS"N_YF^"WL^,P>+MWLA>*E\\5[Q!WN,AJ:IF&RCWV"IBR:B%= MBHS_!@&!MNI5_12GM0$_H(0QR\W9VWL[C]W;$M9F;2\9ILU.GS=Z2-E-IY)=& MFWU)]P:PK9=1E5Z:$4L!]H]BAC\7,_P+CF8M@?<7',/[LDSB/)O/@]?1!V,, MPY/_ 7B@FR\XB#^BY[?M +Q9&E<7;M1'XMR_3]E&!T/"G,^UPF@-L#6L\O"9 MLDW_I"WA[#5K5MO( KG^?\2Z-29AW7J,AW_2+M=+86QS.UC+[@YN"-%/H%AT MF?PRAL.'DG:S<#QV&J&SD[5A__2JAMH,!CHI->2-6<+O&56JQ3!<1U&$*&.C MJ^VV\'TB2ZKNE3> 9X2CR=K]R6\%2C@"Z>JGCCKLY/C-CPX%P*DPAWH4/+,1 MO+3I>JQKY1=N%5NH;[GCO0>K" W"-('Y)Z3F8WPW21LSR/C8[K"*<13B;5!C MR6-J+H&Z"\LK)47.\(6U; DJ-(1C@BJ+VJ9[V$&@X1(]]W""/YT !+8BKSZ" M[J/0!)V2\RSJ_U6WOIY$\3C8VS>;?@7<8W&4LXR8;QHY, )H_O#?P5:J]1\A MA8D+S@I^2_!"?7'%GJBL#L+^(7W"5:I9HR,I%B[3#>G<^\&2@W28#CCT.#-X M+>/-PN#3!-'W@C=MY=;&%CPTI4@SR'+I;O _%W^8>5$44&Q[@<#HUWGURN^W M.@\5%,'FJY7>K#IHT(TV>J'Z57V*''3)H^N7*[3;0 (<1*X?/"T\#DL7 M*?3$EZGH2E+D?^1D4^?73)7E]9HA='1H3/;(TLB8LA\S+K8(Z&%*@%2*I#RP MF(3:WKJ!7*?1!U0OR+'/J!\(98EZZJ!X*$^CP$>>ZENKJ#S[R,:M841Z!717 M4+MKML0O',5\J]U$]?YXW"9CH/XS\2D(\% WC^7Z*<$[T[C656K M5Y7MB5;D1YZ -!_J4W'@!^,Y_GTCD0QHGN]-U2*-10( MOJRZ():=1=;<:V?_Q!XJ<"Q28BT;U0)%:&3]J>*PJ>TD\@UC5K1G"%%K=K;2 M[G4G)^Y2X=VUA$^?C.]83W=8./O+#0(L6+9QY4=M(:/!A; =!$)(ZR$H3.UT M9SBN>PAM/"Y6?VV=3Q[2MU=?7>+]V%RAB ;_=QI;05!M;(6VV+NQD?)9=QY! MF3->X[^5Q>O,!XNTI2XMR*QKQBP@E)F;NJ)]TCQ5B#V)A*M'B+&[;7%0T8J: M*KV;'UZ,(((,>[O1+E-W!E.G9J-2_H&2+O@O7FIF@)DAG9A93;,TE0R,7SBD*[U);%S6]]TIB<9/V34Q+HVBW1G_HC3>?AB^6HTJ\N\ M;=+/DDQ:'[M67X1HQT,REOS?)KEES9MRN0T+OKK*D+O[7*F[S[W:WS45B/]# M1)W/+@O>(,G9]3OS&9;DN_J[P ,5T#0_B2!M2T[?[M-WJ$._6+JP MB1;&2DY"<$NPR7?<-E\P+^9'7K<\(??8@!?[.^#%#GCQ<."%$$XEA\.#X2PY MGQY.I^>3:)J<'T6#R?E\/IW,#N>C=#J.5HO*?\0&$:]

'YY.AH/)Q\G?7D M/^YQPPRU(!NM),\^&D$J?FT7YEG8B1%^?@H"^;RE>9P/!^?#C M\S'_;5R\_W%T]?O'GP:+JP^3ZW_]^]V_YK/K;P*:V-^_R3["JI9 ZS^/\CK] M)BBBA9E=&B?? YA].)CM#X^KZC@IP3E_F4<7WZ#<_!I5U?E@^&(R;?[1EH/L M]Y>S]I?)>?O\?__YS7__^E_?>6/>V!1^+8N[9_&_;P]_C8_B][\,?AK-#I?1 M;V?9B\K,HMR66>@IO*L61=.=P;]&_QK^_/'7_QN^>/^ASL[>O_SM1?LO,X-B M6V;0V8?>252_7KV:_O2^>#5X_VYP%C4O__%K/3_^YK_3[B0\%HUH_S >#@>C M\Z/!<'8^&4T.SJ-9?'@^&T?1-#I(TJ/#N(>!Q1$PG$IXYF59&2U3_*,U#GN2 MQ5^G[CO94\0I@5V;@!3 M^'Q\.#DRLF+N16#O.4\'H\-T/!GO3_>GGJP [\^K5Z_.1Z/AT<'AYY((WR;< M&H%0I$>O7MD==8=H.+#@1 NV9SP]D-. >JI_\ M7 SC]' P'L?GR<%^?#XYV(_.HU$T/Y\9BW"2S ^GD]%X]5R,^"TW;ZX+,]S+ M;%G.3RB_>CX>CZ?[@Z_S<(SV9/UO KLT&%W@Y/./2!=#)6[X.6[2+WY>\Y0Q MEF=.(LQ7@#5GHP;<'SEDYFR-M^-.^2,':.WAV2ZQ_N:_7R#NUU/'P5OH&/^% MZV60WM.RY/#W49LP488 MY339'8EMV(G=D=B2C1CL'>WO-F(+-F*ZMS_9;<06;,1.-6W)1ASN'8QW&[$Y M\-Q=_L.7F_6A^7#%\WX('NVS*8,_O0:'=Z2][HH^4&AE];\V^/"9+>;/G_C; MB<7VB<5=5N/7*15WF7!?YZI\[6?E+C-FX_/_M<7X;3GW)[PS%[90UA^E!M@9 M$3MAV9D6.]-B=X*^R*ILO<'A:&QV%L?N".PLCIVP["R.K5N5G<6Q.T%_&8NC M2A=$@K8S.'8G8&=P[(1E9W!LW:KL#([="?K+&!S1593E$3,[[XR.W2G8&1T[ M8=D9'5NW*CNC8W>"_C)&!]&N[JR-G?COK(V=L.RLC:U;E9VUL3M!?QEK ]KT M>?Q,.WMC=P!V]L9.6';VQK:LRL[>V)V@OXR]@6Q@3$>TLSEVA^!QVAR?K%@K M^$3E:3M!V-D3.WMB=X*^.GLB[N//W=D3NT/P5=D3JJ5X4^Y,BGO)0ESF\(]_ M_V;TS1](]_2Y-G.XGXFJ_(I4=CO+L;=]+_5=V-LW2G_G87 M(N.YTRJZV,G#5WT=/DD_QGF;[,H(=T?@J[T3 ?61)D&[[ 9-=I+PU5Z.Z<>T MBK-Z=SM^U;?CCM5G=SM^[;>C:,(5,LV=)'RUM^.RRN*=0'SMMV.5SO,T;M)D M=SGN3L#7>3F6;5,W4;$:/]E)PE=[.2J9V ':ONH+,BM W-O%#HNS.P%?ZP6Y M!"P:M:7&ALI!M%Q6:9Q1UUUL$UOOU.3N[O3$92Q__@MSPY+Q)P_'3D*^ MY&WYF&5EMI.5SW^3/F8!B3_-11O%'RZJLBV2[_\CCM-T/O^RWNH++* -=/5+ M@#A?=#;*JS0)9C0@G(SW=SO_RG$^FT]'YT6 Z.Q\EA_O3='H0#T:I>=UWD?SB59,NAN,3(W]15IRF M.=HA]66VK,^'P\/Q8,K?_@+K@-(S'%D1NL4(Q.=9D37951H8R_:CL6H;LX +HTOY(8LH MR\T3S%\PW,ZV;F!>9-8RFI5M$QPOJRRGH8RF83 :C":TYO2$.3[@.FLN<1!G MKIH6OO/B8WP9%1=I<%(N%EE=FRGL><JQF;RMLB+.EE%^',=&#S=FSB_3M#9O/$NKJRQ.ZZ_S]$SV M KLT_X^]+VU.',G6_GY_!5$S<]_J&^#2OKA[*H)%8'8PN[\HA)2 +"&!%A;_ M^C=3 HP-MK'+[#D]7>V"M)3+>9ZSY,F3D>>YB:#)"=9C.3V'A,9[:(!2.;)= MV%D']!4GV 1''X>.&/P8"O\;HJVO@.ZA7X9? P2ED=\U=36BA&-'S^OISO B M('-4C4COKA%_:?KD]S_PC^535!,H#K*M!HM7+:,?-'KEPL8DB/\GG<6N]#O[\G_7./QM[K^"Z-JI!B'$JL/[Z(-9U@&+$E!Y\\:UB3I6YN[0? MA1N*6<: ;E?!'C0/$?9&$/X3>?X1S<;&5 Z566QMPA:V9LP$/>\V_*WE1X&9 MN/S,=G7$&;=.H%(G #W[Q5.#5?'LT4&6Y T.I9_7!)+]P &]__[X5[V6"%\Y;_07W6L _L#5::#>"O>,C 2.N6 A6L8M:6>J&F#H"V6,C R5I1 M1QCJA9-I*B,7W"Y_6!\,!SNTH \D=&HHK$N>#'"M^)Z]_"!$=?#)"^RO.9Z+ M-ILX]IQEQQ8O),.IVBUXR]_0U'LQ_34@K3W>AH_LF?9T.=/+O\>04WT;\N04 M3M.'%+70&,&+ETV5+A0RWP-[X:MO=F?7U,LGMIP@(Z]B,()XQ.G?G'.D+/:E M*PXP]SM(O$C<\#P6^>^;]D]N%X6,<\3]LBV3\M[V6.B"L3<;FZC?B?-##RKT M8C;__.1.\3J@CKVB?[(%NC0$ D]M90I$5K9 )# &?//S1T"?1>"%W".:/>H4 MO0XWHWW@^%\_R;].7,3?'\+W;QT\C^^EF!]G 5\,=HN^YMI6I [4@04= MU;X.W&@D:ZDW*&X(??A($'F)A/J8"V.(NAMQP,AVO#,5_ 7M4IAV3TED/[ MSE+2,,5>KKR6; N[ [7K![ M \TZVQDMMA8"KSL.M:R&-.U-Y(47>GZ"1V'!.R'!6\D5VJ5_3PJCD= ]R?GF M/$(1T0@IBLS9"R.-A?&C:Z%@GEFUR$/#)8'D]('O]1EL^,N4"-P;$[ MBNK=@M#\^WO]1?\[]FWO[P]?%S;[^\2/W]M>OZ71Z ]]PT[(?09O8O\M7>-FA# 106.-D*&\!4A?%&HYU7&RGDBF<5(QD@^ M4R0G;0.1:]W!=1K$#KT@%>:8A7]E+P2A(8L!BP[P.68#A6I"B" M$GEH.GM#BA)(D=?( +3DS< ;'@RT$(QAV80@?U*+).:Q@C)UD2^[7.*]=X0[ MV)LNAF1P0@HFF0](AF&@0P[= JSKZ:+G-M2B0 M^5R7!!D,%X)*DL"PQ+#\ );P'Y:!V$11-)K\I8$>R<@*(9!P9@GF4*A$[XK4 M@ELPH/*$FA75)$+%WR$<^;_^[U+@B+-@,1QW@J,8')VE?QDD(4-L"+!S)#(9 M#^51]QT0GO **G-P2H>#D Q9G!&*"[N*.$ M0 1^Z*\)29$$P_[@$N6Y%P-A73/B#ZRFFN:@ ,D%/F]J1.:KU,8)]MB_,XL:I MUI@!_H !J$,S0,FV8EC/?Q;E. T;H_P/4$Z?-\JQK@]9 .=Q8Q;8*=F#(E@! M_O-K0E,L1Z,=8I3'?2@2*-@0HW4 F2"I. BVO4=I))#1-?\(9S&.("X' MFC@[&T/S#*#YG'E5LF\BY/)JG;>K9+ZMF14-JN7U:B)4D):%+SK4U[P6PC^.-9%TA<$<9SFA2'^=8@?/-CU?1#_HT#715$ 3B3#%/!U M"CA8WO67X]U8TP-J? SWS\(=)ZYAN'\=[L)9:/:O9ZA>%-1Q=AJ& M^M>A+IZ-9L=P#^".,]XPW'>".T<(/$-#N#,T37++T-WA:C%LJVZXM4##HCH# MQ"E[.3BEVT*RF]B_$=DE/@


__X%_+*=%-8'BW'9M;[!8]!C\V;.'MS1:_ 6H".(_>P$/&CYPEM)&,2,O M0CS_BVR:Q7Y6T.O@S_]9[WQ748V^8\/)C4&2L)W;?P7'\8F_UT8U")>,"J#2 M![&N Q0CIO3@BV\5&&8O[S=]=VX%+=$LM>H7F(L#>"\)_(\X]H M-C:F5' 6DL/[-='0G+K0-,!0D#>O:+IP:K BG@ M($ORZ$/YZ\W7&"!8#OIY32 =A+#]5[V!@T-;2 IZOAKV:PF)8 D5W[.7'X0+ M&'SR8IG7"'G19G/)SDP7XY11K(O_1!9<0'.&L5<\"=<<)0":-_'!=#\UP*G0GG6 M_2/'1J)D6^ZE@1WGC&*P[PAVAN5H'H&=$@6..W")AQI N(Q\D& 2[F8K+F*% MYSWM\(9J4ESM:2,6N =]W873"W\+/>SUM2$0YA=4S)#"^:(8YG\ \X.I]+WA M^W6BRH7A&R>(8GSO$,AQNBD&^6X@)PF6XZ@ Y#2J_83*X:C)X/]OUPM".L^ PVG=".P2-R(?;:Y1 MBKQVZ.N.MNZN)1T L;JQR594X)@BP8V@%!7IAMMIRA!=#-P"INE&TG#6[4A" ML8PHRH,+P1YW75O5@[]%T2Y\O!_4@WHS\!\-'HL8)6$[CCT%CAM\4D =A3^/ M%,>;H^\=X-F0-[B_+H8V<'(=IHT_HHW#A09TQ_4BSQG.O +4-E$@6I #9K3 M!+74:S7%Z2K0=HR59R:81^)J %'HAE*7!4U\J.+:H7FP/.LWH)G6+<52=<7$ MT%R')H6UYI5#DSJBU@QDGU&\ON*%B/Y0R"(.-WQJG$L'NQ*][?/#R=-98JN;HA4 M;%-7YY<#+I+ ]NXIH2N+KA>!>$*6']KJB_1T$[Q0 ?<^_( A6,3T]Z#OFZ'. MJ<7J2\X_5UG\2?Z%9?&D9%&UG9'M!+E6W7D$LC-P #I;!<40&3@JVH5R@HM+ M%O0?B*L6)FFO[5.A@9/\W^ZJ,%(HLBA!-$C8@'\)LCQJB1@5^5FR;R(T'1,( MBA=CIK@N_XWOF.[R&5(F*5VCC"HI+"=60)!;I\Q?I/Z)GDKX46::P+)^2+.\Q M+!/4&"*92Q%<&@ON*0GN$>V*BQ%IO#N/13H4Z4O9]"'Q'OWYBO2FB=S[C(E\ M,3*,M^;/5X9WV)I?_.8S!X=77G.7(KYXX_T"Q/>C0PO[L& M\0VS]@+1I2[E_!:%M^NN072?+0>2NRSYQ;MV%R"_.PX&(Q0DL=#2+I"]+=O%VW!7);GBIV*6<]J;P-MP%R.Z'IF_Q^4@L=2D)PQ3> M@KL T=V1=BGFLF07[[L=6G;3@32AFSZ1++YUWG3M"-_77WWS_/+EZ=2U3]#) MR."O:\?^;D@1#+<<#7QY[FZ7DZ3+)Z(YW7A<\.H;#KXJ?##%WA"K$Z26;8'5 ME$70R< ($2'^7IT<#?\\@W.)YT _X?Q?^#QI(!E>_#7BXJE],/0"M)%P'+# MB$O%5-"UOJNK0FTGHCB.8H5MW^*+ YQG_N):'*%G:[\+O]RQGTI$U_[[0V85 MCM0 VY,YDB9D1J-Z;D+*(T518HG%.Y'>. Z_(VL!X8DAZP%DLC7_"'L MUESF!%80^$6[0YTU)ZGGL^9O5^<(GJ,!U0XC?*]H^_6WIFZ!6Q]=18]^VO@Z M>,FM:YLZ*ON!IB)"B%B(M>/)MVN.C%3D4O?JR8GQ*Z"L62E-SK]329(35! M[G9I0188K<>1%-EE-&U?C/Y2MC_D\'^"^;LC>>G=WI,2S=3M"HE[:O?0-O6*O)8>3HUDD6*_(DA@/Z)ML+-B*VVEJ M)TGS7@C4K@X A5RP8T_#"RG]WW^1'/'WYI\[#.O%$C,WY*D-[W,=BI1?#B*/=RT(C&YT.AW(<[L #!V@5OVOJ:EQ5 M;?]KRG,9S^Q%UIX?>7Y!)'Q#)'B%Y<%!0Z9VAFLJ-O+SY?W#D+Z'/3B/4:2/ M+73;D^I[\+MDO)R(9%.1?T7^T6?(F"WY0S@/:B2@O!D<%!QMR@\=!YF$_Z ; M=.2Z+4.52R_^UNUJ/,*8ZC8W9=%&?3'Q%+&2)+&>BW<5_3/=M!GF^W1_=BL$C'UX:'>4!^:#;$/C4*&_N?7BP[]_ES((Z2(DY:E M;X^0;&.2$YN!CRZP_5/V.-P*KC0=R00O""0<(O-#\^GV\W)\>7)Y7#D[ODH[ MDM9:%\Z$8D+9!+4! )XK"QQ+"<+7M-4+D5\\-A(^%]TW"+78JT-#%!V4548[ M1HX,".8R-<0Z1FJ>K1H#Z+<#QY7& MOOX-&%D#![IR=NT%B_2."'J1-S\EZ!Q]H:Y3X[ 7IG&2BCM(F_;4E6DHD=QW MV%TOT81>$ G><$KHN3RH'!D7W.4HGA)*K_!L**GK8KURH%?B_36H!$]_KM[X MX0X'5A'GIB+X5U X8HK-EQ)9<,K#]:0\T 1.>< I#Y]/>3@7+END9M B0;(B M2C]P:[=0;/L:@/% 0M' M.[#Q$[;B:$&45G> ZMF.>\#>O),1I&"8H!H\)H]]= M;"2XX48"E,\W927R$ST*$1%%_+UV1(@B__[KPQV(:-"/@&:!]K(+[@N?6@]B MNE'XZ6:D"@21JO"V2!7YWKV5[PT4=8!^';W%@RIFZ8GKX8J-X+S:VMM^.7KB M>@?#-/2?*&D)[>)/@+DX2(4(!CHX<+AKD_%B.+V5/#P/;#E--W B([;O1.Q0 MH**+ UD?_'IDY 7L5Q/T1T33@ 3;*T'UT$4-:1B8 9 B>: VC.^=;8AP/K MZ6A*%CK#0\?9;.MH OBN8DLHKAY"=Z'BCJFYZ@/('J+-%-I!PLYHO?TH. U6(5T1K:KW7]R\=]W+T5(I#H!(AW;R*(!F"W ME<@H1/0:K_6@=0I[M;)?5VSPS> /Q!EUPD%Z=*'(N@!B]-F,#MZ]T":OKF%Y MB[,:-[6;2 ]HB) C+E!]R /09HB8RM1=:1)E-()#"3PWQT<,CKZ 8_;-E]"L M/?\^:B'-U $ZW;6.U.4C@[$=D]:A)&B^BJ;]>:%W)_:@]Y'ZP';7OUTL#6P" M5?04:DQHG04CAJHS*$$?3"9Z%5H=N^LI\(60SJ#%%DRN EG1"5ZM=&T?/F( M$/_L:&8@X>@Y(8FN; LT[\LFT=4#-3\X3PX-(L@=\/\]!_;J:*M17E\ U?21 M?;&8L=!RL%6@^4X8G(9SA* >,(CN&NZ;HUVNU8<3]\&T1-=7\'5_T$*'E*2% M@$,"$?3K)E+SH:99:[P:&YC!6;7@HZ*(9Y0("NHCWM%A5\!$UX+C_A!>4*;0 M^P*A&2+R"&&EZ:YJVN[BF;N-,23/Q20'%LUS;R:*Z2O>ZDU;338_5)'0W(=+ M"C6DJL )AMW6AX&E-E0T@)3Y,UM'D&$7*^LV[@XC M@>#M E,'DP70UO +9QO-'YS3-51U5UIRS78_386>1.RIPO$&F9+06(%&D7-D MI1Z8AD&G0N8:!IU"=2B&O@4_#_Q0 )T(I(R5Y=<*!$&@'AT[I#UU44!EX46$ MS]IUT1>,JK@O7VL[K[7ABZ\7&C!\E;JR,4,5I'BWD9_Z7PN?,:264/1=]-QU MD 4O1^RZXIE5+8X/.1F^ZZ<.7Z-;$]N<++1-H*'UP ."&A(ZJ58_8 /7[SZ& M#FL4]0%Y_2:811Y]K;^0_?I@?8SKN-FZ2)H-NP^]80AY]%>DWJ I@(SG-2@L M;:4=B-)3#& A1"N0,VT3A-PX#:TC^)XH(H&U_BT O[US@=!$%YA%35V *IMX M8-DQ=]6SK;^/ &VM<];FPMFPFSID8=U;KO/Q:@^79FH/NGKT>=-R-:,"%R]<-OV4 U U=!6%\;2D3D&S-T!!2K%?1.?3J==-_"/'>?>DX3)&[#^EA:D5" MLVOY6&_@V'Y_ /O]8BQO]36B:$@*0HV/WJG#5ZJ!4(;(F]J^J85O[Z%@W'.L M)WQL+YA+=VML=B-!]"82A\-QD5WU_-[G5ZQZP;O'7D5ODA;$YY87RVTI+B+: $_C7Z[HCL%RV6A,W4%W _X1^V0O' M^[ L^DQB+\@I^E5F6O;7?>&Y+2W*I<<;!#F6QN=S-,X-0Q+#4?#"F] K61AU M\#M@+AAU9=QN-VQ#QW%EVX;S#J=BQ6A#3%?]_BG8!DW>-UIN&+;C=JWW/)G?]9"3UA,S\HS>$NI M?5UNWD!0=W[[V6H!?Y:Q]TYYMZ /,5.90YOJMJ?/@+9MU=;H;*E^0JI]F0BZ M:":@[WZM?_%'8WB=!HFZ%^1"#B!SQ" OJXC,IXZR*D,F;.0&_N^_1(X7_WZ= M@/@J@? [LLF"+N^H9J27\KDPIJ'H!.2Q\/:C:\(57=* "V$<1 +@Q^C77YBU M*Y\@- Z?OX",. @D=\OFY\U*Q6VD-F(YQ7+ZCIR^)-%5P%]]M6UD+W57R)[! M'0( Y5:\(WG'CC%<5=D7ECBQBB"_W%\'J191@A^LU8K@JA)+)D$N390'M%Y0 MB\ )3^?MHIL\C5__8*>ZGD]3^5I(9?-0D\*>V[I4OS717 M1_8@*8K,T6*G!P!2P0X#ZFM@:LX3H^DX8Y)&.=$O5ILE)M_.]W_\7M:)>8VC M%W5CCC57+Q-VLN;NP@?5 T<%NF<+AI%*0+(SNW!ITU7=,5Y/FO'5K8 MH4+*\8;U3J&5;R3#S_;JS0J-*[G\&5^D> 3;([;OP@5 ^2 SE"$;;CH-@APT ME(RB.,O 8?A+?QWYE-Q+^@X]RD\=@U%ZJBIP"B/W:)*0&9(A98'7>C(0>I36 M X#C*/'%,9BZ*IMZ.]9/W8\%(MD8#E)NE\E*=!69 :];SKAJ+O^0[K0)*I:D M'XIMIPE 5:8V6RH#*<7%DNT8,=29#/R-A.HQ4]B2?=VR8%')02?M%(EABQ#Y,95HF7K=\U.D'ML7/24)IF50N5E>J_=*VJCQ8XX MXU'(06>K+[.;+2>*T7$SCP]C*=::6U62RB1&2A6VW!R1*?=![TE($4K9'L:R M7<+N"^B9&R,JQS*.,+CO^ :5J'6&GB-,6[&IS&V^O58FR-+(D^(&521FY2?= M8,IN5>8W6^;KQ4R12DY9(N/*Q6*%(G+N?546-EOZ4K)%.L/BHP&J;"X/[N_+ M)1*UY%ZW[-=$UM:+PP%1[C4%>C.N3 M9@$^=Q6[LW&6+&H;-WN/?4>8%^WK%0GZY=&4J-!-C($W2S6JU6- MJ,,.;%FJ.Z;5S)%]HT>,Q;)9R2JD%I\'33=DJG]?[!*>6XL3G-7NQV;E9$T7 MIZCIAE!!Y%:;M, 7I;'?MEN"&I.G3=C7;:N5C)$>GYUF&YE8IIY0R[Z1ATM M;5FM5.%A.-#@W$OS >$UQ5%??6CU98K<;-J:3QJE:LWL-:@G>SSPY;A<\^*H MZ<:PFY^Z!JUG$[XI4>Z&^N.I*X&.[!% M7,!P* ]:6<$F_.%=[,FZ[Q6:C3YJ2K]NVDR58@\L2#*-N2K/B]UFHR?DX0QL MDZPX*10:8):76OGN,%^<]>>Q%AS6%LE*E8I/G%))T(V,&7,>04ZP)CGXU"V2 M-9W,4LU*,Z])0[Y6:LW:?GPDPZ=N8P&ZU];M4K=K*/0#5T_Y NFV^ZCIQK#T MF>7W2VG2:@SMY,RQ"O; 2,*F6R2KJ%;!J#X=MQIEL=HLUNB$U='ZR$?<:/HP M:#1;TVQ)E)1NT:X]^1WO(0.;;EFM 4\?B=9CZ2%& O&NFX'J:@L,)_>]](2T/G3CUG8F5DV5+K22?>_U_4?[J0!Z0[#OY<%] M\N3T^EU)NQ7E>&L3@_J@[A%>E^.L"WG#8+RO>L/K\L?K;RT7]U5&/^J4?'(&5C<'LV_= M'/SA;- W/'?4! _AO.55U@&GF7@PD2 ^@Y"/$(9UA?Q1?Z&6DZ, M'I3IN(V%'WUQ9O9XRRTZ5;KS57.[X>ZHE7X_T% '44&A#WCUTQ"&CDZK)/(I MS M&"4;)Z\#$Q:+D-#V:O6KK'[^3B\(G2J!<;\_%JOT0'9^^O/6K4=(+!?H! MEN]3J/[BE;Q80"]50-\-D9^,@%Z%4TB&-X4'-Q:MRB>CT_ 3Q0QSV+$A>L&& MZ+\OU0&C7X]T>68R[2AJ4/#*M_3PH!>JD8KRZ()2FW*CEI*?&/V1K1DSVD@R M=[&IF$Z,6+;ZX\7QL+@KEWOKY\%,RV>:NB5V#8[3>+HOZ]1<@K^D 54?*J;[ MWQ\Q^@=*MQ\JWG]_Z#/OUO*'FNTMOE\>'//=6%]11K<(D7%+0_^1GN$8]Y** MXZ!R[4$IKA\1%ZX3_"WZQRK9MI%J=@?>@R,I+).,9>9/6II ^=OTC]\D%648 M;GFX;#D3V-G$&#]+]_'0&*=D-.W$[K7<(9I*+'QSC'&*<^_&;C5(B^P[$+\]37I@P=0>5BET5;'2 "N",HLS? M96E#"W@7X7X[^"6 EXBV#4%K:BJK[UY/;S30FT MYA15KTN%%%65.6214&R4Y,3]6208IN<+TR-'"<[>NO@D3*>/?6XZTJ::P=UW MM1A_"E$,[YE&!I[[=JCC/6,E:J5_L.5VTY_3-1L>5NT_?;H>LRIA# M7MM":.-6,N;G:&LDY:_U!QP$C1M:!,O>4NBC';P4T-ZHLL.^P@[-U!.)UJR\>("!Q[ M]*?D8'R[1E_ 7 I1'K>T,H)X>#CE[<@H)_6+B;KR,#5J/8Z6039E/4*_0T0: MGH\RXGN!4 M&29E"._M> M-<:#F--ZZC'W+!-'%6Q16@;!1,5WT\@P,J\6F2<7N3@S\^(C9$[RH]ADX,X( M8CY.N&Q3U1)TH8J0B?8Y>"XJT/0EI&*<%D:QOW6ZV[975%3@M*8!@P*#X@22 M'G#)@$^4#*@X]@B.8QZ-C$QT(S/:R4 '.D?#X-I4$UWRJZBJ/_3-X"8;#8P< M=+4R,B.P?8_M>^QY__$F0PC "H)?W-*D)?BV9S7-:-*LEXG)@\2UBCICWH'6 M%%TE0P5YBF*4YK$?CG&*_? ]A/D_A5/>(!.EGF02$N"8@F>*8J\K]%'_P@,2 M+/=>IL_9>.5_;H!D;%N;ZJ:)_8^+]C_PX8B3MD*6*-S"9#%QV- >>1XT]!D) M'E(I,^[(?73-'+0X&#XJ$._%%S&8,9A/,$9P2F#^=E/E'3!/9[7T_6"DI!OC MNT),C&O+Q,Q@BUP?766+ B!, ME.=)' #!>,4!D.\_;ODEO$HSA9/&5$XG8BPY4-HNYS?T *]!?D*4Y9AOL3C> M6OESCHW<(R&*V+V([RXL$^Q87;1C=46I"Z?$E=]NVY1' %UL8O4+0'%! .-R MK^&&S+F%)%5):17']E@T:FWIP6FR6MHEJC(9U.'DHJRX1YOFZB& F0#'8O9F M-7V6"89R7V,2)0X0Y90?MU4WR\JE.&("#AT?H^GK.A@2=B0X4?/=1VJO"]T+ MDKN28W#,\8=Z2JSV_?;-\Q&WDFVI;R:G)_4)4Q%M6B$XFFB"6-Q\3 K0K@FJ M>=)1DGZO! _&-\;W.X8*QO<>K98=\?W4-:8V,.YJ#8[+,,Y=IQ$3,GV$;Y3E M$J6%]ZX/N(HDE]U/MN)++X]6#X"&[*'9/MK_.P6FW.LU*T^,BM#YX$C0/;"5)&8ZIMVL[MTK9Z_:VI M6^ 6CATXZ*>-KX.7W 8!+OC6@JX$:Z$O*H_6/%LU!O"EP'&#NJS\WQ%T/,F; MXVC"Q6\47_;!FC>&^\VW@Y_8DF+)WLN&P5E*]FGZ>WO5G#]^+ZI=1+ M2SV>L?U\0>KX >^:#!7A7+F7EIVR]['BGS;[WTZ,3L)FP^[G\7 M]9KV1O9V(W0EQ&& SK<+G$H)YF$29S/WQ'C\F!4ID.4+;E6FR&#GE([2XAYO MA#XQF<;0WO^^Z#5!>V^W2.\&[49O[CJ).,/=ZJ37/&/LUC[8P6&M2 MKIAT$_"&+LKY8JV6%R1C*E-!.4::C+(XPQT#]@2#!)=@:'P)L/; HKKW#U-# M2LJ:7^Q#[ICR5038(/TJ*A)77Y?QE14R4N:.C>LS7KA+==G;R&=OGTC#D6G/ M ;@'036R-8Y[Q[LR.J/,K"R84BTMI8QJGIK8O;A,T>'A.X[<8Z7H$Y-N#/(K MV%$_>YOF*R"OU_+M 7//5!N*4$]41Y5V91P+0,ZARB'TE=5S7-@NRP0"..^^ M$R;*V;V(:<.G>L 9P@7J?E\II6LDMDMAL5.+FP3IFQ3.(\"RB4,$?ZI."Y#N MZY#M4Y#LWU:@Q5JQEI<[^IU4X[2[<590QW2_+U-!?4(F2K'$U<<#/GTY\XO= M"9R!CKT*'#HX7NA@)S>B7"N#?*52FA$QN1(;$ZT4 W]=IH("A*P095E<@1## M&@<+3LBZV0763U*AW>,M092XAT*E..P07B\?P!H:-RP5Y:CO+]!SRJ9,V)$4 MZ $X8UK$4V8K6V6.?2[L:1J=_NR-: M)OM8I;)9MIR,(Z2BU D&7^/PEM@75OL.)BH"O9?DS1-S'K /=:1IP#&4_=_G ML&3*^;NU49L=C=>QFO#""5D+"[=5#=R-Z(1 M"P378&G+P$U/MQ1+A2^'Z^[B.R'^C"2OI&;\N=T)@5-!L&SC^Q!.0^.OIY*\ MJ^:)S%.R,9B :4-/U#*6D$O'K+NX3 E(S=-"5!2^_T3KF<5$=D\G*> TDJ-6 M0[]G''OTI\0'^\Q?V<('CQ[OE?R:W3.4;NP^9;;5%UCQI8KU2V\24))^SJ$Q][^DE[.-2](4!U.5&9*V2" MP-_S7LB5[VX9$WAHNO+\"2?>:;^#M*-O;$L+6*K57LB5W3F*]4MK$G M=MZ>V+9;Y$!PB]SWWKUS8F8:ME:Q'X8E&TLV]L/.*X-X4>FMXBQS@EVDOZ(1 M=Z XJ&2^[PUL![Y)VW5C-/Q%6?#Z16,V+;>-9'G8(1]EEQ0G'^V-+C8UT<,\ M@(*925-QW7(OT*GQF>ZN6JSZ&WQ5!,,N<&2JPVGY5@8T)*X!.BKP'M+S_(NM MU6PI_8F]U9F$V)6*US)/*I5J903T. M5WK?DT?_Z>1)U0P6\J0"#+$5_S9Y#GL=W[HR1+&:Y?1TTVK4'JV46&RF M^\-B];M6IJ(X92?HH-943!]4@!,LUM854E)SP50J2HY0JNU99NS7>D9R^I%X M?\ML?D; WYO-LO% )&850Y-JEE:<-%W M^ 6P5! LPNO$F&#R!]2TTASU2U8#\'.%37F3J5KO[\S47\X'/)04'VXFR_UT M61 ,RVG,E7ZEUVOJLW:C^N,WN0MA1\SGERUH&KTM%.R__CYU.^1XO+V31O5< MHZF1(%MJC$6RES/EI@^JIV:.'(^M=YI#)96=*<61E)-\/GM?&C1)VT[!.239 M'6V2OR]99&,N4-&43VU'A"<, AZ\^_U_:O%1S]^1U9'IA?"A7>Q,:Y. MLUK<#KAB_ >V51]F+6,<*Q?-^X?'>+T3/T5<7<4.^O)F&7LXM*W#1F,_/GGU M.5\R',/GPWZ% 2EU-:N=;^@JIRJ3VD,A7S]4$/7CXZB'F81<1[%5[T[.-C*% M\7VKXM=EX:'_^=CGD2)$>Y2EG8(2L6+%>2*;]Z)1XY59&3Y7S^9WCU[^B7.R M1PG::>AL7I?Z=]P=W^ LJYV2VX-VHM0/PHV[[Q/]O70>@CO!G[V'V_T+SP%F M\!VGC&D_=.L/ YJ6N*8VSWN5><6%7O5%",Y'(9%1=S2G:Z6,9LQ!2052H]]^ M3,"Q,VR4):@H+>P2KT8"3Y9FJ?'T$)&/ PS[ MP^!C"JJDV=3O2LD!-610+,[ZN'?V+Y M0#@MZ@H2_LZ^7,H:_K=N8*++/=*-(I5T@$#X#C&#*Y*T.O6X3 =W]C LOMT7 M(_J"$AW/ON#)#HCF#9,I)]G$F*"F:IU-*;.69@>(1G<1LM=5(G81<(G#)Z"Q M*B;TG74-_FI$54:ZIY@XL(L#NR>W87)N=L8SO"H075DK&6)K6XFV)JTTQM-, MS@!I7A^DJ4Q,S51E.KBHAR2%*"'N\8Y C-'SQ>BI;;ZKNK;*GCS E5+/0P[*3B*4:*6'HAF7H8^ M&!^:.424HG@<6<$\@4O17HQ]]26>:%EWUKUJE#K2O)V84^DZH=Z7 IY %_KP M47'KIMP%AVMV+NN_K="$%!2:^-8Z$U?)FU="DN=VE\^Y64[K$ VAN84!K?R]BC>&-X8VO,SJ*P;,3O#N59&9\6M. 08%! M<0+I*2=4?O*4(P'$KH& M2N @NQD'!@XD.= 0W-:LWU48.H47(=_[RDH<(1A MGI+;L,\K_.*6MI,3X:ADCN0[L[ZD:[5ZKCZ[-Q5Y*C-$$",0N2C'O[(50L-O5O$FU&)'T'Y/9]>.8J/<'EU=[[X*;2[@O$86 MREI9R%<-@$A<5>TA[-431J]=L"1!_&N>?'9J8:INV<[MDLK51#4(KF@I(K0]B70'61)-F4O6 [Z>4W^42(#!S'J MO^KEY-MR^5YUA#KBK(C=0PCS$)!6(JKL(J8OIWG;_"D!Q]QTBPHW>^YD+55@?JP(("W(?* M(QI24-92;T(/S^^ZNJ8K3G"YVV@YMG5N>B8DNU<> 2PXE&']X) MX8CL(5ACS^]6!9_HV*;0OA;1G_$AY!7/C>@6U 6V[\*U<*,1,%,!1 *T"L): M!,$2P2E?_BW\I;^^7]D=2#,O@,,279[C15+NPO\AX/1D1>4$F5!ZM"(R(H ? M+21+65HS4]DH#(F'<9<8YO1'0L]7Z7*R*D-KZW7+0BW7G+E2GFV M#P=5)MQ MDYA/96JSY8Q58D:7J=\38];,I;/U(>@)5=B2?=WRKE)0ZXE4.DOD$RDY#]C$ M/3=#SQ1>MXS+N;F5B\FT$:ODU2R(I7NZ595IF7C=,BLT;*^9HE)&#"Y&/Y>? M3'6J#UMN]'-:R3F==*KN2V/'&9-&K5'E^G'8R1(=BIA3PD@%4I&8#_HRO]E2RW'2?7J6924P+BIHU$,!]E/8 M;#F.)5I$B6\JDL[0Q/"IG)@FZW%9W&SIY?OC1)?/&D:K!-IZ/F=)N51?)HG- MIA.K[5>>&N.V$9M1 Z795 L#.X[,]XVF]?F8:+:>1AF":N;F0O5);SHI*'=; M)FI(%/6&1>=[1"V1[&5=.\7Y3=ATRTS)7&+B,4UA+HTI2]&(^YE?J_-RI09B0VZ2*I-CF/566*.E.["CC3CEQ#[&W!2@- MVDO&[,JH9(!>::+0-6XB%Z:HZ092:/7.K%C9M&'H"E$H=>-VUR""IVY 91J3 M1W=]0BD;^I,U)N24T!2R?=1T RO=6+[%Y[OSN9'1IE93*^?N'=2!+0L[+/=: M:JUWEY7\NY'1X3*&08&@Z49?TP_4H,Y1]";C^,085H*F&WU5#$HU'@%Y9X!T]4%E,WK-T&$'MDA6@Q^E'=*; MZQ+5-QJ,E""ZI5K0=*.O3FZ6*C:+L9X$N"[_.# &)0$R$&RZT5?=$)RGCMJT M#*"G2A/?H#,$645--_HJ*UP_;XFI0B-?K'$UH1W/%@NPZ18:>.A,2&LRR#*2 M0HYS9>ZI_=!XG,KT,[@#3W5ENH?!"&BVF\K(!;?+'];U'@?UUL)\1T:?&AJ+ M2S\EL*L5W[.7'X16=?#)"]M[/3@?MMFTHSUGV;'%"\E0J^ZVP\ Q-_R[)W;6 M+-FUY]OPF3W3GBXU\O+O,12ZN0T=%52>\T,?8:'H@QNF >.\UUP3QVFNN" M>>PTUP7SV&FN"^:QTUP7S&-[79=/)A)^Z.8?;1*$;7L@5U)VY9TI^>0,J+:) M/OSO#^''%V>#IF]X\:@G<83W=MBWS]][6:=IVUFD1 Q ^,,<*,XB30)8&M#" M'U- #2ZB"?]&D]'EV:;U)%0,M].'F_#!C*S?E?SFC> K(%%?!1))W%#\)0$) M)9=^4THVEH'SE0$*R\#5RP#Y'5KQU,[RO#?F>S !EH_2E[Y1]D]M @Z>NQ[Z M["K*8):UJWG3\IR_DF MK),#,_/HY7-&PX_=.7Q=\>K3'-+6XH_?I$A%>4;XOI(SIQ"2>\_32-JNA\Z5 MN'"2OM?=N$JVNH[:60%_77/MK .['@BDY=Z"TK8=@"\23C);NN\8R7Q>9_H/ M]X+#QF4FJ";,\U&6?(_1,,XQSC'.3\$7^0CG13->R\L]:2R5!6'$UT5;;;@( MYZA8'D=%:7HO=2XPSC'.KPOG>W9./L(YI\39>J.?S#?REJ?&1ZI1)VB$<^2A M4&24$)AO]U!.S-%^UVG).+;K1D:.W=,]O$5RD*#+L>GAD$QX>J,_*7+>,#0>9+*&(]:+L'$97;I(0GOU@?#](#I =/#6;M6[].#U.@U MV)3@5QK)?*'ST(K=Z6P-U7V!CA5/1CGN^_VJZV* ZPT57=>8/SIFM?\Q1[!P M8^'&PHV%&POWF0GWH6ZQ.,/ ]J(6J=6/@-D(6"YP;W%\^^*3"O?O@1[3PSP= MY79BRXZE'TL_EGXL_5CZ]V?\'6=IN> 5-6":\(712!]8T*PS@\KGBC;4+=WU MG*!Z#/;;SM1O^V;87M4.P)[S!Q:PRX2@BUM:_ 7DI-"QVK(Y0+2*PN.3-M4J?[X"52EF$^2F69\ M7&[)4SFX2IP2HJQ(8OQB_&+\[GD'_LOX99EA/I&M52L&Y93+85+%G3^LS5)%PU-ZP$>_5C+RCEA_O,D9- MSB&K0OR8*LYOZ^7=))NZ[2EFQ-Y(M<'5;_!I>7Q:_O2T%&:WF.I/HQUC/5KP?J>O9^=L%X8RU0U M;N2%*\OBX 48K1NO!(L[OHC7UZ.?+T]1P M*G'ENWAAR$J.VIZB;J'"@C2J._I>( K#%CS; 08R'&0HR%& OQ MD8K]G8P!&1Y"RUH><(#K+0^88;?IHMVF:ZOD^?.\=^F7Z'R['I&EYKA!JSX! M#:Y4?4I5LFTF@W+/@[L&A2C-;F[0_X4QCC&.,7XJ>_L?8SS%YK-$\I'@&V.Q M$ZLU7+FMBGV$<;2OST1I:O,Z40QR#'(,\I/)"/@8Y%UE[$R$:KUAC(N#Z?P^ MW76'G3@".;I/G8S2_&9EP;_.,YX;>AYAR':9Y8LC U]G)GSR]21/OJ+E)JGO M&#R6;2S;6+:Q;&/9QLFG'R>?(KLJ3#S=8F;FDJJ4[/:F1=BTP35<1\6_,(3B9N3@Y9_K8%'%<9_O8HS\M9WS?9]\0 MO$NV9;],TW_VS>$TP$=N8<]Q8S#YP3'P?.0TLVT@70& :+K(Z(I\R^^<:24YN2TW%C M+]M-O:H-PKTGE2^+TJ0=>YB$'=$M'\[HHFJ-;;F) ,5ANSK"L#3S',5VX+PK MSCSK@:$+O5@T!,<.[M%=IK=M"YEWVQI;56-UJ5Q.=,EJ-SY@4/)J<%4D)T8A M/O %<)@N,%V<:L3[L'31$9+B727!]XV8:G9'XBC?L^ZFB"Y0E)SDHZ2PQY*3 M)P84S!>8+\XNR'U8OF!JYL,D.3&HALY;KF=T\=1 P(4";^I/$J)6J9:2TX1502WN41I@<14@:D"4\5E M!])WH8IDGXS)Q4HB1N1=@6GK<].X-P*J0+5CHB3S_8=ZKXL-<"3E.L9\_$@* M#A-BX<;"C84;"_>Y"3>.@;\9 R\!;YD2CF/?1_!2:>BG:;;?-<%)N*G_/IR' M>H21GY2+NN? -P3VNU><9F.32<;,=3,-4 8M>CSH%$?MO@P[0O_XS5)1BMFL M>8#9 ;,#9H=+B'5_Q Z32B4]L$4?2'G^22FW6,_H=^.('5"$FZ"C H%#W)@> M,#U<9GS[(WIP#V3?*& M9''X"O,$YHDC\L3G0]S[X(EQ;.)[-=>*8//'Y6/<^>**N3/*"TG^*$9"ETK%J:YP&XRKB"?'';^*&9RXJX+V+ M(W5+*O9X2R*&,9B>2O' MQQXR%!$HV,.M16< MC@5:1($=5?H@ HWP+G B=B^,?KL1V_=Z MEZ,L"T]9\/I%8S8MMXUD>=@A'V67%"???A26^(2GO(1T/$1T*0!TN1=XS6[Y M&E[%8M(_1E2D 1@]%H?$?(#YX*KX MX/.A\D/R09N3*D9\2F4;+'O<:5&(#$?(!'>4Y:!\P[]D'.,J. M(RHLGW96 R++" R_%]'X1,.)=OAB?RC011-KY*$T+46J?)_(P(V!&N"I&.$JD M_1.,T$OX_%,Z.TH:Y;*JCR8*[174@!&X@!%(0HP2I( 9 3,"9H3SC;5_@A$8 M=\!,GNJ,)'%R1V1SJ4&GP?<1(Z!H.Q?E&"(J4-1'T?9?G@)7>0^+^.B[GMZ; MK\O-*R2'WZPNZD(M=@3W]W0V_"MZT*WNP4ZKZ]U7 10-YS4"26(E@C4 (G%5 MM8>P5W/DG95L#[@A*CT[X@U )&E;P=5C"O+PTKJE6*JNF!$HG1X8PN>[-]\X MFD]-_>;0=Z5539_\_@?^L7R2:@+%01PS^/OE>M+HM0L-0A#_V0M1O%PDBEGR MY&J1:&:MU\&?_[/>^>? 1TRU3=NY79+=VJ@&X3415,![?1#K.D Q8DH/OOA6 M,:?*W%V,4A!N*&9)I+6'P4$N?S,=G4$[%L'F)# )@ ]^\53@U7Q[-%!EF13]H+EH)_7Y!\E,G 0 MX_ZK7DZ^+9<6HE(S?-/BJH[%1S]^UQ%GH2!)$A$X!-)*1)5=Q/3E-&^;/R5@ M69F@52!074[NDB(G,QQ4!UVER\@L8%65(%E!XY4?X5N_D9+6+R9YCY%@1^]\ MS87:KP[4@04%N*\#-QI24-92;R)0>41J?M?5-5UQX'?!W(1C6^>F9T*R>S7/ M5HT!?#5P7&GLZT<=W@L"?>XE6OGU?@9Q,?[O".JO-_]N#?&)_F[*\FO)_1D? M0KJ!0] MJ")LWX5+Y$8C8*8""!!H/BQJ2RAAL[^^7^L=2$4O$-03"%%!D"%X M58,(XGA9855"U@A>T;HB1785>B%BRM*R\1O=@G)7IEECV-&UQ.-,'-OW<627 M$:^;=D<@7N5HO63,O6)JF)J79WZI*E-;FG)^!4CURJS9F&<2B=A#DT^)'6@O MR=3KEH^\^"AE:K69$2MP/:=?J[6L.?2U9/YU2Z,5]^Z?[&:7J$WF8MF5R M1?3,S==+N4%?RSIU0XI5NOUTA_'XHMN7F=VR-2B80-#OH7UJN%9[7LXXJI!2C7FC$4=.-A5(:5?6)G-)/#9\JL8)2KK1R ME;[,RAL/+59Z25)NY)*-Y%/,=N:9@I05XK#EQICNM"%3HCOS-E&>"\;])-5N ML!YZYL:86AXAB)PV<22@]Q+3O$,7,\DJ;+DY)L=L#(01E*5&OE,G.G$Q7YI2 M4]1T8TSM^H/:'4WZ(C&>EY2^K('J?;HO\YMC>O0?&JWT0[DCQ1X3;F,VZI(< M684M2?)UTUZ_G,D0U4=@<';.3<6Z_.BI6I7%S8>FK$KSR9VI(E%KU/Q1>1(W MDK,X;+DA)G=5-J[3XZ$FC0L/5')4JZ1BUA2V9%^WI$&_-#-\33%J#^KC(UMQ M!JEZ'[;<[&@L"=B8X4V(AC[HU?HM5^*3%CZ6W+ #',VDKULA+-9=\3,7BS&S>[:.F&Y/5%U*51+5CIAKCXFRH*M18 M%3I!TXW9 AVQSH$1WY R#X5Q8T04&GVUBIIN=G;4:;;<0HD<$+5LBJE+TE/3 MRL'.;D& &&MX#?/1N"-J1%=V?'>8L96@Z49GH63'FH8E<8TR,62UAWA]*%)5 MU'2CLZ8PFJ2D3JY.*%*_EDHETI(Q#IIN+((2&XU[P*Y4C;%&31FZ52S:\:E, M;I%LJ'751M,6+*D,^7KFY0IF#(HK;+H!5U=SW29?3\8EKI#JT_'QD+[3^ZCI M!E[II-@KS#6W9XS323)_#^12F@LZL G8*L/<]Q[NNX*43SUHQ-VH+#128=L- MQ(KWVC"KJXFTH3?GW+1+QLK9+NSM%G2-(4*<=,8S#+\^+/0RM;: MCGM*6JS>4R.B/$L^<8I'%$TBCBXLWGBL/H804._;0ZGF]^/V' +\#K(K;+JQ MMN;XD3+*3=/3TK%;D@UNT-CL[ MO'L8L>/JF"$4OCY0"Q.MHS^%;3?DRTQX1*LLFVW#3R3[S$/.K).#*:HVMC&P M2L6>UN/J0)(44--5R1!K'3]HNK$*O7%B)#P6LT4C/WRZ%_(,_=3G@AIF&W-@ M\R9=!YV"(\6&'7EL*#VQ^1 TW1Q8?E*TYW1A6FLH-%%6GTK=.PA+F=H"L3F7 MC$^9=I.0%&GN)TK<0]R - >;;G2VFG>53),M2T0F3L6Z5E+OEJ$Y IMN=-8K MQ<21%ANV)=BPW]:*8OX^7D5--Q:LIR9Y(3_RZH:B$W:'KETUWM7FWHBAE//XV4MN@'33?7EO?(N9MJLZZ4 MZ8I:<:BV9NDD-/6V((Q^2 R&W-PF&WHK$>N)8]:MNU74=&-M,WHG7R.+CU5I MW-/BRCC32'/#.&JZL;8QL])YT.-W/,&9TW1_SJ2D&AUT8+.S7D*::DC%C!J ]N"&N^^SV4[7;+9&)+SE-)I=\;J4Q4UW>AL44[.%9=I6D2Y MH9:R]MT(5*D^:KK1V2J1!--Z?1Z3RD),=;S4K)*:!4_=[*S%/LT>E3;A&6-I M4&YICZUIE81SL 4UQ#U_YRD*73/*/%_O&W:QK3I5U'1S9OFG0O^N_#"6AEG2 M(?WIDSF_[Z.F&YT5AZ+09YEYVZYKA-VM< MC@(98IR$3;>@)OE0(K*=Q(R6@,),ZK4',&@R?=1T S4DQXUJD]F#)V4RY(-, M%A*30B6.FFZ@AN^8XQ'7M]K2'-CS=H96XH_0E**WH89K]>?I3+&6D&K)3*IJ MM[F4<1?T8(6:(/B[BH:%6P"J;9K*R 6WRQ_6/4@.>H"+B!B*HZAA_&49^@M" M58KOVQCVAGKW6H*UX-#: M\VWXS)YI3Y>^[?+O,;1AP_[^2:X+ M@?7+":X+]"LQ7O:W+I\\N_MA>/]HDR!LRQL\T-'^]RW3*YR2P]Q-_>&Q@=.> M)"PWGP[N7N&4?!17Q5 Z=2@=: ;>#R=>(7(^BN1AY)PZ?[K9C+L'<_/A]#SQ%MU"!FNXWB08V]3\7)+C"*?G(/[\DEL7. M,M8WV%G&PL7QB4L+.,G>63G:231@YVEC_E+"_O+\;.,G:6L;., MG>53%)?KT#?,5_4-!;LJOBZA2(YFD:!XT2$J*'ZS3DK:PZ%MA86D@D)+WZ>< MKD".OFZWW'#\.9DN<=@[E(BDF%@^L%W[2CA^QE75'_JFXN&-(&S;8ML6V[:G M*2Y[USG"1S/R'HN&-MCFG]_$J-MJ?Y^SX1H6SCX7:^0PDO$M=L?EB$A8@!6+ MR#YJ?"NAGM.4[,.&/_SP/W5C MS[OSL8?K?.*N7.X]W]]#R(N;=^35-0+A;0%)>SBR+72K0'RFNZM6800\B'T7 M ;J;1U;';J/%%2U 4/=@7GJ,/;$5]L7]/]E2^A,W .URQ\]0]AAF9) %@Y*R M&<(:=XDLB4J<4S]^,W249OBH(/!;KOBY8%QMQ ^.E.]V:O/R'K[^_4T2$::U M7075-&HI^8G1']F:,:.-)',7FXKIQ(AEC\\S,?HS-//J/A=OON(9>L4SCC;+ M=_R,GI/=1:)/*P_T07<_ (IZA,<$E^R4:4>_(C,7J4I'G.S\ZFPEWQ24%D M(_SX39)"E.)$3#B')ASR2@DGK$YU8H3SN:F(_#PMQEF>_EPFMBZH1GI&H M3O/$D"3C=RF%GA>I_O=2#9Q-^)@MG-.O,B;3L;*T%//]_H-4LSN52G !%/GC M-R]$"8'8X)SO#>6=&KA.@72($R3C [E1UQ*Q^3+G*/5.;YI_;,VDN2KJ&LWY M16,4WZ]EXHI](I,I]@I&+-LI3LF\:,?,@"48Z <146[K=QGP1"4%9U_6#I!^[!]U\M,4)7PD]\(@_@C^" M&7!4W0V^#3^V1\B9=B\UQ+_,][F27)\]I/.D?$=!CY)).0@0D7+=?@X7D7^\ MZUX0TE2Z47\@#?UA?J\R>LXKLM,_R.Y!ST8H !KL.ER."IQ66PN3?H(ORZ'( M2PLL:%O2?_X_>V_:G+B2;8%^?[]"47W[Q3D14"T)$%#=KR(8!&:>P?870D@I M(20DT,#TZU]F:@ ,IEQU;"-#WHA[VH5ED*_>P]LYIVQT-$DQ^IPG5+:B M B@\+)4QONV6B26RF5@V?2Y7=IM*="UO/F++\&Y8\C7(/.\=:+X^D/Q^W/H4 M1X:"[H++,+(/:T,0Z6P>*W%!XZQ^[B&3[K8JW?48WX3-) E^W!>/Y]WPXVMP M=:*-'Y?9.9-M0>N+5TL$9OI8J7&)P1^Q/6=&6#Z,R&) ML 21=\Y2D0F8W#!'YQV-D0CR<$[!!.TJP[['A*//"KE?$LA[FM@WY*Z_UQ%I MIQIK,-BTJX-R;M@IT<:Z;UK_D.'^#X^U]&!1S]FU9);O:7C/N9, M*!_7#9KP&Q'8-N4(&VH"#""KCDW)ECF_/[;'M7S-R,>9WC5Z2O8]H@2%:[FC M1/SO;=\CF5^_EL<:,?$_69=W+U/_@IGXJ60;/W+2S+4=-""[;[[RM15#-.>@ M+VQX60:B4X)V%*8.Y@4;2&@&P+#QY)O .9/.>.Q-:<#$59:'?U.7GV=J_3'5 M&6=1EIZ-<:G4N6)W@DHWG*B_5JPA8JA$,OKWF=&_5C@B8N)__4/YG7+_GW60 MUB>32NI9;J7YUJ99F=GD@M(Q./<.,'^-B;LPPN/$#&Z-3I.O#G9$J M2->'".6*K]KUX74 V8>MNTU04N5YITVSA:54RHP[RSF' 02U?"#8<5^,E'OK M^$!X5O? :""M!PA1X?:("J3UP%>@'[R7G::FP-8R\F#-"WFW7%DFDVF^U4%V M&N(7D*X#)'5!J 5DGPFU@% +[FO.A%IP#W.^3]DFU()[F#.A%MS'G FUX+KQ M$IQ4C4\0FQ]1"T(Z_ZT&?^^-34!B^22[?7O9;2+5).]Z>WG72',V/K73_ELJ M$['E,GE9AM@%GQ*QR#3:5;BU?J^2DMS-P: MGWS.V$]N#AV#**-^^1PD.742LRL&69K H53<-^]68\0?GT6?F)8$K+CW]S^8Q8:R35V5J'_1 M^/\B%F8B^X+UW@"*H!)%ZP#+A.MD]Z6\2^\>S=QD:0XDY8^S M?6W+E%6G;MKG*EWKLTYY\YRH-OBRG2Q.G_NK_GK9&3.I,<-\^YE@8^R']32* MGH,5H63^M;7LNLG^:\\^TACSSF2 B_#0[!<227X7!W39E1RFG+;IC+O&\)!\ M SR0S#W)#)#,_?WN,\G<[U.V2>;^'N9\G[)-,O?W,&>2N;^/.9/,_94# M2Y.CKU@#%%2 ]A"7!Q+P?D-O_O_],;K']#(/V>/6_)[MMWF::$ZDAMLCZ]MVOU,9K@H3Q^5?]"Y M'\^EY3HVFAW&R7'Q?:Z3C^YO=R82:/F_,ED+)W*Q++L MZ;V0-ZU8AZA[(DOWV]?@HH+]WSM)Q-?H>? N6//6T/85@.;W^\9.X=R!97LC M.1,3SSW'UTKGZ;'-NRW;PQ\2D(\S7Z3WPE MA+G(0$]+UMZ8[%\R/)< MJ\B)9GR7WHC9_##IUNO/8GY3UW4!8-SONM* \ M\(^YC[5-M :S-.M2R]!:^8>I.S(>EV"UQC"1_/8S3<>RB7/LH$.9( PADH$D M#*'[W6?"$+J/.=^G;!.&T#W,^3YEFS"$[F'.A"%T'W,F#*'KQE'0K928!63* MZ+Z,N8F6 KK@E+N /X(-L$35QK_U/C87R)FV;S7(?V_7:;P_I^=E%1E[5$7& M_N/,>ZG_V-P)^O99J\GVPEH\:.GGROH?4'S.7]GJ,7_P+UN>R/.^+DAG.$!U MY8G6YEQWI;4,C1%SR@:,]/68R2(.4(K)QM+)CZIFC9X.1:B[RDU R=?@\WQT M->KGX\B[W?Q\&47V8>VNN*/MYI*F-8YV9TWN81Q_J&,424$4(?AQ7TP>M=(NQ=,N:+MVM]HQM\./N47^K5A2VF:Y76.<[&K"VFB)<\-] M[JUS"$L0?2>=)FAR7RP=:H74HMEE>FO.W"CH7$/4#R9SCI-*.!\DIQ1M MS@=%-IJ0/FZ5]$&$F[ ^;I;U082;T#X([8/0/@CMXXO1/OX[VH."SE'$#?C%04K( M 23S$$UR -EGP@VX56X D6U"#;A5:@"1;<(,(,P P@P@S("OQ0RX;V+ JPTA MH)M/P=>M5!'<+!> M'\@[1\.VC]XGY=,J^?+_9G6#]6U63'T=F4W$!ZGCU6G M)U8RG(>B!+WUHZ 2/4]9-I)63Q)H-]> M OW>RN)/I)HDX\UJ9KM0QFP*%UFSE_K&$O AF5^2^2697Y+YC9Q4?\V"Z"L>@[6TO>@N MNMT:7]L5JR-;6756I34Z!G&-],5SD&3529-7O>*-)5IT(]\UN-,FJ$^&^ MV8TF6?7[$>X[M+E)6OTK"?=-I-6;P*%4W*_L5@/%'Y](GYB6!*RX]_<_F,6& MLDU=E:A_T?C_HA5K(CG)STJT7ULLKIN(O_;LB5)L RX3K9/>RD7!\T$5\QG^.7$;/1+ M]B:A#/\\W]>V3%EUZJ9MG\G,%=+.LRFQPSS[2=# M)V(9FOD@EDKTW*L(Y?.OK6;7S?=?>_:1!IEWY@-]R2W[-K.M^EEZEM(8]DUNW MUKMRYI]T3<=S:;F.C68'-^=,8_21XC@56]476J_%Z]M^5ZX/L[DQFT6-T9.I M&)M)QSCF]$Z^FU:L0]0]D:7[;6]P4<'^[YTDXFNT/G@7K'EK?/L*0/-; 7'\ MZBF<.[!L;R1G N/Q6MTJM_AVBU[J'4?)KMH/XU(' 4T* 4V"(,QG(TP$>TU\ M"L)\C3X47PEA+G>EZ)04'_\_3;F]!&ZP]9)E51&_12 MW#D:Z&EB#.O368^"2;YBLTG_A*B/,*$VA=3"@5 MP/SW*?[B54\\=0PZR'C=F(JT&(>C'%Q2-B%&6KK,(G\-A^G/](.KPN4&<.U^$ MSV$]?<'C@K@;$2-*7XJAZ+_&/R0Z31:(:7QJ.R=?: MP*33V_)T6_HGK"KT;J0_0()#A]OA=?7UR%;XERU/67A?BZ0SM*M)V/+3$W6ETTS/?N'>=%_"$L@67=6;OZZ_(UR%WW=+$0X1Q%:5V^!B/IL\_MR422#0TX M#KUD.2X1-_O9[.:Z+D!N.[0VE=4CJ\63];Y>-[2:\*2@$2.*4N)<#1AA)I%\ MXNTQDRZ3$Q$E[_KK1H2'<)>BRUTB&O1%A(>PFR+*;B(:]$6$AQ"B""&*$*(( M(>K+$:(^\82Y"1) M]NMO EN$:T*X)H1K0K@FD5F72')-KG^LOQ/9Y+..XJ:8?8R[DA[LE%)" ;?8<\D1NBA1#AOOI& M1XS"<4.,#2+<5]_HB+$K;HA,$:TY1XPJ<8_,B!LB0GP,<+^;9QFQN UVS>,3 MY)NC7C"A\%Q? MY#<<&*Z>E?4XD4+4 S:6H+G[['-!J :?'72(.DS=$[. $ D^.RP1=>G_FJR! M*QZLI6&M,ZJY7)/>SOEVNO:HM=>-'#I8$9'@5R?K%V]J07(2A#9 -IK0!@AM M@ @WH0T0VL ];32A#=R/<-^AS4UX U])N&^5-] $#J5BIC^)1G\X4V!B6A*P MXM[?_V 6&\HV=56B_D7C_XM6H(KD4C^+27!ML8C6,KW*-+CV,A'MN;ZK&T&Q MB-8ROVYOB\=0;&(UC*]FD"_]C)%.<7X>SR@+G $U0 2+U@&7";; M)P"Q_4U_#$#!HME1XNDQ*?!5:_#G!*"V9EFN M"$K%I,OO.N-$>LPPWWZFV!B;_*A+::+G $:(KG!M)8O6,KU*9[CV,D49B]Z9 M[G 11D1QDBT8Q0;8(3T.""9$$)6(!M-R J$K' 7 M&TW("D2X;W:C"5GA/N9,N KW,6?"58A@J.K2;1=Y01<,$5""0Q6!B(.*5(*) M42@L@"_"(+F$SZ4W)!8;2C+=B0XB&IFZ)$UO#%O9J-3%'F<"XMU['1[.#>A"$O.@QY<>WVLY@>=];:G.$;[>93<3#EU^-$ M=LQ^^YE,Q5(T&TMDZ#-1+Z* GTXDN8("_C%Z_]\[2<@;R2/W@$UO#:E? 9A^ M_U;L*9PZL&QO)&=B\8V=EG! >=K25+Y0+G*RXC9,#$PI!$PI@DA1(.?<(R*] MD9!#$.G=$.ERIY%)LC%LY3+U)U[8)M@T33W/*O-'3J,Y)IW4 M1U+ZH6SD$#IEOOUDF$R,SC($H:) @+I'A'HCZ8D@U+LAU"LVAG+S0 M?>\W(<\./?%&.'B?P7K_1"_Z@>Q753P_Q?B;0U_KX2]/__A!@.-XD-AG :+A) MB=3!J/%__Y_#P>]Q+RZ:NFG]",#M8%93#TM8C',*B$\L(&AQ089?_$/0U\+6 M#AS1S'<6'3,8.'^$ (G6@4I]SV3^3>U_1*MQLI1S81,_6# ?5>,ZD)T?WE\% M'V% ##XS;>R-_;" +CCJ"J!W'[T5[XIC+CYE2TYE#V]'8K\G_Q.HJ86 ]%_] M5N%UN3007NK_/<1S_Z-O/_L(L]!-X@6$RU"10A$5WB*FQ\M\;OT$C+/CI,B( MDPR='6<%21PGI51F+ N.4ZQ$RDAI[(3+LU]\[[U'2'I\/2ZA$APH ^N9,,3 MK0_$J0$%6%&!'?,@J&*(WREXLE$]=V*KDBI8\'=X;;RY'6+3'I!,N2#8TY)N MKNUQ@F89+G/5Z1T!Z'Z4>.?A."D\T/<^$7YC?*]>YA=*ZE^Y.807.&35@$>" MZ=IP2^R_W_\L^Z2#U]>+"9?E6(&6QJELDADG998=9R0@C;DDDY4$F0%<0O8% M1P@L%J729+NKY$.=;LFS;*7[Q*^5? >QS%\^V5'J\?:N8[I:*S5=TE)G7'<& MZS%[^J2BR^4C+S\LFDUASUF:2^TT8RMVV5GKF=VH.6U9A^^62Q^[QCL]MQBE[:JSY??"[% MIVYGG#Q]4EJG&]S8+3]IO:19F<63Y7C&0D^>S"AKM9H=0;0XK96IEUA(?ZD\68SSR[$IYY>"3)S/JRBVSUFW,Z[20'KGS^6S: MS*XZX]3I.'6AN&;G;M'D"]U=;3+I9&7G41ESIT^"[:"P6_1M5IL7TAU[D2X# MP>Z,TZ=/]A:++*^ZL[2VK!7&(TU3G9JIC#-GGJP.Q[WV<[NH<14S+:92W6VE MFH-/5=TZ=9S<5UGJKLFGU/@DXF73R:*HI5K*HL$/U([O4Y' MJY@9*)_9TW'RPD,^I::7)7ZKM\5I5:ODNT 9,_3IUV>Z$M,08!7DD)X]61OFZD@8Z.XB[PWPF M-:\FVBI\](PTT])300$KIS'H"6RRT61['>XIAQX]6=1ML;:8B;9>'8#MA,*RU-'0S9"E>M52;,>LR<$;[I.N$\J/$)QX.=+#WV ML[.=589O/2-]!M-6VG'W:4#'^YWN..<\TW878LD9\=M6:LUDO%M*#N(+9^<\ MC[KFK@0?/2-_2I%?YOI@IVCS=5](TW*KVBC!L9X1%CGKN/.'-IVCR]/\:C=F M.\E" 4+4F8T%3+_*9W;<5A/Z^4HM+CX530AI\-$3P9(G CYZ1 2G%-YONHK2DA:W5@,-) MBW$1/GI&!DKLO+QUG(G)F8+2I.%[K8+:3C6?GO62%1:S4%R#:V6TT>SC8KR:-;R&EWN&)PF/I9K M(-5!_OO)HVW;'FW[@)50FH$1P\^;^#+VDP$\0$'BXX/G.%_6BN-X ML3U@MS*^+/8$LQPMQ46Y^5%OGYVRK"D6[->Z" MU#*M0'F%CYX,8+CCFLN1DM2U;6-C3!;YC,K*'?3HR0ID.TS+73UD\]IVO=$3 M6H%OJAQN]'Z*A)VG/#-KY#@ZON266RO3%?,6?/2,$&:SLZV[[31;VO)QTI_G M0#I3+\)'S^# *&T,Q92\:?.MK3M),683 *A;B3-"*-$+(]E*6Q6ZK#;ZCWE6 M6!>@PB3/"&')'6YK[?9P0/>JP&GQ4*[J5?SHB1$@IPU5@4(;UVK5@C$P^:>J M9J[1HZ=60.LY9PVF2X%6>P-33*>5Q;*,WWIB!F06C9QN/8M3VFWNIO'^;M)( MII5Q\HQH*.W8P:"5;10*\*UGA'#C0<]>C(M9[1KVHU^%6BMYO/42H\[4,_@H^?,,-?>#$IBIT-S;J&9J *ZD!SB M1T_&6I,;J7SNN04&!:=3F8]&:[E74M"C)V--@\3F,;YSU_0HD9&;Y0)4AS%^ MZ\E8EQN^TQJHW:S&E=L,UU9F6^T)/GI&M(5G(S\=][,/_'*9'<:%MKBQYOC1 MD[&R.;M05S5IR6\+CW8WNQZO=QW\Z(ERZ^6!R63CZ^5@"\%+4)^:8R6)'PW4 M$(<#P_B(%P0635T7%C;X$?QPZ'UPT'OP8R3(LQ8]CSP(!N'@A> Z9O"!%[K MGQP%. [BR/XSI\$*QPH&YG\AX_DV;VL]S:6^)]*7*,<'X8*#]YOPG3+T,P._ M*/AW'$71?WC1H#5"8]'<%X)CT=R7S'>6;,N';OI_\]KTCLGRI2]GLR M^]I494+$J6*]>N34CVU&8,IOGAG19Z&W2\F#4*L]075#B(Z_>^?!P1R05 M]')"EFAH1#64/=)0=JRDED^%[F.KPM=R^FI6KFZ-6>;/^\+\2D,[V4JV+&_; M>:TU?$Y+_*,;W_$*U%#NVT^&3L0R]+EF541%[UA%+S(,;E!#F2,-9<9VJK$& M@TV[.BCGAIT2;:S[IO7G+59^I:'E47\L*0_V4ENV^NOG96Y;EIM(0[/??B;@ M&9K*OLN]4Q$.&.BR"2"?+L1Y#,)IEL.>5WAYA<2\XINS.O.I/_5G#*1;"+97SE( M>UZPOU($EL-?400+:+:IV*XF(=BO&8)]YS/EKGS(#X[#'JH7_%D'Z(><(>7F M)MR9'?[\C&LI31_+H^G3;LD#V7U,/F>XQ&"%6BPEOOUD8]G,)<^2A'Z^5.B' M*&]D0[1_J+Q]>K<8IOE>>3#JP#],5.Q!I]Z!RLM]^YF(,9DD45ZBO"1X^['! MVS_4W7%WFUCUIXOLH#SM5QFF8(X>>FNHNRBF&TMD+J5%OWA(U_,'#M<'=5!5 M#;C1BHK:_0BV#1R;!&=)NE+BKSA:!:B'V"'!7=-!1*5U= >F]'Y=Y@Z\K9C&O53MT5JONZ*$V@L;+O&]E6F*F,\YX_@G#GKO3 MGH1.OV3HE*@Y4G,T289]/VK,?>WH?4IQY#(%)T)\$Y%P>$@I\-@R@(VO$FL+ M6\O4=:IMF0[PSF3XHV().6V'KYS%@=9S MIG!%&$0R2$\]N.K!,"ZE?P/ )>1QLU\;'A M]Y5,J^@K:L[7TS/@EDGPS_5JM]>@MUW>;&OQWIPV'G7:+>G#0E_IK*RF@I0=NB3)] =6O49,RHFR?X#; M72R=''06[N+6KPJ6-7A&NDZ]%J2EU3]Z^4^7E;$2D & ME@4D2E8-[+6@G A)2H9 M5DJ=,XTU'M^WGVGV-(Q"XJ$D'GIW.ONI!:J_U%DPW\ZG-=D>\O,T/GL\6@4-\\=T<-LSI>*&A\6:2T M#'O*?;JQA 7J!T_!;8;[!;_75>UI4(0J@_./4()EU[-V5BO9= U( OO0Z:N[;0>A!,J/Q#CNDMU$ M4(*@Q-VD4MZIGOB:+D)O*EB F@CHGB/1G"^ 89,6^R1/<)O91@69ZTBMZ2)RA6I)H(XDVWIV^?K 1 M_69][2[-7+I?:\XTUN43YK9&3\I3K*_08,ZR+-%6HJTD-_"QN8$W*VM6K&Q6 MZEI4Z;GZZ [CC[/GN)I#RIK]]C/%7+JK^"9R L6 %>0(&PILT%(!D@FXY4P M(3-_)2\AT$_O1N>^L.$]',/7*GVZG%HN[7X2FA\I MY"XD8PF&,)KO+%YWVQI_,MT/+\[\\.N[?J7RK\;J%WJF_\2,0&90&$^%F9%] M2&>M'-)]3$Q*)C^R/T+$I)XH_P?X*!'3_5MS6W[_M"\.)N/"KO'(##BE;8X5 MEN\L^FND\>CFKXOM%+Y2=L+[BL)4,!3X-M7P>^53<#LI716P:JO _D'R%"1/ M$;FV39^_GR0<2(3X?868R#"1X:\5TGYE:B\G>!-1W+XE2"#L/$-90 3J"G7T M(:%<$LHE@9V(Q'*A5V".B2H0Q0_,A'=/U1\5Q32N\E,8P;+34W-]]IS>Y)6 MD.)SWWZF8PQ[>B\B47RB^%\VFOOY>O_!X=P_U/MLW%U;Y25(:&RWG)C&.YO: M9-5!>H^ZU,22W"DKY4MWZ:_X_?=50"X_)?';R(6^;L_M.%"X,_ C/I?[W+J6 M+FNC=271-AL=1A[DQ@R^S92+9IS6LP55Y2MK! F8NYX^ M PD$$0@BD&1'9)V>/[0-N$*N4VUMTZ/!O)13ED]JS5T_YQ 0X*O%&/9B%./M MSM!KTA*!C$@=+2!E3N!X\1:2O,@7S8MM$R=D\98)-3XI4*-1(J_KL&. MK_P\/9OQ"=/:'S!GSN%&80GHI5BT!X75>-DS@;1(+7)P<-@@)Q?U$O7^NBF' M6RD<_7/M[E?%:5PR*@W>G173C]F9/5J4L7:CG,.MM[WQ"FQ1TQMP6"[QGX6P M)643).GPE2.-=Y!TR(FBY1Y4R0.[[>GMI?BBL:O99C\EE6CWV;#TZR9B[=3*30T _1HN M\9$Y#KX>[ M>-GWUZNK"(I-*-^KP=PJP5NMH-VG"'YH%??][XZ@W;/ZX=<[4&J#+2>LVA9#,C/ M.XPR9O'=PME8,O6!5_?<&QQ@NX;@P5WBP=7*QW\3#ZI3@;&UAC$J!#VFR9;Z MRT47HZG&WY2Y &C3#85""[/"2_R__TS>"2])YNCUS-&UH>:Z >5KSSY20/O! M?E@3. @!VCX Y+<#&X696H'JYT+-/P.NZZR>W()J2>.YY'(H/C9ZZ5$>@BN^ M7#F5B:62Y';E*\29KZT_!#TB@QX?[+7](_086.RF.5Q7&IHZUM6GN39?/CL* M0@^4HV)C&8;>?+1RW1_LY/T6>KR:ZE9VC&7M>HO5( Y:PVEW MVF4GB,*;P!Y>C&4_H*_ ?4'%W>:^[FO*GU./$*TYWV_<]K[F3&3[/N9\G[+] M"84F'S+E+QY>I]\879=U/=OS+;][E^[)J[EH/?AXN**<=$Y(@%'.XV1BUTP7!B MF&(.EJZZF /#(?$UPBW_XES2D[E_]6K:MK!%JFGWS9P(]=0";5^%VTB!V\Y4AC08)PQ2@@+1)R?\(Q2H MZN*8EOL=[&#]Q>/;K^9/.[SQ<_&MDEHF]#%[YGP M>7.NU2NOS70?!R,?Y>?<%%7>;XKJO*1.:[7W,^3YIMD2V[V'. M]RG;A$+^52CDLFH(AD@HY(1"3EBTA$5+6+1$^(GP$^$G%/*(Q=B:P$',<;C" M4E#[9]LNM-S@-Y@R)9KSN8F$VQ0UCU"^ 9:HVMYOO8_-!;D7]0N'W][YT+JF MEMY:U[NVKY@EJ)<57RU;<@'K9 _IWCE>^"B]752&[;0V JG9/"D:<[F@C!,T MYBR<)AI)^.6+AE^(WD:6-? G>ILM:*QJ3=:Z5L[KFT0_"8RXW4%ZBZYXS9RF M]HCB$L4E5[>^+PO[#_16JTWBK2<@=>AYMI3*\>U9)3%>([W-?OO)TLSMMNWV MOH+?0%?!1M>W4A-@ %EU?#\B\!0^SE&(V$J0 / =QL"^*E$:WU;MZ6Y?V.1] MS47 UYL*%L@+-I @\*&+R?!P2D$ZYVU4I<'CX]09+84&7>LTDL/U\W G+==H M$M +X;*GE[L1OB.)#A)8N+H'\\&PD&X[[97@JIO!O)KN)EOIQWC_&<,"='*R M'*%!$UBXY:3!5Z4Q?S JI'K%S5Q4LK)6<.J3:J*\EJ<+!4T"N5 Q[LS=B%^: MU^P7^R+'2 (RL"P@'=!E1-,FW7J^:"[E5NF>OQ<$0I-DV/= =1*@O(\Y7U^* M;\:"?]E1HB4W@*4 JPMTP4''M U/[K/G\TEDTUG+#-#Y)3^?#]AL;25-,YW. M.(&O*,W$4LS%JI=I"YZJY<<*[A# 1 MH^G3CE9?.M)ZQ&S736@#AZ8OB;%^S1CK3?->2>CT:X=1;EHXOWA ]"RYLP[/ MA L')L.-Z=: Z^B:,&SUM,:X/E[IG7$BB5G9-/V+$Y-H[[UJ+XEM?LJ.A<8O MBFTB^R[^_O9=Q*8.W91RN;^<&5D(=.[B^.[+28V:WBC[F- MUMMMN.9TP3\\;J"/FT+4XV0ZQG"G-1F$9DBZK1*TN!GNPV^@17$I#_,EMM*A MRX/U/-&OC89C%Z,%,O"3F1B=(L4*]Q8T)ZSDKQ0,_PUM-RW%-LL9MZ:-6BU3 MK(Q2Z65-0=J>_?8S%6-3-]-!^Y][]J\[]Y0 MCEPC>K_6SG7NNOG-(@QFTUP\:=MA5BNDA)J8F2X2XT<(C9SO-F48CM ]R56" M! \B[_V\#QZ(/25>3 =HU0ZED@E"!X0/+BYJT5O MC2KT6VAPOW2FD<.-)9BN=0?-W2\# M8=)?E4L>1Y1"3*8")1+$.?ALL)#A .=E\=!FH/\XDFZ-,2S3TN MG<9(6FFMQPZ" =S+D$G>?,2\\)KW0PD.-0'P[PR_%\T"KS<)F9,ZC7ME7G\X M_.;L<4L^-+N8]; Q&W$UAU\^Y0[A,XN\*91P/&T%2R*II'2# ,@G 0@SKM.=Q_ZDK.\&PKK9<:<%Y8%_ MC Z ])YJ1GS=%8T!MRBNK%VVFLHJ&$"@&Y:();,?>)$6 9 [!Y#S&9AK3SY* M^$&/A?Z3O*[-1AM^*V95*<&Y#6T1'?R(,W-IL]WVXX->HLV,)6&Y=!(O.;* ?CY@1-':D/>KS8D 3%",MV)#B*!D/_W03SP*TPS M2EB8&.N&FQRJ1G:B<9R43BACE=WR5PI^G<'"&8^-*)_D+ Z*1KY)+)XM';O?L,_1&2_Z/81 MD?WB(GME*OXK4WLYP9N(IF%BP4)0)4IR+<0&]U@$*, )[1\'6, F_?MO.H3V MCMG$:+77O;4"VXJOCFVHK4UPMN&^2@\3W<20T0"KI>7B5)&2KD_N!;VU\J=WSS03VI+*=&];E9\4/NZR ZQ#_<9D&;UD6*]#CZ/0\VI;^>;SJ V MV2[T86\UM4;K<3*)V<696"I!V,4W$Z8C>AI-\_\->IK8M3?;]RQ8CYI6V+7,!![W%]8JH5'&!KP6&1K[N2OB&*TH01;-L._!HB#B3\3_JT7Y3Z0?V\/_<82)#CY@1#/7=E1Y M>[@(+_;&^TW8, 8]\<;M>I_!>O]$+_J!CEY5/!R^"%!:X:6@H6XB_GKV *!R M(O18X*BVB-L#SVA@>S0FQZ2@N4T53 .WP!$<:(W[-U$).@5-$0>SH^W/FLQ' M[L5_)'7U\W_P/\&K1!T(%M*9Z7^/WYI ;_6!@Z;__2%Z<+QM;#( B'#;4+0U M'#7^[_]S./B]%L=%4S>M'T&=[L&LIA[9G<5JK8#XQ *"%A=D^,4_!'TM;.T M%R P)(,:X!]AK2]:!RKU/9/Y-[7_$:W&R5+.A4W\8,%\$(GK0'9^>'\5?(3U M/_C,M%5,J[> #DW8%4#O/GHKWA7'7'S*EIP*']Z.Q'Y/_B=04PO9W/_JMPHO M!/- K@UD2^O_/2PX\#_Z]K./4 P5&!20"8]5RQ=1X2UB>KS,Y]9/P-;V.)D0 M@)R@,^-D5A;'24;DH",@3L;,A :BQ*82@!:^>=_ZCGI]6%YQ":,N%V;@OX3N MA^DY-B\$_.5O==4 /Z > O]=/)K;TLPO,%O?7 E&[I5_^B$\5?: M[#[\KKIJCY/NMD M#*KT<_Q!?&Z#'F&P6@+[R @W L%[P; M=%T2C%>P[$ RT!YY6\1X_Q.'DC^'SV\1.AVL$K5?)BI8IP_=J:ED&S^: @HM MM.36 GCOLO%W;[W_GNZ3N4W1C\_I?IGFC/ZVV>M:F]IX?;I/YY^+\#[E71LJ MG/V>)MAO??\O$/,O9&FQ]'^]Q_ _F/]2IH6UWO]=P;,]_5_^'<-,#VN!L .B M 085_+@NK&TD?&@F3Z:E4?![JX+A0IGT)96)44PV"_^KVI1 P:,8FA-0/J"0 MPIFN5!$N@V_H4@M\P2H26M4PS!4^'U&C1Q<+$P5QR0(H;(79[I8)3^6Y3:U5 M9ZH:>##ARW&,3C4DN%+6]COEK\=4L/%7 ",&'T5A:GBLPP\42X#O<::"0\T! M<"@1_ID)->1HL 8 DDU-#@<)C)5JF897BZAO*1O^G0!Q$KUV/VK9,N=P+/#4 MA^!I"YXEZ'W7X3K: M6QL"/OQP 1^.H5V0X23UHSE(J@TM&_BAU^G0FL"_$RT 7TLYEH!6Z_NUE*&/ MC[)0FIGT?^U@ ='VP,G;JNV@U7MCD-<&"EKB<:'H5M+=QW2;%XJUE/(T CU[ MD7OO0&^E63J*],9M(*)H[QH:_C8P3JXJ=N<38+7D+H"ZBMWOGC?KCL33^SQ\&=(XI(EV[.@I*'K0Y<+J"")WW[U0.@3K";R@Q!AZ*\U:)B!T^2D%A-ZF%@&)CZ@(>,F@P^ $%05BX MT#ZVF+)L0Z2&[YT!^-XC.?2U&ZTR/"G0VQ X!X"HPE&LIR;\*&ZNT5SLP'> MH'OFX S>^IT:&%!B;#PF7\7A&D' A0OEK>5:10@-10%8$%L!7K)7C]08=>X4 M#C]=@Y>?N/;+3TS7"C^"I[>M0C05++0H!C3^;&\D:!#G[ $J=)[0BM@'#M35 MD+IBP+'#4P:?[VCAA,,0F'CHCLBA.V*'[DB@_OC/+ F?B<@X.#2& Q!'VRIA M8QD+5F 1Y7J%P.*A,JE4G*&#M48>)MQL)./\"GU;N/+GY/T 29#1 5:"[N)Q MV_O7 /R:4"[1:]#O<'*DUE"WX&QU(5]NFB^T9ASH$%3M:2"G,C0@P1I9OU#9(-J8(MI(],-:P$" J-)P"'# 10&9AV2:G>^ M".!MNI4L4]9=$QYW'M(=G2RAY5XJV.%(L<#XY L]L$^/OCZ0,6AR9#RHA#-% M]CB$K@4Z1-"1+OL.@"#!TP >%GO,19_";Z064W0YJP1A$YJ5 NIZA^SA@FDH M%@+&O5/@"\%533Y_#- RM= )@<>%9HUV2)*L ,FAC>KO!MP;?XO0ZN+-\9<2 M_L-UIJ8%#SQ\"IK0NO=.)PL O(;H&W[@V?KFD1_P]1HTBO"T$18V^!'\\-]W MR$\%@>^#3U#0%:\5&D-<%[:FZ_R0U0TXZ[X>!"6#(+*GWLM\A_W$I3GR@'TBT+FLZQ ^D M0$C68F$\^21S1L3IT\2)C9HX>48$$B4;[#$)_A/Z2QD_W*]2TX) M-HZ(G$5 SA)1DS,9NG*ZZGBV)T#Q&L/+4:'#SD!3/'#!G ,?XOOK\G0^(QC< ME^'ERZY@&(2VBN^X27MK&]D&V*%&1@S*LZ+90PB?0V/Q2+&0@Z'KGC&$0Y_( M?U+G05.R0Z,IL(.H0X,$^MCX8$"^/UP!L, 'QMO#3POHQ8^'NP1(QG56T]AQ MO,"M&OW6KKA^[]@3^P:.(8[\MX&%TEH0KEIRSY]2":Y='JX1RCW5H16MVRB' MI'>A"1V&HN+L02PJ9^@-6:Z Z@ X/:7NK&5NO,NA(LJ34-2_O:CJQ'\]I>/W MHZU!)1X8)]$4/8\P--6X7CJQG)/'ACB!O DXZ&0;?H0H!.$0I\(^P M673L(:'1H"6GMD"P[..M1*%MZ( AZWT!M7(#5\0!T-MYXQXV^F,U.Y6VZTK& MT5I]IDX@XW1VL_:9K+<"OR2EJQ6 ML:8.*_DU/$]. [40276T& V NI-3?13G#F[>I8:"[D*X.[B(: &\)<=1I#]: MWBBJR(7US6_]@$W./E2DAY?.MUW8V^RO:(M82?:9W2+-;]LI,3NKBL-D$FX* MQ(ZAZL/] M0Z$C%##>GU-K* 3H>1'ZK88S"4+3IH4CREZW? ^^ M71M<+430,JB6Z)@3N'1HI"WH$.4,["5XZ42!=T"@K2E MA)6@ZDC3/"L;S16"Z505I^@HTU4O#8.H>,A(-RV$/F@0D@DE!:L.A#8H/"YT M@Q#:2N' 8M":@0J/!X$RE5#3('0>Y-B]9!;*:E%PA50'<1]PQDHW)W#9UP*" M:85:F(@TJ,+3B_JK/&K;?Q_$5'W:@0CE:P+"I"@0X.AQJ@!"E.6?#2@5HJL8 M4B4B;*<#?Q>@[CYI8J!,"UY^^!>>@X'2L'I $*,8;'E!^RO(/:F&C:A4X0GH M'2XH)H,!%".NCJ3E$F_DZ*Q!9Q&U@%;VGL> !<=,"%KP3[&?]36*#@I%M#R MQBGTXR&GOE,5_(B 4FZ8$X7<4[C2X53@'GA4BD/P!]<%:H+P+V<#UG7?9,>A V:<81@*EJ20@P+#0? MJ/LH4!8,'(3!:8_P(6/'&5$OT9^CT6_W X\%EK+@0C&!PQ/Q$SA&(!Y2XQ!6 MZU!^7G)D0^:<_QX\3W7N)R:]J)QO]V)KV@NH8-Z<1U0-S72\HN(6KAB4(&C4 M QDY$EZV*F"'>O%8P>.<02&SD.\A:GO,_G[!<#T\3C^^Y&!?_ !?]1J!W6(? MLN4.S;5H][G8J(O/Y0?>Z422DGXTGVOR,MY X_*4:2JL !0C$)#"P%ENE[#G M=OEL/\30\1)6R+-#/N_"\?[6>4D,0F(,7VYC"/!/9,%0O;2.-PH_>NVQ2!#U M$_4\#/^%R%US8>910Q"=T+*GZ@(]%!("L6Q:IFY_/RK0P.94P'OW)^$G>)$[ M'D2;]HL D(MIH%4[3[K]Y;J&Q-B 6>?ZEL=Y-B1:!7_R#U#:X *?5%U=9$L> M$C(E$WA!PG"Q]^/"I$[XG 6FP+!16L;O*0F7%F76SOY.]<@[MK!_S@"._UL? M1%[XMA\-&"6(T#BTWI+#6JD*-&1 $_.3!G"K]G5@!Y.[*IX(EH7YH8ACZ6GN7OK5_1@/[ )T3U0,UR4< M*(*7G\)V,#ZD@L\7PM;[<)\7H62T)/C[4 @^])X2GE&=P"]X^2D;@WHL"OXY MZU'//)<458Y,H>6!_"C70Q+99WT\;ZN0G/1(.FAJ#J]G64#IYJ M*$KDO:JKVEH!UYR@G_:J-AU(#Y6UZ_*%UH3F2DVW/K;6D50U;_04&OZU5*IT M3G="USYP/7&QDV^M'^ \E#3Q<$>P//EE0!:<5"PL63ADYB,9!,A117XIOL-- M-5; =CRU]8_$\ZIZ?,P$V2WO0+CP3F@+(-\:'GK6B^,231K1JO#@X5?'D(([ M:'EC?GY;]])S8","5!9;K!30'T%I1B8)MHFA=W+^B+Z .$>U,4AI/7,ZM$=\ M!J_I.J=6S/$B6&"E@K7MQ9!/ZDK\S9BJJ+9C&UCI7JP"0R/^?11JM8YI&P=< M <\I\>:AF[:-%J!R:A@>%%Z$/MG!7P55CW-3 KJWMR&V"G.T0=BM.K-7F#;M M\7>@@RE0'K?_B,[@Q9B@IZ6'U..7LC!!.464@, 'B@_#WA?[(2HXT-!N\F;@ MZ9>.7NI-V8^N>=4Z:-O1Z"5$P/!*#,X,_[CH)B \X0C8ED*A(]/"^N$/#==B MXA>@JAUPZ%T[VX5WW 9"=LA/]%=Z#8^U*2Z%C>$Y6*@$T3M@/1'$B6EHLPIP M,D@\@-=6/&@E&(;UKE>4EOQ86'!<,Q5JZ+-/]HRPZ>D RW8F#8ACA M-X4A@R,OXN#[0[S"(H5@YH ^X(4H7,.7*16+AZ";*%R"?:O CPJV/PQN6F#N MLP@N?>DQ,'D;;!^*DXWY0A(*3@2BYXU3EH.CQ1^;UU%R&RK*I6^]VM'I+PZ* M=%->[/?$-,3J!W=AC6PM ^Q+C0_\6+3(B@4PK0,NA_'I)!S;&KXZ2YB%N&'\-]"T9B[<__WOJTV/K'5\ML\1(,I7% - M_VGP8!=51KD <=A0!@C->@3%\<777GAM'R+3T1N#/SUYUG\7 (L=_Z2F-6W9 M>JQO>55M\!WE=UE'KQJE>XX1)Z-C D][M*%UYB/KZ"/ MY:V:GV$_(UH^M"(+)>(2]=L2XQ?XV=T0#3Y 2(I/](*IJ:,YS^6EPIQCMZ59 M)O=Y0I)-U&N<8S!YFF.!-B_W^NUY6;DL)-!>M-%FOH;4Y[S7[Y3GYKT!SMA# M.#/,O;IGSIUL><=RF]+Z#S%JXCI7QZC?$9AWP*C/EQB.6_8>UU!D MZ)[KE/.CZ;@WUG^;2_OG$K/CA$T_(RMKNE;HS@J"[>Y&B_<'+/8[]0:H@O^] M(' ?+6LGS>UO3=9HEDMNTZNR\00[F W6Z>DG6E#CGE[>F$MQQM<*LYI9 MVH)D\N%/T2D*%M0G2\RG6%#6J-/.\HM\C182\\Q.TSGA.?^)%M1LY#I,XB$S MHUU!K)BM_@,]3K\_(#%7C56@\('')PICK'M!1O4=:+EQB8Z?$46\#'.NBHC2 MX%6RXS\WI/_@IX]*?* XBV'=V\5&+Z@?2="G!H7)#!0Q/HA(0N%W=8 M$#C,!>!(EVFI"N8U^BDXGP)@0#5Q_#YV$BH)A5*->P"A0-KAK2AB,%?\ ]C/ M];P$GM)9OAKS.D.8UX1Y_1G,:_:WF->)U[_C(GY>@V%6,5 #*--ZM3VJN - M?B=F%3JN=5?\8LHU9">:')%@+D&;V:LT#PN'$*:9SW3MV[-5]SWI@@HB;-VC MOH Q#/"8HH2++'$9H+GVR)JB:3O(F<3E59;MQ"'^>S^@[.Q$@%^,"VD1(0EB M&BKH0N_&J:/OU C'R] +D0V.6]BI7N].-9 'E#3R.\T)05]3'0_%^^K#!-Y< M0$G<@W8&)K6&YY=?G8@[$X2O#;I "<=S>6VL?L+&HYEBJON#?@#LAIWE5L!WVDOU.YP#S9I7,3H\FOR686XS"L\/;$,[O M6L"Q']0B'-0!,_P("#P%W.? ,8O3."TA#/_>9VTAG<#)>]0F!&KG89]>E.H/ M:H@1;L']"CGR*/&H*.OAD,HF+;GT&)R$#"$@'_@<>J]P4"?UE*\]?7O-415I\CC]2Y)NYI# M7]S3]]#,5+^6X)B\=T(M\;N/QQ"%!*XCE *OPU_8Z^;E7P0\%/NXAW2XR_*^ M!P$ZNPZHPOYCR-;RYNS] MA>47I'M%CK**S:@7J_/W\?*@AA0>D28Y@0X:U2/X'U#,!04,/0Z MVE*F"$$3ATI$U1+=.0J?XF[5'FI@D?%L.]QJ0%@X\ZC2YU9.\0! M1(L!1P#M5Z\VX(B7]9T*% ;7!X"037:X+HZ_^4&I%XK;>UU/L&UN!)VYPQ;$ MWC0/7H%>?&R$3P5/2,RPN:.WD@>O.MX#- _;]BSK0-Q\T3SH'(S[M6CX:;]+ MC.TSH[PW'D\BYC7H]LE=OM"B'I/!U0"KD$Y[O"\'&P(/37P("N&+_*9O/A\1 MU?J>V[-]R^+C'7NYSD>.S=$&>F#QG:K(OA^ B<2Z:X<6BB!.@72\[EX5B''D M_?AK[BWX7LH/12!<_$.]/U:PJ4_/>C'^\W2)UGE$HPXNE/!+Z% K'F2ZO;2 M?+" :Q> _(='0,XX7#K/3CJR&$/G[!@E7V[]GH#\DF2+YHY$ M82\ZR!T\\ZT'[B9&;K1RV$H[Q]WUZ-EVP+CTU_2R>&(1L(]D!83D7AM72&*6 M[)$^>OWE?.L);G&@.%[AZ.&[4&+FT'<(ZRI??5W@]N."6&SQ <%";[:QHARJ M0L@4AFJB B3PCAT^39F8JH\DR5.@U[_2J__=^NCW^F*(P6;X"1M4:8>A">FH M!VG>(UZ"!E?N!?A]NK4'$&1 /]XOB@GB#2^3/=^IXKZ6]OB(\HMI$R]9SI[; MY;6Z/X_H?O%+T!.*\7K$[+FRJ@=8YU'\3P'RS%$$WW#$_3R#DC%_(3P'-()7 M4Z=^Y\*2X,RNA/M1AXIRM@,>D^9WS4JEN>5;LB#HJ:0S*#K*MY^&>=H"+S2, M]ON,]1MY>UZS'F =G(*^EOGW^*"B;2]5BC5[+HB6&?J?T*P(_*RCP%)X M/D.Y#&\@\GJQ(4' QM%K&G)FS+Z&X $<=X.[WIG@K2*^B."#9>^$!)%JK,%@ MTZX.RKEAIT0;Z[YI=3Y%]HK);EP?&4.+9VOCPB*AE\1B9_WMYP>OP$N2FI): M/A6ZCZT*7\OIJUFYNC5F&>535J#?T(41;>9I;O0(3PI_WL MYKMB<:K1;C_-ELUI-M?)=<[BSZ\_.*OM7NW'H87CM;1->$PWRFNJREPGV%*' M6 < CNF]&EV99(IB:=-]?-!&';GY^%"S,T6M]MPOH/(J(@4O(DIY\1JP\,+"N5\\KT0#MO\X>32/OKA6XD&,N*] MF &NCO+#X'X/EIPW2"21+YS"H"1J;S=ZL6#TQA>?>:.*FW('DBCK]Z MKU@(VR![J=IAV]7P&[]3K1>H?S UKVWA?@@(6@]L/'=A^A=A0M , I/[N1R% MV(*Q'\407HPP3#[LUP(?F'.?FG%NWC[H2Z;?I\>_0\P(#W\OUXTB):AGPO&9 MNV^WY.*#UJM,]CJ8"3H%8MEKQX^N2N_ M3N8?RB3OO=9&>F(B/@(*Z6(^[DO;;<_O?M4^L8&NXUMC@Z)U3/(YN,QN!0[O MBCXR6(ZZ4;WL(O4YM$!\9T'![Y]7!/CHJ/N8L;U\C_J4W1J2-9-U>KXKM66Z MT'V8#I1(IK2#"5+^#*EPBE?M[Q",2O)'%8#U]J"SXZ&LY4310K=#@E" ]_?I M^D[ (=Z_4L:0]\WD'C*38R]3SGXFP^_@M&^RL>_!X+A6<,\75&!LMX0-&(_S M66$4$;D>X9M>3MOV3B*/)%>7T8_E0.:#98 X-2$+\S MQD'R?]_,R@GH4SAA@_H!AZ/V(1TW@4.;_YT:+/!%,\&Z".&S"(91\C'8UH.^ M'#Y#ZU4)")T95./\?^\<[,K9XY9\B!&ZX2:'JI&=:!PGI1/*6&6W_*4(YX4+ M4%Z "6[A=C:NQ2IV5YBTW;[&.: N]?A60A^@XKGT=_;URV60R'_P>K!C9CUL MS$9&73SFSI#[1R54U]\'K4;(?*L-BW%UK\TYIM&!VQ?9*Z,#U2'SG+JS' M:YW@O$+Y/3=-WW[W2DJN$L7[16WH:V?,ZJ&0L/-\^DF+Z^[CD]5M6;/IF3*E M\\]%N$RI>UCU6?"1IH?(RQ$([EV^0/U%V[#@]H@+K=%C04H*LT,M$Z7K]RV. MSS0&_DXU+C@-^XI9[-#XYGGH&"$*^,L#Q+NB.QR#$EIW0;([F.D+0ABZ'=Z_ MAA"$7^Q]U>'K#^@SX2KYE)#@OJ23GF@VXLM[XXI/370IT?'9"=_Z>=M%'P*#?56B2^ UF3V0E9/[A2%S0\,PO=O#8 M@"^M&Q4QLC?(T"@==-,.QWI:SX%E'4ZP7% KZ3XCJZ3S$YN'L< M]U&TYH%7N\])>XV[)]XE0$$6^6@B04GS7GOQE>+>$+]3>;]QZ:4E]"LI#YK! MH3J7[<*_80?S-"D$-OK!VAR/PEL*R3V^>3S<(\22MSU6XYY%9AI^5U+4^^&\ M)^WKOR?X87CGB%[C@TZPT(@# !^RO70$ HV%J?JQ;JBR@9Z@S<()?<]N/K29 MO:B!]U+=$WO(_X[ >YF3^>VN'5I4@P#AKV]Z!N MPL5+)_][?*3LPSF75F%/OO+_&'/- ZS]CGPD$U?DZ-N7!T50;7#.VSA8N9C7 M;3O4F5"9O;]\=5%]!\FG_1R(DC_0JX$T1*6JJ_L%Q2S-<,=1&.A@"&L!+0WN MQ8N.F+WXHWN@!.HMYF$:FX<,A\S#M&<=PG\XRB#3Z#$U5AO%-_->PIP_Y@SE M-%,.U>]%IMPSGOUA]*%\'IC*3[8TF/64$M! K<"P#)U+2$/EVT\98DD1+ M^S:\63*[])#YT+DW+\M[CQ\UB M00M[VV_>[L?6I+ (#\F!?_F-+[]'/5VA*R'CB%O=5% AHVA3.:B6XC;,4A;K MN3!+&80$]M9/S+_0T4M.GC'$<)$DZJQNHU%A,RQV<'W#H4468,.+GNX'?22# M>.*Y[PG/R+.FF1=GEKQNM;@9!.ZV$4==*,.:R0,D\8Z(-\#>J\.!('49VU&A M$#+K0FII<%CY1Z0?[)EXF?(@G7V,7/X=(6>'>3C*TS79FU:'X_2BIP@.O(T) M'_FMT.MA(/PP[>_3U\]MD.=A>)MTW&?)?KW%Y>'%OZ(E7 M GC,89XID/K"YFRX(IEU:KM&:<;3\406-,QGM]/JK[_]9+\G7XU6Q#Y\U<^U M5_NC5>^ WBX[&W"5 6MT:_D'MCK8,)V.9G.GR2:+ M"E[UUR]DCGU(T.PMK:/^:.79XD/-Z"O:@EY*N;Q5>X@WQ[WKKWRW/DKI-JUU M!K72DMUM"]DVNU30RE^(5AZ%WZYE_Q6.:N-?+:,(XMUAT ?9QPOO1K=S48V# ML]J[F>8@?R8&]:_G?#=9$/T4Q??@:I? ^#]V2_TO\T<21(R@_R5YE[L&@\+5 M5DRQU0'T\'8ME$/UCI53@<4M_\[XM?'*1+*CI3LU]&H!YR^++]?YB#-;H8'[Y)%T8 M+!\?&"['EQ-&=3*KMK7G(7HR]?+),9?.Y9(BT+3X2BIO1@OV85E$WYYY^213 MKA3IFE%M#EI@LE-FB7(I+:['[.DX9^EF?[X8=*<\8&:K1B.=4')/ZW'B],GE M0[?QG-$2?;Z02LCVE+?KPX4"GSR946_0T")0^\\F9&E MU"K/7(/M:^7G\JRKMK7^.H/>>3*C-#USZ':]6QF,%NGZ?#"M:(W6>IP\'>24F7;&J=,GMYHV:\VD1H\NERN/YM)NY=$[4Z>S&B7>5KF,T^F0,^G2ZX[G28[C(7>>3(CK38' M2E:I.#38[085>5*VA%SNG(0TAFO>ZAOZE*]9T\=JM5HN=ZHYN)LG3V9M;F1Q M3_66IL9+JT*B.EM44@I\\F2<:7><7[ANI3_8QA,/]G.&@QJ#WGDRSM1\/I^X MO%GG"[:TZW6+_;JC*.%U"Z^ MR\K#SC@=/OG[),[D;Y$X4Z^3."]F6#\%RE_)41X%>>'AMT\G^-['<53)"[6_ M&I'NO8@5^(9@^"7(B,-1H_"R-*]2#Y=6HU^CJU/L'_@<^/B<.JI6AZ8T?E=+ M/O!T>@#WI[+[YF$/K-/\.I!5ZT&WW8=!@7>T69;)"FGCHZX2_=7N'AW&+VXB M1D^@5D(>.^;'5)4D8,"_06) )_X;'L%OOE7Z8&SH0G+?T$+'L^@=ZX%%B2T@ M=-%M\(%G_^!/CJPD>G]MM/_,WN+)> :/8P7C\K^/\2;^ZFW5WO3]EW#)[TSB MWX=K]O^S]YW-B6O9HM_OKZ!ZYKXZIPKY*(" GKE=11 Y@PC^0@DDA)"00('T MZ]\.$MFAW09DK*FI/C;>2'NOG/9:)S.@#TR.@^?#0-P84*4'-.]W LZ\_HDM M2ABC?M.8#12WA\EUQ?Q]X8"/>O[OV>%'A@:)!XVA^B @R"?J M[@3S8F;T]T$'8Z !C00T\@:-T &-!#3R!HU0QV#ZF"J^)VF\4*"@V&"[H_-+ MB#]^_85NA1F.)>BB]?>18>)O+OFH:1;_#=/LJN[+XT/@+4?A\2$0<$' !0$7 M!%P0<,'#<,$'PS.[ZMV?_QJ-)&D\OBLL7JQU^C1N]]F!CY!_0Y;W&1C^_6F< M?(>#';AZJ&#J\*3,$WMZUEO/''CS!I/[1_?>4KRGY;+Q 9 M@<@(1,9UKIL>BXR4D].EN87L3AOVO<6&>-T1TH7NMT:3RB]>6LS MET;$&M; LS]^,50B3%*)0&0$(B,0&3>Z)WTL,NB%8C0+SY$YURJHPGI5(%5N M(=]99,C3^H;HTL\F5QM.VQI;LJOS$A09B1^_J'@L'$N\)C)\%Y1_DQ].[HZ$ M_FLY\W-'-/8$OO$?>#^$\,HF8!D#O P)'W-R1O QSO;$(E"<./-?N\LHCQ>Q MN:4HO5\ZZTV8'#;D_ SA>N>C^DS2_K8_=]R'HL1+6XM,KVFNY%3XDD&+Z>1S MX\Z2MEP9RPMNP\M\K;@Q28KM$TVC,8A ?RX6)F/4]4RS0'@$PN/["(_?]NR. MA0?;ZS7DP3*B<=V9HM ZVTJVF>2=A8=&EUKLQAF6.4F=U<<]U1A%"!D(#^#9 ML6&:/&\S'0B/0'@$PN/Z/MZQ\)BH"2,A3B(4+U26&PKU]O$5;VG9F M='5"IN/68BNFA4:]"%MB !\O$DY$/M_#\UD0I&W8@A8$NJX>Z#J6)0R0):+A MP"O]?I";5XV$W?WD/A.C'QC">WNYV(R:]**;K79XEHW/ILZ"520+-H)!&;9$ MF*2C0;@\D"*!%/&+)_>.8>9W<,UR:W';UY<]GBZFJF)M:%2%*)0B,.E&1\-T M($4"*1)($1^Y=-'*2N+7]2*?2W8:65)?M0WSWM%AFXRL-"$RBW+I[53FGB>U MV8R 4@3FX1)T.!:)O^6E_8/:9_UZ1S?6+]44[-J]V IH>B? RDN3S$S'J3#* MICWB<]2VDBD[I5XAM_+E;#)\EA XC"^FD:&I2& O:&X"')GJV(8)!V29$N/,5#B=[[D9RP6?MO@Q/Y$Z4AG-X]P-&P_O^X9(NX ;9>QS +0HKL,A[ MOJB,P1,E-$EG*-DKR9UTL<<$GH:V1R;"%YJRC.:UP0->G&R-X06_,I1T::S8 M9Y-]+[4AUZ7#CN6:80&\"*:)AD;!>3C6;NA)M5:V=E-/CL=?V*^WWCZ8,^8. MJO,F87F(/QS[>P<^ ](/GMX;K_'"= WZN"\[;#N)&WNC \.^XI>H!8W9F!DF M[)&I2I#8X>@L..@;C5US>1)"13@C>CQH&W*/B>8+@L=):P6S,YS/XDZ6@MTV M\:"3\96F@C([OX$U&TLB4RI):HZ62+UL3^SD^N-S"3(NQ("832)X=;QC);U3 M79Q#$"VG)+(6F_-\BR8VU0J[K<8C<$QH].D\^;L? 8'8X#H@8@<,B4&4B2PK MO6H];Y-"8ES,CH0,EV1^?X[LGX)HU6YF,\78-$,2TXJ]K<6B9%. DV6IUR:I M[HA-W//$6#$MVYU^"6?;A1:. %2(B8019@RO";XIP1$^\(M?93SMGX)YT!*5 M4EFI%;G:J+ZIZN*X7)( )3)/Y[[J#LK>)"JD*R>*B0=)C W'!/1Y"EUW2C(2 M-Q;^-IJ==$D"P#EFN@'DN"X#P:5+$I1/\,.C(1?":*( /._'OIF2-U@(3B5P M9@YN40/4HT1 68;E,Y9_6!,?C0D\52I7Q[V7,=H9G$D':'\3V %'":4,^",< MX)6&]H"Y<1-+74[8C+IUJLVSU64AD6BUXM8?C!(Z(YR:IT[+0)NFH3+U=.E% M EHDMI7UJD@D.5:HFVM>[0M$%586FD@W15#$D)R'H\"!P\ Q782,B<1]R0AV8+)&ZLYSQ6!DI MR!C8Z_QC^7!A T^A>QD A\.U7IJM=:3\)X+XV;[VK8F 6(! M(@R9V,K$,$1/&@%1!BCG4 1YWA' (-"WEST\.,[/5<, M6B4GR^F2TM8Y\,I MK+KGFL-]>QWC ,I@##U#9ILZ8V)1)"#O /=MI==$2"V+?A$;SJLM ;'T[&B M=\A*4TNY2&O\UV#"9%]\X9#-02HDY9H1!/B.&#'O'#*RZ.2KAW=X@03 M@M*J2V9K(IC22T$N1B9,5IX1(K=05LO-JJ0YE//5\,GAS:(S3"0GG M@&\R'["$4:XTVI4%3S.L3N3YW,P2Y1,J?FWI@#XEXK8;7]N/ZT##SS!6' L' MDG:S;5%HZA1V4(+M)XR$_A+A) L\ZF[?[NGG>=Q^?GFDRQO[_V+A_8>=^1&- M/B6"UJP7:.7@>^\GDZ#%]./C)6@Q[4N\4$]L/$",#Q$3"#*?XB409+[$2R#( M?(J80)#Y%"^!(/,E7@)!YJ>I'V\Y^E^FG>:C7!3^(PCL>O''/]J+/T(_T?>] M6/O)S?C[%Y(DK\Z%"1C(;PSTUK""ET=5?.Z8"OHI_E"L\4CS;@(:^# -/,P\ MFX &/DP#?S:O!NM GUWGJ^Z3F<&-Q>#&XB?YK7X\^JM7%A^L>0+@:EP4 ZO? M+EQ%+ VXV;#N%!;\K$^/2''0)]J"VW@\2H?I2"RXSQQ(AT ZW$DZ7+DIPEO2 M(55A \1#]Q&9S/HL;/D:DT)=G]M7$MMN< M^:T.B#N[W'F^Q-W**#N@+H?EKH_?.A'B%IW460>7K\%6Q=D*00,6GB! M;W]M!]T%I_Z#[DB. N?TZL[I0[1+?]D!_9+^)6:%0=R6*^IZ5>NIZ=JL3TT' M%I58?GI\FOP-#]-CWR3FWBIBWMH87].L.;8%3P!@C"X%GE[D!QYH>Y8AQOI& MYWF)+AN!N_I&HF$F'@U'F/,F%8$8",1 ( 9^1PS\?B#ZEF) 3"MB M/&'5JWQ)[G&%Y]XR6E63N"UO)!).),@P1083= ,Q$(B!/Q,#OQ]POJ48$.+9 M?+&S*S&_Z2=Q7-\*$8RRP!B*O60-?+B;=\P$"?5P_DY!'YFHJZ&@X08UF(&3MFTJ0P>UQV@;7AL4 M2:P+&[@X:9J"+J/OG74S V*/F2Z91:Z<;9%T<;K)$96*8=8;L-_GCU]4.!&E MP['$:PW% PD12(A 0OC$%;J*A#!TOFF78QF'+,62_>*T4Q?7.I00P#^BPQ05 M#R>H*[I'@80(),1WDA#7]9*N(B&Z5"SQ7!D.V]RB26AZIF.MJUD92(@$E!#Q M6#3,Q#Z]FL=G\8*W(-AT]_/[3<[>)3?E]J4\ M"TI=$*I9HY\N)\IVEU-ZDU3?GF_C\UER$$/9J5B88>)AF@DJJ -1$HB2>XN2 MN^2W?D.41-,1J=AC&U&5?H[T]5&*+TB]!A E+!(E%)D(D]05@SR!* E$22!* M?.#]_;DHB=4[\[E6JW=XQ^%2Z2RS;?6K4)3 +!D;9B-D. Z;'+Q_ .47'CAY MUUENF#M?'4N QQ"@-O:0F,*[>8=NGB\DR+(IR7@XWE>WN). C+QN^2UIY. ! M#MP:3['#0U=G]).;U?+7=HB,JRW":D\XM.V8^^>,7 M!51G[)S6PU_>XK@>*!G.(MNZT.WSN7$UU2^RU<;S$$Z#BH.R#]R#1D;P!F6/PDMUX3,4, 04/ M7A%:&8XFP@$L @ $X4'B\I"3JT4^#_'#5$W)E <'2!8?[T[)R#4[F-&&ED\L@2@?LMHGFW M/P5M)6PL;_A _*!]W,^=K03A$(H^Q>/_&]K_"*%Q!DHX%>$ 8$=3#_"WCN<> MN)^]T?31Q8IMS&^"DA=T)K/'R7^%T,2$?/^O=BU]L84;_!G0(6!H[6B(C/O1 MCU]M/,!W'(*#NV$4?&<&"(>M(5\BTV,P7X+?I?$=[>% *I+/1%ZTMZ1CK10Y M\YR)]P=)-$0G>CYRYY75[,OO>'50SR66O/9X%]Z"DUV\\7R[P4-R;!8;D,D, MR6\V9?JY.Z<2VZ;LRU%"N\TC!=94+/6N0[;GIC07S)T(OS 6&XV8 9B$2@V. M5403$F5)A_/GM V<.2W-47)C/WQZ#@S1D3+7),N;$ 3U,5B#1K3!.78+1S'= MD=8.'D,D'<$%32IR+5$\]!,K##3#$VD]:S_/&[_#DB[O'L\7-6S=L+U1T0># MC-$D(\O]_L$1]MO!$\)&4#4#?7!'IH*PIHQW\[CMH_<:YA'LT5!+.*#H*90$XAY^"+]__J*9L$'SU!S- M]N8"NG/17=C8#ISP[:+.A1B$BQ:R34&WL!'B(ML8 5/HA2GH4&R"'8.3Z.[( M<#A\&_UB&8XYPACSQL6%Y@:4R1#T[M!U3 ]XIN?!#'$TIMR;L >G9BGVGGRP MC ,T/T)SWPJ8!.!H]X.9WX=@@_/C#1W#R_+ [U(.?G?X!)<841@G>P/+ ,H5 MP6BW\&[#^%J0P 3MI:FJA]P/I\,IB)Z7A@:L1PN\01D#[@'@FCJBC ;WH^X MP\/D$2IWQSQ"/I[_CH: [R>SZJ&)8MD 0I KX:!U4X'#Y=%SC/VT1$ NDGE! MGIB2-W9/=%D<#CP#Y UY#M6]8A-7,4?.#$8]1G"3>)*K!:@<$3&>/@NY!P]8 MA.,2$27-!!6"8G?:D# T'-LUFDUSX\TQ?WVL?1)SC?="R&,G%'+$@WC7>[Y^ MD2(!=,_GU@O'+SM\$2 F :?X=_@^.-DAWA"$T(PXS[#?29V0(*(!VY[M[TYD M=G'\%*K!T9.N-0$1AX!Y/"=Q/P3RB!;"L+\@<$T 4,.A(0 S%$2:,D,JQS;@ M,XPC0"'K"N,=/F@_1!JB#D89[;&C>22-'@]9W3"A3 .LM(2OE U#1!,VL8!X M56!TH#R?#2!*@UQC@Y^G&'.$_\!RQ"[(8ER] 9@Q8K>$%SW M3,<\C>G)FS-L2I!+$?VAO0)>!!R'H'CP6,SA^^GM\ DHT/2JNKA(K#N4[(UL MSXO&1@00')#74;45!#_^[L$)L?* 5.V:#/ ;#BZ% WNSH :P'+!/.'[31'Y? MV'LJ4CF*;@'G%L 7LR2V.-PO8D<>AN4QF8C Y@#GVIQB&RA[B!U\*$_<0L6 MN!#Z+F)(UHPA-',A-6X@YP,(*T#'2R=J(6#VJAC0@>&.&E7VI7YXHX]W06V82E#< 3+&4Y=E8A< 2"E M^/(,0/@ M1'K4FD@2M)<@X,]2);Z8?PTDP0&T/$K5)!G2.Z1%"9H_)W8SM"OA_]'!84@& MJ]J]3^3!!RTU /- H" '7Q( P6,RM*3C-P#W1W!]P9?LE0MOV,_G/B,U\!W[ M%5%JG?J\T+P3H(L(/@DCR_;02'_%W;HLL@Z(Y.H2Z2[CNPO@U(H)V;UF9A0+ M;$;0:N.RH,W[2(U0RQ-H5W#")^] ]=R(S?218P)5&PZVA1!_9.\<< M!QMM:6>'H&< 033V]#)VGX]GD^/O8I!":QE^\0# GL\_,F0=X/7L2/M((_P- MBX6WCR6MH9RTW)R78KH>Q]&B)Y<>W2V(B".APS9V59P;UG1Q"2"":\4OOMT\ M?(T&[1RLY"QT0DO2--?#N;70:0*Y+0"S(0,(6#/FZ*J +N)TIF2VC+&] J=] M2>H\)X=]EJ(Z55)2DI1!%XE$N9\\3VM<7N8JR,^PL%[(/LTPQ$)'-@0H#,V=+"M0>];>,GBU4.*$R%XEHI-3J=R\H MT,OK?*Q FR@F$MI#)70,EGNI3N 5%QU="M$DQ6)C,YMLI7!\!G@@+3Y4-9[0 M7PF*"8X]4V3_5TU+09;5&0)F%78T'=KS$H1"P[7CXPEGB!)7P M%B?GIJ+!#Q.75B8(,N*MK /Y)5UT8OO?V$U17E 01$+P#RHWA4"PW++_W!, M1 =H]SZ!5@9*)Z"@$=3^I@&^'=YG3G8>"(9=&.64O4#6&5B]VEE[,\=QW,MP MAJ>:&:(R5MR0S($[ CZ7-(2T7>:? +\1,% *3)(AL$5V]8'[ WD[/]@>*CXX MVN!?0.!+INL2":Z#X ;(=N<\_@K:S=_8+,()]1GT*/;'[VV3"P3#,$'?P'.I] BQ+@?! &FU.( M8&L+9GXL>U>S K3.+BHX'A.NS47@6)][7A03!2= , 4>(*0M\!\!#>M]%8 %MP&IUE N"P>61,W.P MFB7<$)8@0L'F^<.F!+$%(ZING:D;$46I[=VQ=[4;IF6[SBK*^J,C0KCO?>6= M? (@18>2Q), )?[08VEFR=_*6QW'Z62=&2P#!Z?O*Q6X%\($N@<-Y>5 :Q!P'\P M20$K#48M44T1X(0:XK&:6Q7P5\L9 N,4F"Z1&$G0)$[69<#&EXA.,/?D)5&& MEB\T^&"U,.(N1)#[:']M!3X"5 EX<__0.!4E(N3?/P^U-60HO"=;@89DX41 M'KU$>.4];L+.$_^*A;@-2W\C9 %D:P"X%]7BP>L/Y?,0QN=F@&>@"'5%E[4O M\T)"$6WK!&KAT&_ //S:%G89J[U!\[HX"N\\Y-\0->\086](HY=XV*7%=[.N MM_ZA.'8'3GS/!O'L;H,'G.!=3[!"*0,:)5XR&C+X+B=^S.@,029VC(Y'Z(3: MPAHJ^38BR!ABM\(,BGZW_A$PPWYE* ,H0<,J+^R^9&=4ND69X.U4](LWV)!7SYR=[MD\25M*/>%@X@)(-'')K OR@H\P:+EY9>0"'^#K+T;VP&TQRD&)VASU$T1Q+-B\G MC:@'F*& _J -A=/2#BP+PH:8)/Z]#U1[E\(D\4WPXP?C8DL3"<#S[[M &(6F MP(ZS1,6K 3V#II5&);E%:-. M!*CD@+P! F5T4&" 2GWW!;'H6P=UIJ8BRSB[@:M'@9FL6!//BSSB*I=N]Z5< MD*MV!=Q[(^WL"\HAI>U!*<&*.GU7CN:5E7E$-MMM0>CJL9\%5 [ODU$%1*:QGA@4-@H7L4\C3N]]P+S;+!ZS@O\[NU7&)A]S0D0=!V*!4^]OJ5#(\!D/U:?X(D[#7KXQ(M% MZPB02!M"M;B1;'P%R]4&J, 4.DV[(G%D 8 _0FO[X!2 &[PZ3.3*(;H6H('A M7?'"99;_"4V\"G+@!!S\]3 P?GB 8Q- L3R'4MO5^'D0=@4A.I"GQ78]CLA$ M"-50HI.Z6O[MROD[ZO:#B,1.MY_;XT!-QW9JNB6A0ME0EA.+0#T^&%$1AI.'KY9B]G/*/]Z"(%5NR[^R)HB^ZYW6)5:2T 9P'J MKY,'*]:1JXT? .U3'/9 8LB%($ %D%R0,V$(Y: ,L):IX-L=*/@"ZW'VWY%, MM$^O:GTFJ'L8>27CL-AWM*LOP3<Z!C\"F.OPF$USGN1/@#"K4=5^EXN _OKK@C MNH)OO+0(DKL7!@,GN6QPG%8EOT1MGQ1C8L)'C'GB\OW6HU[74\=B7C0 $"#8 M<=1P3^1'Z-F[=@=R/G8@YU_T[]XI^1\O42[C6P 02ZOK\+ZUE<9[<;+[T MG\Q![C@Z\:[XR3O58:WV+H5U^&QLD9J*I7J71I#VAW?8P3PA3A'1]C"*NX\,T??!J@_$S3 (H+7WX" M+]]?0G?T_7KW@2]<'[ZPD1W,ULH,EHG9^TOI9T_%=KJBGZV\N /4)SGDS*%7 M=?8D7$>KOP2>DSL=)ZX(2NV)QY$5F.4PQ8.[)@>$/E$ I,S19'-CYWG/D>T7 M-A0"_*'N;&M\%P%=_=HSE!O9.CSKONS/L[GWST:)( ,9YU)H:!J"&-*@%XK2 MF3C\8_V\%QC*<"^;GP**_GU H2)H%UJB)&BP M*-2$=*!*'BP :QX\%6;4\=VZ?6\CQ10)*#TW>XBZ1:4XU+8#&HQB V&@":8O MX<>\%WY>?:NG4B[(,T]8'6D$>)W(-."]I'TY+KI:B/G2TS%'.A>&;EW%>E"^ M[Q.X%724D,4W*U;H,CN^MX_*H_/'[,0B MEOYHW>XFTR7IZ?K\^W ^)$SSQ:V-@;JTCC;H73&P[-W;YHZ]NW5\V+OA7*T< MG1H[\?C]]N9(_^[;1* (V&&^8O^"$5*D@FNU.)"EW+W\SGOWL3"O18%W(]]M M]0);D<'@Y"[YY#[^W RZ'&X0D'4^2 PC$3)*1@;C./@G$AVR V$8IP?0,Q_3 M$6E(DO$?V-<3O Z9RUQ=);8;)KJRR$\CJVC! #Y"4^*?Z;K3>'YN#.CS9VYRXU2;L):Z2FO& M1E7:-"..X,JS9[9,*L&LAUJ6%X3-7!MO1\)XN (KSTXD.O30T:A1G!3F]2@\CY/FM:I9ZK-2*R2D>6@CQR[!S%K<#*LWTN^L]=V**]U7JKU^'2B7>AF M2\E5#3PS>K[/T8 C5P5U55-S-9;*EFB9CD;@A.*S?5JY5:IIIAI@GTES6^;( M5+8@P&>>[=/DXI%Q@V%'I*"/^2*O))M<%C[S;)]]=K+N]!JZP;=2@PA3*I6- M''N1DME(I):;#BJ26A,8 -=Y.S=F+E*RDM%F=KQN%52EWU3'S=2V-(PD+U%R MM;C(MKAM"?GR1DE=S:3RC*\.%VGTF]+:X:1/I6/(2)=MCL]I? M)N8;=3-KQRAFG.?L&'PF19TN)89B*9_?;&)\>KIN#=&H1.9(@ZEPW54H1[7*_D.HD+Q']1&G993557/%2 MG2XX#)]VLH7&):+G(Y-D>2E0,KD8I/)+0K 3L2U<>7ZD52(5F4U+:YEDTS:E M&$-RO+%7E_BCU&2'R^QV8?*+Q%J5F^LK3LB2S6[BDUE+ M%UKR)?X@-3)1K D.7[*O&"2>BI?]LC2:2 MZ&A2;9S&5WT+NELN9NUQ@:+*YUA8" 5BO4ZKP+2H))G$UA"S3?5:6'@K1 LM M/V,NX;03-+X [:"LM'OMS;O,>KF'V"$6<#'*S;WVS^L#[F8 W4P.;FD_ J<1 MYI;TT_OA<&\L>+:;S8$Y@!'.'7BA;91F$1S;\#[ 21;TR5$JAMQWQ7?7G*=5 M;-/;F/M""I_\?:.V6/KIU1%\!WF-@\?#*^;PDK<'-.]W LX$^(G35BL IC(1+[Y-\?#Y1(Q .\^!$O=, O/L1+ MXHF.!7CQ'UX".>97O 1RS(]X">28/_$2R#&_XB608W[$"Y!C=("7J^'E-P=J MO^7EWPT&\4O1P!M-;'Q=H']ID(P,#7[X?S_H'Q\%#_D49:X*G_AK]=67 38\ M>N] 'C<2H*];7H\/@;=LG.L/L+T6 M2 +SXJ'E0Z ^?M^\P$G/[Z ] NKX;>KX*X-[%4A_AP,*N1&%1*X+GT^F$ [- M6\?E*!=ER8=4KEN*X%4TS-8O-LVOF&TS6=@^/?G!-%B=SG8:W$UYO2D(;=F/&NZ30 <7<$5 MXW F^L!K CK@6YG!-J),HRUUS:CI2)Y8);*I>33:^'%49YZT!K7QOK"<'E"K M3F7:94LVM^@GC:S2)R/+8O(':B0U$S3K_WX0S(\0OCK]?S^4M?U3=V:B8;M_ M/[T,<%YQ#I2:VY0+R'" 'K"8^>'=7J",B=RNU#<5SB&J+; 3J68VX=4-!O)Q M.!ZCO0MT'@ ^3SOZC*8#U@Y8^X]8^Z-72'Z3T]%=$R^IY86?+ETU 8S_ ]W/ M!0^^P/J<3CEJ/M>KD;EF:[IEJYM%F8!W*MD?OR)A.A$+.#_@_(]EQKX;YY\H M=6:@Z4ZDH^B)H%_@J>OF_%UP/(JE[F;>1K4S:E:$PUU5V/1-Y/C,:MTC8H !X&Q2P.6#[4"5TIJRVFNN-&GK6FEME6)&)*LE94B<=Y< H! MJMC$.P)ZR/;_!_4\^'76..M+]6VXS6:3]KXA.^-.RD(=,_ 4+ONEYB2H9^%N M7 _LTR?M)C,8J]U(T)-!E>/0OWW@MT9_AW:]XV0-,V,X0WOL:.?T?$K,+";F MJF": X(QN'6OVIVJ"Y*?9ZR)VK(I&9#R$WE&QR& 9,T;VG9E4+V+S6\+*B,K M-*WIJECGG6IBI(QZ0F1: : "VO-%4(6]H5[*4M(V3Z&K]RK:]\CQ#H<:%Z$6 M1DE== >MZ?)!PYSC7CDYTW#F V&\'&GSF)$AI>9SC.EG\J-*53X9C_S:T@%] MVEL'-;C=#Q=";&K"V1J6.]'G8 23,8+S<@[F$[V;B<'Z(R'Q=#X.87ZYQ_L; MI_EB\OEQ^^I$(D_QX&*J#R^FTD]4<)';AWBAGI@ +W[$"_E$OUJ+'R F$&0! M7HX$6=#!Q8]X(8.6%+Y$#!!D 0O&4077FJ_=> DJ]Y*6"=@%/^$"B!V1Z898'9 M?L7N>P%U/)31/IJ ;THB-MQM([#8 R(Y)Y*,)#JCP*,+Z.,%^OCL_HRN5?8X M#:^NTGKQZIKXR_1'PQ;9XY#+55LO!F1S)&4?AVIJ;=.S\2[:Y>C=T#FDQIQ8J7KLV95][B1S_@/#)]Q2=^]Z/'- MFW9]_L7]=]WHO7"%/Y$ABT0IF^CP2J;:%]6-4HOV&[@G)Q5.T%=IS!KKI-M]-QR-OR9] E[]4E6Z MGV@]/#2OWJC[[@?# UM!Y+:CLDF277TH1K:==;Y4:.!FNY'8M=C53\5- ;M^ M)7:]O9=_S6[9U_#R1;Y5JPKE+,43UK@0FQ8K\?9JA;OS4C K>34O/V#I@*7] MJ(%]FX6+9\QI9VB5YV1)D H-<9,W$R49L*KKK+^:ACMJI'V'QJP'W]W1Z4?: MM/YSTHGVU]?N"BYXR)VF*ULZOB0,OK;1-H8^K9+#61+J%/"N?X2#E=:R)_-U M(E,EB7&>RC$YJ5B?KL#*Z.G*>C>1DU5Q-.<%@UX+#BF23*^ERMQJP S(TY5+LCHR MFYEE3B6JE>E8+YM*% Z'/-MGK9>(3MA:D5%SL\%H,=>'S4T2,LO9VXUI=3J- M5(N*ZMB)$J=+0H;;) ?L^4HS79QMC>?"G)1F2[LPG,7L?2P'2T;4HYOG+:A_B2&.BN%>I7#D/JBR)V0ASVY<:54A AYAU,DZX:M M]0_>"A%F*1;JEF\?=NG^Z37+OE'+\AV:JX8^PIW8VQ=:E -JGW4\GXJ)^:7@O70XD%'51_VB:*?F$B %__AA7J*!/SB0[PD MGNB 7WR(ET".^1,O@1SS)U[>&AL7X.66[2'?-(\?O^O06P+\"S<=^IQK8^13 M[$OUE3F]#Q9^X49=0"[7(I>'HY9 JOJ.3;[,K5LL/A_GVBV^>?HU9.E7(I(' MHQ'Z 24H_/FG8H/]CLZS,.?==+Z,+/5EE]QYK?" M/CX^\\=4E\_NG#6EL:G(DBG @==P0O5HHRDZ,#>L3V-BGYWX7GSM,S!\1K$B M5DS!7LY!H(LQ&KW1/ M(.#F!^?FX.;PIQA,F7JSL MLXR/.Q_UOG>C;F:*)/><>4&$14AMT52EF<37&B9A:>-MIYUW;QE'PS1Y;HY\ MSB6G@+\?F[_OFQ_Q'W]?SSAYG;^98V_'R),TC9L00M\J*O[4,?LS@!V%PT'&HA^$&U7#9G<_>1^\L*N9\A4)?N" M@$N/Z_)TP8HY,M?F;&X22Y9[/+Q-AB(JD7 D^IH/%DB#0!I\Z!'][ZOLXM\)?/ M\5N5S@>5W"--$DS(>9.3PS/P)=()CQRJ1R&E]]O\X3P V-$53?RMXTN:[F=OE-J[6+&-^4U0\L+59V:/D_\*H8D) MY\Z:JTXKW*KYY(S7L#F!/'3*_*%MI6UJUFBJ2H45=Y.)I7DDH8M!\ZN MW??RQ>=:,44N^<6X*"GEU%;)URZV,2AG>LE^8L*O^8W&9HKQB9&!8-*$RU MDTW'AA9)C).5637)-J//%QL>/$O%:<\NE&H@P#1MNG9U]P@TW@ZFD9GBEF>W-GC/RN/ ,5YZ=?:ZG-;&0 M6XUX2>PF5_5:H9CJ-RXU/,@.1]GRH,2N5*E /0]:7+O;',&59U!:D]E>>Y15 MYQPM)<5*VAANR=9LRQ=2(*59\\L1AM])K-1 MAAQKKY\)+UU:#_G"_RN5A=*,P,2B562;#R[)FC7#F?<=AR M%6"[6XX7,QFQ6EL-$N?/M)8#SJRNFA*BT($+3U[ZDR(UQ>Q,1LA M2[%\=I/*BBE-EP<4=?[40G+;'"H.L^1JS_.91.0338U&2\^>RJ;&I>>&,%0Y M9]99=0LQ-LJ6&]"8.7NJ&*$WI4:RG^+IUJJJT&*+F9>3<.G94[MV>T0U"_T8 M7ZJ,>;9F99:J#;C^ I/DJ[/ZO%?H/I.U53%MB:L262_)<.G94Y/D)#DHLAN! MHP4J+U:*LZ10!WN]P%"S7EOG7-,$_&4S5R M%MUVG,XVK?!-L/0"\ZWG%9LAY'9;55299[J):84W9+CT[*E2IIO(IW-M4\TI M=5(:+VNSA@SV>H&I+&VDCJG*UE$W[>%J8-7D3C0&GGJ!5SHTRRAL=;,@6UIA MG8[1QB#!@[U>8 &U5LIUN*@N<^RX.6XW6]/T4@)/O4#9TTE$YFM9,4MV@<15 MHZN1U:97<.F94-%31GR4**<(7EJMIK'E9*(5-PVX]%:-3.JF,0=>RZ:N";J= MU$5NX2AS& E\K;')G+#Z\0I-)_AN?=Y#WB?^['W"1M_HR!SJ(3 5[\AY= COD3+X$<\R=>$D_LJZTD M KS0MO>\S*KD;*WTE(-V( ME5XWY ->\CN9/#(O?2F0O&5+^JV##F?9RDRP)?&/VNBX-MN=&POYMI/?E8VW MK])]*O$48>].)'[M4'9E2?J%:"3Z8#1"!S3R67KU<>BBK"SA+)P_U[D^L[Y0 M9>L]6M?=(D#BMVLN?D+_ WEE_CJSSYRL[QB0"&@[H.VO$R'P38="+RK@X_NH MR*(3I9&!"UQ/+DF=_E53=.FG [L9PI_._HR-'V21@O>\413\N9:/SV#\:4T[ MD(WCL\/=2S7XK)/:"TC_--1CW> SW'\B84,+QV>G"R@[H.S/BM1\291^I1 , MO)($WD&$RL"R"$(H7S.$\AE-/VZ>JKY[ P]FX-XI&[QXIRRU:6_F4G*M6+NU MD$\J*,\W*&UH>[JVY#(G2=EM<]E9$Y7$Q_M_O+B+EWJTEB)YN5CY0PY/R[&BH)NC*;F96,58 M6:B35&YU.PX7'29FYY7-7)W%GUFMT\W7HEP#MSA\8 [_9"OR84U&WQC_1U9D M2)G-36,I?5[';!_&INYD9?H,"I_&J+[TX+^.05HXX#A7=67GJ9+:JK%5=:$5 MLK.NUMD4RCS!-]4TXE>IE^P8^L>*^/FE0R5N)[B\AF+W,M:]1D8 M DGA#\/V@J3@ADQJ64U'5#)'6G)?C#*+:D&^G:3HC#KTI,HT&56QF"$U:!=+ M37:%&UM^)TGQ4+'3]U2VO=PJZ$PQ6J8]: JZC D:_E91=&7FS%P:_D1VL$<, M6ZU-1AK?6BZ2]BP=S[?KJR,&("QI]%-TS(TDF.\F?]Z2QHY65L82IORJ8)J# MTE;KU:-3JL:WMF;=J,O18J&0_/&+/6UL2OPAM(3U=: U&/*59:;0HM168Y3, M3Q<<)U4:5X+6,SMYKDB$HJATV]A,V\*TF+1DX J3I^ *P9=97SPDGW(4#;[T M\YRH[V8(W3DN_\E&SW>R<#[F"WDCI=7Y:;#2<9F169G0T5I M <>$COK.,SD!4\%(FKULL;E2T\7&W%#Z^7EIWD4MEM-,5SI6J6GA33 MRYHS7/WXQ22NXY'X)F1QYJ0$69\@ZQ/$K-94H9&9D;DNHA;R=X25G-8BCS$\XPKXVINBQ(KI![B>0%SYS MERYEBIEZAWKN;4NJM"4CV1;?R=7[MRQRBM6U&=<5MF2WJFF].:^--FDX[P7F M?\),XHJNTZ,R2I !^E.FR%.53J2YB=2YC6&9%+7*/;/U:SE;6$ M+L^ID_0RM^HN-U9R\KO=$4>&,T2 4%J:#O%A_^/0=I(EKZ8, M#C)! :=?S;6YR.EU3G">EPJADVF9+%.ZP%'1]@U3ON-A=\OV!*6J.N+,C';G MF4R;3@).9Q&G,U1P92-(!/T1A3MKJ6+DLB9!TM'!LM=N9^96]5J>"=.H=FFQ MPU1X-F<,]=PXHK D,+,I_W@F%X$D/^>24HO.#,B%2(ZI:2J6:RO7*DM;Y)S> M2-_T9)4U!;9;*K';Y "X;\R5RM)\$[78N2<[^ 2)GR#Q$P1RKYGXV?W-*\ = M5)XS8U4PN8V35KL]B1Z3P@VCMTY/T;9F.Z]Q:9M;3(R68,_'*SC:&O@V="+, M)()\3Y#O"<3$C?,]IV)B5*,2RXS.S4CI67(&>=6*EOD;BHE6@DKG%#-#J )/ MYHDTKQN=(A(3P#&B8V$Z&O\V8B)(\]PVS7/*"VVZPHSJ1F*BUH1HVIZ3SCA? MNU:BHEEGIE.F&5V0"SDS6[6J754JR\ Y\(T#]1*8:@6JDNV5,RVUEHS-8G*M M/%C*UW(TX\U17)UGERN5�CRX'<:2RBJX>]VK,#1@@U @V-A#EL=Q[2),&2 M@AQ/D./Y9I'?C_E"2<@+!/%TX3G=WM;;G"/66R0_ M2#A;ZX:9'Z9<**23FZG*L8-HG9NU&5;M-084A?L@/&@T.,C[!-Q_=1?G'=R? M'_8%OI#=ME6'3DTJ#;K:?*9O>"LH6VH8$VLY$0: ME+?U&Q;);/M9UDZOUE-.B)H3M:^7'&F^0H>$MZ5CB2N6P_F,.X*442 D?.)/ MG0@)H=05$C&AOB85J9J5R#F=F]VRHT*T.!#TS/. (=/*>,Q2RK:Z'LGPD*BE M0BS&?!LA$22,;NMCG7#"=C(5E>ZZZY"*-5VH\?C$2B2OY4\M9NN57!^L\JK2 M+8F+6<&:;A))/^:+3J#42$W+C531JJJEM+ M$GE]/>A>"TK+5&/;773R!;*4 M+U@2<#DK/"=?\#H?(EM4%H9H\-O(F,T=P#S["7#AD&6,[95@!DFC(>W<+& M'_.%TBX3G::[C:&E]N.EYPXY:W8*J7:ZKR6S-[1W4LE*9\91 X'L&EVRJC5H MP::!4\3@O@DT&EB6VU[+0:4N-#X<6F>)S:B&V:FZ4^)@&%CKM.S_F)7!IA%(S M"E8MP4M"+R6LM76&2"Y% 0][VJ0[3C/+ NZW*=*P+'SB+=8[9VD738 MBD)5S5EQ/+ZA3V0]*R6Y3; ,5^*9#=A1QJ%&P">*0)\H<4V/R&=\$J2) G'A M$U?J%7'!S]-%56P@].\+$'97@BUIG(4VW4>A- M1: W%8]\GZQRD#"ZKGNBS3?%:)67E]"QMSBKB MDJ?GU5@_OJ"V53+IQV*\5R!F+2NI(K=I$6HN$Z](T[7-3\K7L*1!U04^DIQ]D'O M&@39HX#MKS\X]16VKRK1K)5KV;S*:KU<5(HSJ5+FAK6TRYRA9:CG9X9L-<1( M;9N2FO5D [(]]'FB]&.R?9 _NN9@U%?(72FE!H/XN!+ANL_&9KZ:RHI]M;[8 M#FF4ILL"T>)KN5S9T)[5_"RS\F,MW&L@:V_C"RL;+4])-C*P21KIY' M&AJF*)D$_OI/:KX.68:FB*%_D>A_CZ$O7@P1\M"SP%9&3+ AJH3GL\GQ)TIL5:5XNFK5;MLR; M#P9B.[X05*F_G.0* WU69!I0Y*#:P.@W2G\_5#[KC%=>..[IH;]2P@&_HN4, M;<,6M""_$.07OEF@D1EHNA/I*'IBJ+*L&&/D@4)ON!M:K NF,HSVNF.&4]C< M<];NRV5KDAQ0,6BQ1A-A,GY%D_6[,6J0$OBRG$H/J%6G,NVR)9M;])-&5NF3 MD67QAF5+2]*:FT2>'7,MK:E-4Q&9ZT0;D%.!H1>-A2/D@R;OOFX4_[8VG,^L M\3+PD7Z&DJ.1,W,TP99$P"ES$S"# $DS"+0&@=;O&O4X T?HKR]F9AYP=>: MJ<'/F@1_ /HL.3, )K?H\Q=UW04UUUSJK3$SGCR3=#F];<>4A+;N 8,4#X9/ MA&-DXDS-_?VH$8T@B!J($_^)DT^WA:\H3I:M34&239[GTU*/9,=ZO]D8RU"< MP/ H&XXSYX.''E:L5VD%X] _-XR/QS0#Q+1K.4)-\H;W^_7F* MZ][']%/$YG:QU:IT2?.8Z>1FI'0;54X95;0=2PI7O%/8WF"S"*C0>G5! M>NC6A:3U7-(M"3)ER)Y(N,8X).FB)(8RT@C5U808*AR"6AS]2Z/&EN '*K02 MK-"_/UFH9!P3[6Q #5S3H6T<&A+#H3C65 MR-%%/]WLU0I<*:DMI[GB1I_&Y>M!11)GY=8D66JJK42C..X4G%Y&AW7^3^?7 M5SRH(+JY-F"H(\!0 RM:64G\NE[D<\E.(TOJJ[9A-JX'F*RS;D[(]$93:::U M33O=7%8I(,",0$-&CR)D@V7E]A,E%T1Q*3 M]BOK!G 9]2,D 73,P_@H'3*"!H.?>PH+30 )+@53,1P+#\$-";(I8;H*K11[$K(ES?L;M_Y>"AE=N(6W GZX)>GO(;0VV%1M#-C"A@QWP*.Y<=J)/D^H M 4_SVVABT8S.^L3J/5"A*.]JGFO7G_#3FP\(NWP-]HA!:4&^'CJ*!C^RD(#U M0+UK)/\4:D%F=M>[@B%DS"%_6A#D<\<< 21)880(10=,'P)6/H W,.^1P6_H MZ).98;J&_U,(8-C:/T4X%#FNA,&XAH\$5HJDAQ0[I%A 5@F6H0.';!,: :=3 M0(L%&WT#/PW0A*:%AA+8@&2.%$L2GS[?$;HV R1M" \)'2A\*'"!ZL!0AK@8 M XP!V)GPRBH:&0WI'( $ -1C%8 ! #WP !/#"7\\DR3 //"Q(TVP+&6L8'46 M&IG 93<5 =*%$!H#9()=0-P9'G'C)[A$ 59=4@;NN_<;L[R=N7^"XPH 4< _ M_"4]R4] %Z&KR0"]X!1S88.^]#?:/J!PXH5O@0]FT"X 1!&:@:<#@H/[#8< M/9JR9(5#C@U=8T7"M#UW STA6UA+UM^("G> E32@ P'YP0/-A9$JR.A\P4\)D5FBB6;9CH'>Y!CY 21HO )T#*("Q#&G=Q*B# PBV>X3Z,C@R_ M"F!K*^#AH@*L!QOI(."1@SX;D$T>4K%]DZ8!++ M-;..(0@,&F,/1@.B9P@(]8 4+^(2_@&L5B5I[NT&B75 V][.D10 [Z=H($1T M>V)!D@36")1?>%=#04.D:DT ::-'@K,:L@XX%I_"L@QH.8&=X0UX1.:)F]&A M :-@ \;:&3 0Y@+XW10@GX8T>*RA8 &!9"Q=_._EU1%43IEBK[M$ \!CAS>$ M#*!O(/=IT"131 ?\L!0T!Z!2=@1 7K8DH9,?+K,!X4#3#3QG"80$-GPH)!_S9 M?1VPZ"WX%X1H>$)3@J)L!XL]H5Z@- .N/"2# 86BV-B4C;1NP&Y# W3-%;P M&P#:F)24V5Q31D RH4_"6-4">2H".MGI&AC_!!)_8I@V!MZ)-K \03<1EM*[ M^#:,@ 7)'P+,%/?P.(+X$S9=CZ*'I^_&5L$.ZD>,2KS%J!U@[<#3N1]Z[SE^ MI"LAP'L5 _V&#XM,CB'@ :PZ<633.!(MR%Z"M/@5;9 3IMP!!^#3.\R;S_!S M9*DE ?]7EW.2#LZIP7HC$9HAD':@0.5+U_J#2@WES7DBI]+#4V>8Z\SD: M /Q!5_[867#?==&G-_B16;'XM,)+6? M!+1^#Y5\>159M >3/L=V1XWI++=VUN0M4$E1SB2ZVJXS9$FPF5)ENHX_#^#D M@R?VXZC$.2L7G_@7J)A\@]<_B:C]'EZ+;5NOZ%ME2;;&1HLH5Q:U?.SCR8GW MX]5F=*M>CO:['+&U&]N1WFI0C@R#\=1GL.A'*<;(U%\"K1K].__'&Y^7P-)C S-,']Z51@'IYI@;-(HN2U+ MQ!#85"HAC,&+?PK:2MA87H%'_(F.>!4>/W>5'! .H>A3//Z_H?V/$!IGH)P) M:^( 8&XJ';A98_LG_I;W$Y\9V%?]:4H:0C=\]M%3$59L8WX3E+Q@KS![ MG/Q7"$U,*%_^U:ZE+YDOZ&>/?2Y'%9&E!\P7&)7#W6U=DA5^'2#\)3(]!O,E M^ E() RBD3B3B,7%P4B@I4%$8..#(1MA!HGQ2&3'XC@J,+$?^*W"KD%YUIKP MT^TTJ2YH+EV=\WRG!XM*!N39RA'OR*:9$M1TLT(/VKB3T?(Q( MQ"A5[39CV5Z^GM@F!ZL!??[,PE+HV*;:R9(+(CX;+$UJG50: ^;"VPG=*BK] M98&4[V^T4^#62R09FB,FC($$D7\*FW:64TRQ2S/)NL MI#I*KK%=&&CI&4*SOVMRH6\9K9(>MMHR2RM M45WP=OK\F1K1'*]*4HP@B6Y9F[9F;6W#0,([>V:A3V76)$] MR4$DR=/G/,TL$O0\>0GRM>XB+JBI0I]7B$E[D2V7Y^LIQ%'D=*6X MRN4J$MT9J^GB-!RLU[8,5C*G*PUM M4<^:HYS"TU6SO;6F)%T;-R[AJ%.1.6L2-19\-U,=%@M*?5C*7L110X[':TI# M;W"E)9&3%Y.)5C63 ^;\[<\$F5(DI\7RBP(A,S$I5B)D&:P\>_MJ(+*K7CFS M(7,->[ZUXW5=L).7($]/![*ILW123:=*XB(YDK,RO[H$^4ZE;Q8F$>V92_?M MQDP-"MQ"7K)"8M%+ M*=N+4"K&Z4Y/J#D4MRG7BS/#T0B%AL+V;)_1='^5S:7J<5Z8SDLZI793J4;R M$I3BF\6@&N^S M?5)LUIS9*AMZB2=R(^=T2:WC'&K2]RQ M';>JX#CU&$DD&:6TB>:)C-,XX Y@Y+DY4AP!>36?ZN9)[Y/U+;M1NDU%L!T3 M_!>9 N>IX"J_4<18E"V3LTE;2:2U6"8E-WR9W'U?$G5LP-0#BA$BX\>--D)G M /M!J*YB:#@X5BD :M1Q^-Q69O!KP%H:"=8D-$89#,%44,!Q;!JSBU''L^"< M@%*,9][*D;> M^89U[C4&1C6FC"WI)_>#X?08P$$7 ,;FF4C;,YYG@2R? 7' M-KP/L-V+/CFRC@\J3]TU>TLWC@U=V_3VY;Z/PL!_WSVB./T4?[70]<#4/'@^ MC%1">'L%G=[O!"RA_8D]"9B)?M.(=WTJ]&)OJ3 $3IQC2U>QZ-]]1>#@>^^O M83WPQ_ZXEIIZ]5)4@)?[X(5ZBL4#O/@0+\P3%2#F>HCYS?NIKEZYXP7U^%LP M&EXR39"5\^.79X1!RP#G]^INQNR__PP_YZK,Z^+]4X[_FYW[7P/(X>63XXLH M)^ QA"DHO_[0?_X*"='GA+LW4GG$V'GF9888L"^Q#] (_,8?!_CL7ORT LA M3L4&VQV=NP\_?OV%,M6&8P$#WOK[\^Y:7IV?/C(*X[(4CO^&%+ZJJ?(M8?*6 MF?"%@?)!%7W;=AGO2JID8W]S,8P,S+S#S C/O:PO%B2E)%\2B MD$[G96$=Z:@U)J=0Q M&7(6B=@C+55(5LOP#A 0=''Z(6R_R\S!SG<3!&"#&L4:P;)NV!SAY$K_?%=W M]9CF8!#N"ZR\1Y: %X1>K9WDNH6H:/*2LQU%(\-\L]AL#- $@E@XFCAO!/E@ M]AV$'6QKX^!KZD!%2)8=6'J!I?=XEMX9E+[<4,%7!1U_8+IPZQ%8FD3WTRY( M/2[7*$SLI,+Q2F[22:>CX-_=![9<>R[-RX;?W8_^T);A"Z+R@D@^$./3LF<_EDBQ?Y65>+ M9HNQ-E?1Y2O=H9\!HG O' *V/I)[+Y?^7Z:>BZ3BQZOIWDW'/[N;'F-0'ZC@ M2J??[MK23TPDP(O_\$(]10)^\2%>$JA_7H 7O^$ED&/^Q$L@Q_R)%R#'Z O M5\/+;T;Y7//XJ[;8>*$KPJ?UUWA=M%_]["\WS/C<9AGD4XR^.Q%\8K.,\ZX8 M 0V\@P8>C 3H/VJ,XDE&'\?^X;@V0ED36$'\S*/_#,1BSXK48L]K56B7M6F[ MS3I,1;ZH;?ZHI2,.[KW6B#KMC:R:);/;5B6S1]9Z]H+O%I*X9S,5 MCB=>R],$O!WP]BO>Y#?G;7I K3J5:9? M=7F/:L-4#7WTHJ@KY'N\WG2<,>_T$DQ-$!>)KK/"[:,BX5CBM?8"@4QX*)GP M:87*KA43L/K-39I76;VR8KYJ*87Z%BR1"7-C2HE MQ4RNL)2W^<2U)M(%U?0?KJ8/2AU]6%(7E#KZ$R_Q)SH1X,5_>&&> K3X$"WQ M)R; BP_Q$K"+GPJV[YL3]'&U]EM6D-\J5-\]#?%/C(^'*NC]K)KN-P2:WTY^ M=4)A'HU0Z"]"*)\[YN\,%E><^Q?S7W"^BTXNB80 -B[(4LB49H*BP[PEJM4: M&^9I*O,S\I>^+*V\?:+"53<^+\1\)0;Z[GS;02@=7L#X*3KF1A+,UP/I'G$F M,6TV/=)$?VP#\J1VAS)=3/M>F3*'4;A>L6_)Z4^0'5Z2L]Z74?# &JD*ZK)A^B6N^ML*Z/L\QSQY0&G2TC10B-5E5Z M0*399:5=VV96?UQ]$OEPEOE$!&5<>FP"[J@A4;_G[TO M;5)56=;^?G\%L>XY;^P=T?9!$-2USUT1J#C/BM,7 Z$$9%(&47_]6P5J:VM/ M:VE+VT3L6+O;+J$JAZ%O&4.C=KZN&1([YGRA/.1F8'WH'(N:8^PW_ M*&I;=&5^B+)YP\B5JO!A.OD0X%DZ^1#@63KY$C1=# ME<=S'XT7,3+^\)4Z[=TB+2-JT'C-9)Y(;**>CE^[RAZ%N+ Y#UF"SMYX_^XO M&U,,07.W'1)UP-NNYO$> [)?LK=2K:!-7?PAF2*B-G61IKX_.'B' MFDH<:2HQEJC%,-L>-$ILA=&6LT)Y;X7?F!-^;H>(K=6/*V8!!"MW8JG/)8+?*G#>M#[2@2]3S=CTW'7%K MMUDS'&J8<;I,T((N_H 35VRZ&S(%B'#@PC;/=\>!*YM!E\6!Z2HWMF*_F!3WGB >:2K^WY]P-\HN/CYE_/]OXI,8*_HX8K!@N'RPY2I[^ M""?>.<]K94+O%*5D"*8.NOP*E0]H)CKO.4ULEI3R0#3 /*_&ZDUGU*H:TK(K M!0H.^0]$QGEEW!@-BU\I#?KDO.Y#^>QUTP%!6#09_"^&!03!''ZUM>IOD&;_ M-(?=[62^#^+( /.+ #%@H".ZPVP(#/'<_Y?P$^[A#W',XVWL7^$SZ*@/ /E> M/MF $!E@@*GR5-E"!T):YRUKW!8H:U' :XK*RUP>=*F9W,Q[T%1+/IYV!<4@ M'S7XP\/5*?0;6]VU*#0KC?JK6;)25&.,Z9)N(5=M)1E((?(Q\2*%?'FZ-I'B M1T2*CVVJY@%NU2QS!:;7RN.&US6MUJ<02:;=9D%LV2R^YH1V31[D1;?;@D1Z M/"V.>I(B"]AS(* ,-&W]B'6AJBJG6OS7)'COW[X^ UZ0T<'ZQ_4:6 ";6^92 M0_!VWO$_:$I3>H+?/+1!#([=? M^@MN!/;I'*&]I)BB_7C>'O!ST@XR[P0-+@E9P_(SJX-$('>-U+L73_<_1VF#>_,<%;V8UL]=VLK!JK;IBH1OKTL@%F0E\E/XXI^\YO%K M>U?YF#JX4^?G/O4%T0&C4&@,>_H14>.$E*B>YH!@1R4UP;>.BVJVG[V1&KGE MBF/./X4E+VQ[Y!-/_LMCLH7 X7^[C>Q9X\FO-WOM[D^_,@O):S8H/[+WMA1_ MF$#YDI@>D_D<_?B=3T"T]"R?MI0Z2[0,"K>:9;M)21#,\!_!V_8CDX5CR1Z@VEF6$M.5) A;57R>@I)HI'4\Y%#4B-3F)&\BTX,O5\I+$2%EU;IWI+R*^SY&C) MJP0]7?/Q1*Q2L%!G[9.1;KZV,5=&U6:SO2X7(]E8/3Z7QM3IR*XKJ79IF1:X M17TX&*<3^=Y<;\&1)VN?T90WMLQDDJ/7 \984B4JET,C3]9>U"JBW4Y1!4X9 MC?NC+%5JN6L&CCQ9NZ9I[-*KKLILPQS-3=W.-IK#UI@^G>^,X?CHTMH*[EYFV5+42J_2$*2-;N9F']L.3H:HT&/%KKT:K_6)] M1KOPB3&<04-/2(K+<0/497;# 6K$3ELEL%%+$AIZ0M-X<31LM2K 5-V9JK>I M5H\FN_[0$Z(J3')@CNIKC5M4+#HO4),&4V^=$_Q$?UYDETH^P79&F\JD5TOW MAX76.<'/3[AI65WUNFQEI&BU_*!:FK%P_:@H^1FE&BMG1$/Q4'E1SVFLUK;) M,5([^D3TEC452'114^%V7J\6UM4^U9+."7Z2K'NY6*.'XVN/)I+DPB[T9%32 M?S)2<22S[31G538[<1LTG>B4:N+V>/-X)&BGC7ZS(G&XTLNNE&5WH&5D!HX\ M(7VKE4G,!VRRR0(E91".V^"+0S0R^7SDA#'CY4+1G>+$K .G212[*Z)U3D$3 MG&ETJ-4HB2^Z9$ONI]2K5JHV:0HV&GDRSV9+ M(RFE(XHL*( 9EYEI*ME&;S^99]6AS5I>[7%XS&LHB0H]R>J]L_"0BJV&U5[1 M2;+91KJH..5>4ZT@I3^9)[Y8\HL^Y>;82BU6;8F%-<5QS#EXT#(4N=0J X%5 MUHF2DOCY!ET -6Z)\US5@D8]1)%Y*#GANT2]/!DI>%C)##XX\F:>HFVNRE[(*7 RZ;0Y1&7'B4((C M3^8Y<$;3VIS T[A.]5?];GPZ QDT\F2>#A2Y&#-IT'@ED6TR(V^3S#IG@5GN MXQLEE*6P)G MK969@01'GLQS62\M*U:RQ'+KC;">96KV6 =HY,D\E?54 MQ.54&;#ZFE'F;5YTEE/F+-@G!BNG)6W6;1:8_9)1X[)+8^/O"R?OGPZ$A#S/ ML;2J9*J4J@G3N3INH:$G$YB;*ZTK-1)=-;:6VEYK/I$H1D)#3RC5G"]B>8WW M:NR"["R2Q;&DTG'F'(*W5)BR?9WFW,K*8>&XN.F=-E]X0E-M9D3=POJU1 M,3Z.-^=2ZYSI(K.-4K?9Q0&GS%=X,F%.VHYPUB"II&O968&=5B#:+N/.L+OL M3UGF'"XSN88\[);7";S!NHUZOQ&WBMFSIDNQV>?HJJ15N0('4E4MW=-F181B M)RL"S4W>739X!]<;?,.>FMV.'/?.(2--+9)Y,-%,KJ]:GLZ!.N#[S#F\TR4O ME^X(TPY>* ^;"2&56.728M%NB*0I6 ME:7KXI0KBZXYH*1SZ,",G-%FD3(R7+:SH>@-7?$,7#JGR0F+<9ED4TQSA)XK MQD;-@K>:G]4E$3B+F32P'5SI.[4^N8C%.IT6''E"S_2B,V85+M[D*B-^,E,2 M:6T];)W3);M0REH-P^;Q_DPM)-52KMW.0%DZ(Z!K@\F6DR2WP-=CG!QUNKU4 MLP0%](R,-*N+2;*>F8S8;,$4$K6<4[1P^-0S0F)FVHTJ7VP0ZD+.&/,2 MLMS.<)1A8YI44HDE7@'I^;Q+CF;*@D%#3RW!92?SW\N@NK?B (2WR.7X?\,!F%+#7-]%"ZA.WJ\*_PR_8VVF"BZ#=< M((HP* M6=2\*P6Y/^E,)(P7R*0NT12$IA[)J#@XA,7!Q"-.1WP)'U_BT14RH>1+ZC$> MX5@(^1+A6#CY$N%8./D2X5@X^1+A6#CY$N%8./D2X5B8FAMMW?ROVMQHZ*< ML2+9.1^923^1WVN MW@RSWU8T_E(,S)%-U^8-T?[[JVC#[]I=J0_875?U3>Z? F]Y ?=/@4@+(BV( MM"#2@D@+[D8+0F?[A;!'0<@4_CNJ^'=4ZDBV(]F.9#N2[4BV[U>V?_/H*USM MDK*N90'#N4R?>*2R(5O?!;MI$^&[;_Q6^AJRUE@O(CR8XD.Y+L2+(C MR0[W#0@WC7'1_BOR09^?R ?ZHC[0)1J(?HY7$ZINH5?N&KSU4[;*]7*7L*>. MH&*5SELI+/?6F=_HPOG=74V"S;KZ70H M"[B>SBIEKYZ=V2L/ZFSZQZ\$15[NCI*P!5 #<[_CM_)$33TU4[B@V1^:9=X6 MHR!Q/9]N>M/D,LXUNM3" MJM>:S8RY[45'/*035[J4)(*-"#8BV B-W_-AV'!PWLSG,P-6=1/F+*%(E-G, M(=CP[S!)D5=T?B+8B& CC*L/%6Q\CNOU8=B(N^IPOK(]#6]T%D:#2\7K_;$' M80,Z8"3UFJWQE0Y7;@4,47#H#I#M6\'4YSA%;UW7O9LMTMM(;[^)WGZ.5_)^O57:(LL4*^6&VH%>"<&[5DT7 M&:BWZ# F ?V1*X8Q(KV-]/:KZ.WGN 7OU]M*&U\48KJ7Y=:I-%ELX'C!]OO2 M0W\@A=_Q@4SPBAR8 D@Q\6Y3VD,4'+DCR I[>B1V*]OJ56JH6:JWK! M17OD TTGHQA/I+ZA4]]3[^BOKQV>EQ+3&Q=JU93LW MD8DQC>[NHZ$B$Z=1G[\C/8[T^-9Z?&^QVM_>AHLLTS!,,<:RA% UJUP_L30X M!FIO^LV_N142@I[8:1[J5Q'2H)U9D1 MU9;&;*_BIA-7]$\B\(C (XRK_Y:.T3O1XT7W2)WW1I546QBP64O)Z?U^IMEA M/00C*)OE(4[05_20(B2)D"2,JP^5&?))KMEOFB%LHL:O"LV!QQ78BM#5ZFYL MD_+-$.BA):,D^RB0])N8^(T ,$*[3W>ZW@]P;I.0TS,[AK,=5;&[B5R2;I#0 M0(HC/ROQ0,83T4E0I/AWI_AWZS#]AH\DE"PV5[:]CMJI,V-"' [QQ5Q"$.#[ M2(G$::%.=(H48<"7QX![=77>O_G72JD*ORPS!8ZGV4RB0EMJ;,P@S4' M@O),MX._[-UX-.*=ZOXYDVT#*!,"G(TO"Y@YQ1P98%E3A_-8HUG%D__8&"2S MRVO(Q<,LE'CHF/XP[K'SB&U3-^%L><=U3&L=#%'@MVPH'IIF>G906G[$C8O8 MMLZ+(S;+_, E-,Y?)ECN> : '!-4?+58?>8+>H)D#/\W 8_=S\< MS@TEF0;H5!169YYO@F?.85RN2/:[O<8VC5^3BS JS$/ MDNF?N6DK2%9^6D#CD3P]>^:6%_Z+=T/YB6UJK@-V^RX>+/1FEV3'WR\G_X%+ MV__[A]9&BHKX$CZ^I![Q1,27\/&%?,1?+9*)^'(S?8GVEQ#R)=*7MNQ$7H<."$"]#+!=;O4^:P\'DLG)!1'+QYXL/K+&[DHOXQ7:6UPVB M,,C%\5)_T\8(U[EG:9\KYI\27")?++ 10K;.6]Q9[]L&WYT, =Y_>S*DPJC\ MD33DV=0"9 E\A6O"9-2"O MG].%./]H[EI@W-N0(!'3"%4EQK$LO:QU&YN<=^F$9N(#^4?O20EA=M=X[^7T M:/ ^5RE&[).5^ND8E^%:$XT#5L7(I8;T)#MAQN28@.[*5?(9K^[1OBGE_S[? M7_EJAVSW*.P?S\H-@;"7YK%)=[2LZ)P^F/*4/*X/-V8+"GLB$O9+G9#=H[!_ M/+4T!,(^UBQSW1>[%@?:;*HH9LC>2$+"3E]+V*\>DWI;V.\FW'1H<8*C$L4' MS .2G3=69^3(!/Y7D-1%[9)0W;WPW$S-Y@;BL-'H&&#A056 MNU5+JD- M9>CUCZW=VYJV[$H MNV?I6Y-6!OS\^^ B JT;,<45"BS.BJW\R4D"K&&*\1Z MLK9WM]+ZPL9KW41Y@RX<-M' MA:T(_,6R/ V$+,'XIHU[3/=MPY0+%V+.R6! M)FNXFYSI"UNW*&7<&E/(MCUUT"_1>>O^PE&WC[W>0 MN;[=>4 M*A9FS<>1! M0:4GJ:2=MCK5=,6#6I"(M.#K!&5OH 6W-UDOJ 4%>6CR\86W8!=-+@82BVYI MDY&@%M#GG+M+:$$4K;V\21NG"1W3%%UQ+FNPAF:A^'?+#@R7EWX=\U<6;>.W M\:Z$4J(-7FN#)3!"C/3=F R&FK&+!AONSZ/]OK!;JY4RY4BSBC;Q>[\13W$0I2FR\IL,UF$\M<../@2S+O"P=NOYWA MVN37@@P$M6F9#O!7"'^2+%YOSN=;87[:+VJ8?N00*1#CDK&[Q <.8FP;.'9O M)]7,3JC/89F>+17-3G]*J4K&BH.EJ:BI!C-.7=DX#9E:7,Y>#9E&W&!KOWUV MP<=4XN48:3+=F)M*;VVI?*.4=)+UYM**(]U ,=+32UTNEUL0-NWX#CFS=V,$ MWT)3J#6@4O/11&37XF@Y6V5KM8J)- 5=;7)-DSALFO*U@[,-1P86AEK\Q]QY M%)[]$\/X'J^O#)F5_$=GJ+ZH=Z&D<_-7//U8K*G0:BF68T%92PWSPH!ARJUQ M.@K=AKLA8QAW^Q F$KQ/"9+]LEAMTU2+;?3)1:F9' Q:O 25X)XS;.^A_>15 ML@0VLE9.ZIF>JRK%P2*[:?!Z,]6ZPRR!+VFV?/'8;/"*KNGP6A2!_=T(['W> MZQD47XG1E)CCRD&\CN_$8YJI\5 M?8UTX^;1V??J1G\T=W4BK[78V(0CS ;PQ';&UPWZQZ^K7#?_)<*MT<6W[YNL M3\DXL:=CWK3\"VW7@+>>76R#D?$'#-E-#XFAX;:5E7& M>PUA7$%W/;B^)_VD _6LPS^. M>:,5X[1V;<;2T]2LA==-H3_V?OPRS!/EW#=BJS>J-B86N8)4<("VQOX5$C8>]6\INY9BBXH_H2U#5TH]K>E,L83W MVRLQRX\&3G?%O,+0U_'W@_PLSPVNHJX K=*9!3.>U#/)FM""=LACZI2A4&,U M^,,#!E9SQ8+O")*,+,5T[6 ;1_RT'S_QGNO= =]!*T#, G,+0%%W;%^"T$? MWY5VUV"+"OS5 H8 IS(!C@> X7\^,4T5@V(1]%[A;1"(E7]PZ'^N*;P/= JP M'[$N_ 9J.2B>F<+V.W\=?.%O)$VV8J,V+MMY!+=H(SKRSF=?I7UR,HI$]&FV M+]RB;0P8%F]S7!;/2ND5I772;-^3HENT0WF+=C+QB">CVP'/",O!]]XO)Y>[ MM9%XC"YM#"%;XH^)B"\AY$OZD2 BOH2/+Q&,A9(M$8R%DR\1C(7IKN:MB!+_I9H0KOV!_:O;26=7/2VE]R!9^B\N)$Q$9 M=OH?]M+8SZ=+I"21DGP7)0F=&_FF"& QK W@UY8H5\/RTT:=J:MAO""@I"S[ M[FSC;V(-_^O+6+2OI@X_TK^;//S;26^:X29ZBI&>J#0M)DEIK!!K]BA9.$9^ M(%OM) L)_K#[;%O+N55 E)_$"(+EPI?L>S?D32NWU4EFJY+[+#=RGU1,4%-F M:7<;'-ZGW.6TT2%8)L.,$V/RQZ]$.GF-K.)(JR.M_C):38SC7J\VZ],5AUT, M&3.O#/'$LLR$6ZLU:&-R%"P]-DY*Q M! :Z\QRS FI&_L@]^R,7*Y0*I9OQ;8V9W4=G(,[II=V$,N%6JM*?3Q*N2%$. M0)=?0<.%3EW/< F9X$?Z'^G__9H]K^C_8BYEG?'$*N($WS7*E2'?J:^VE]_% M'_#$:W7T7S'84H<\7D":*%,%H%FCBX[-N5\L&OED7],GNS!H?2^$NIB%XC?3 M^A@\05UL[52Q@S2Q,3^NVGZ"J6FOD)RLN%J=[2P*^8Q*Y@2MAJ[<@F8*1:2C M^$JDRY$N7\S:N*XN)Q(IPV[V2H!;F^N^VE&[Y07N05U&_1=2KW5@N)>HRD%% ML0,L8%_B.J_(JXJ\JM#@W+Z[8"36D5C?CUA_D>W[Q6#![H.@G MNL)45.#BE"KKV4FQU-K>SO1 DZ_% []B- #S(R1P(P:!01/% /X$GF['[JNR*XK22&G#@;)WL#;WKZ#7][>"9D-[[<+ MQ\YU. M*-B(/[MH>W,T[QWY.NEL85QXNU+R^%54'SAD$!(R235IF2U47C;[9 M;=AN0C?0/3TD.@%.IJ_223T"A0@4PKGR<('"]4VI\Z!0ZTH#(T7U\BJP\ZE% MC&@X@P&ZMPB:18D'.OF:I_3U D$WJLG[7DN^_>'RK:KM[J.T+I+U2-:_BZS? MA6]_U('AH/-"U'@A.I;]LL>R(>!Z)/N1[']QV8]V9GXX)7M SCI-^O?X#29V6 MS_P=@4@$(A&(A/9D]O-!Q"ZN8C5M.4ASBHJ+-:*4[#85#X&(?[J;CM.O@WKW66[B"_'PR'^ZSQS?FR%CB).!OZZM=2:!Y?7,7D^>#$TJ,19Q7>U6 MELW&1IYHT%1*?(*I]+W$/H*"" ING,OV.A2T"+'124J"QA$\DU]66VMJ0[80 M%%S/X F9FU _O$7\2@90R)8<(@?QYEFM43YO*"#P:M904-%]#(3G,WO=_"37 MFM*%OIKUXK%QW@2=9 ,Z?W['Q\0#1:6B"%($$!% W)F-]'Z 8'@C6TF(G*GJ MO>:48 ?*<*Q%H B$WS+ ' (NFMDR6ON M]MQQUQ<=?@']BEID6@ZPM#4VX6W%?L1*!GP\_$17#*B!_G,LL' 5"^C <>^. /E17;,2T$%_Y\YI8Y X*#IJ$8<)3"HW79KN;8& ]G"17$5B J !'. M7S/A^SS%D=%#,1.M!>.7O*(A*<.">Z:7P'^N 23_6FH,DA%R5@"/@6A"040Z MIQC!['YM[W0^N+E:T !O(1"3_SF6&1+QYAI75[]XFRJ1V '/7C(2R>?W4?_/ MT;7;>U2-":9F6C]WT'FPJNUUWX2/HA*(!;=Z\U/XXI^\YO%K>[O*5.J12.P\ MUY][^$5TP*C'5.K?V-./B!HGI-3Y5>R 8%O,CFE@ZOP,OK7[R(?;W6=O7"V^ MY8ICSC^%)2]H*_G$D__RF&PA!/_?;B/[#':"YZ*?(0!"H-:.KH/=?O3C5]>7 M8*B\6;0A^'?]; &(_W7 \)?$])C,Y^CW3.X#A)^,):4\$ TPSZNQ>M,9M:J& MM.Q*8S24^$1B'D!?%V)$UM3AXM=^Z[#D/S9&X/'T%BT4B"Y3 .41X@3"MC6D M@HW)_!)!(# P03-M(#YB!X_!S#D<[L I*P:FHP]LQ__5D:&F2++I.CXRH5T; MXE G^"-\'40<&_%D=_LY1L8?,&2Z!TCF/\7_UT5?@ ,U15<2 753$3L5>C#5F3(R)YR.%12,[7R2 MG[5L>CX>]^9X(=G5$TK9+E35%AQY^OIJISY--^?U,JN0:FP%"G1;9J4Q.<:? MCUQHF?)F+8]YM;](==A"CBC$/ ^./)EHNTDUC2&O$FQLP)--0&]!:@1+324?CZTDZ-H-J/. #3N+%=;9?D*PZ ;34Y6/Z8[ M3*,,:K+:,:VJ,Z_I))- (T]6/U;)C343BWT\&Z>SA0:1JHFU%AQYLOK8N)3= MR+.DPW5BZ9R2&RQF71N-/%E]9ZJSF:J7E_&./)W$"W63C8T\.#)^,M$:'IMD M1$[D.;H3+\FC9*%:7Z.'GA**UW+]#4W0<;916\V% E?E:AM_Z FAZHG.4-:[ M;DWMJV+?%8M@ SN* T&CCRA?IQF"9+ 6ZX* ME&I6J0T6_!3O%!31I7)(A^/=]'($^KG8^EY75B7XAQM MKIQ53E=8DD;S/"5I/I%NUDAJS.#9]52.SV*3"#3L"%W,W=-++#*7>"+6A.UE]PLWTY(G2R;/]=::Y MSJ2FW;*"VCF=/%,7JTJUQ%*L"CJKA0IHA]-FWCA]YNW#U&I#]453500\GIC9 MIAUOHY$G%)VJ3IH<@&X+!ZU2K+K9E,2.P<"1)Q15[72>%PN9+M[@BW/#\H2, M+**1I_*<:_(0>'H\IV:%Y)C,,TW.Z:#2ZU/B5[0X/5LX,Y=3\(Z6IMN]M4OZ M3SV59X+11':$(T%I=0I,(?3[EE<"#!+N1!G!V%SWS@N\:HL5B$]=6 M#/1 :'A,H+L76$K;ZRVWGBAT7;:/W;].!XX,?5_X[.U0:/$\WHI47>1 0Q<< M_G/A^,]SW8H?Z59\;%,U#W"K9IDK,+U6'C>\KFD=QXNIHW!0S 8""@EYT(&# M/'U)"TO0[%0LY+M73?OIS(P.]*[.6];8]=+U>99/:=S"4]QR5AL2^8'WX]>5 M*4 <48 82]1BF&T/&B6VPFC+6:&\-F8IZ5,HP-7Z_;HT;G7P D>J4F[4J/?; MTM4I\%Y\_00*.'PS1S%=";#939K%2Z.BONE#"ACFF08@;WV 23O$4?9OQB#N MV\!^\G\"0$!0$#A. $*#>,X;0\+A RK2DYLA0P9BE8AB9D%$+(AA;0'Q8)4( M%VU;]S$6_E5Z=4. 3I^%N(G"7W#"O!3$V*#(")J+J.$'!,^#\',O>O\FA.I M#!!>@*Q=(P\R^&H0(@P>"1$.1> ,\W#VBB$J N^8EATXGV@*YNF\;\8$QCD5 M$']5SS\E#FF$R;R(_2L$\7SJ _'\G>Z>U5935EDJM7!(E:@T 3-(C=@Z?GF\ M^IU#S8NML=C&!_(J!VIX@W*8(:NI%6LLH1CIX^G)Y2D$06G4$ D.E/#3Q/:% M0%<0TCY% 3\*;N_C.%,3Q=31\9<_WVN;ZQU!!J*K@<8TKZ 86559@A/#W8]@ MGMKL;*OE#.4,M^8ZQ?FHY'5&A>;(NY+-_DD'0OZAUC[B'AQ:"I E_-P&/W<_ M',Z-AL_>1MU1K%8(8KR[XP4_',Z[CKG[( B&^Y\]+6"+Q1_+5#.V# /3!\Y$G,(42N:/:[O<8.O7]&9PO( /DS=#^EAG^ MBW=#^8EM:JX#KA+G?W=.P,'WWB\H!ZP M\@5_M>P\XLMM^)*,^!)*OD0X%E:^Q",[.81\2;Y>N=AKI3Q$FV:T:5XD]G++V,KINM'//Q4'3EDM4NS:AS__]V)!E/O)!(0R$-#&;Q?\]U=QL"\B 9>*H]R/-# Z M:A4?"<&WAH3K9$!>UU8,C2C$X_^P(OYFC$*ZKS$LGMP?X-^;NKNSU>]=KRA+8%S.+0T: 2_O'G[^Z#]U#?N&@ M0"A9>A0/^JQXZ/E+ZK\7&9*W(L.'5. 6XA%IR3Z1^=N3P<]FCI3DO%W\[:4C M.%K[]F0(SM,/!#--!MR8+ICX'#O@*Z0F?'72]I8B2)R+Z\@6[)_! MV]O'-O'TJ-B=\2J7-1-5@AQ6.LF)='H3O.A:*#GJ^0V_K\RF#70>_M60#@_. M@G*V^,%=S/2Z-BKAUF#*9;E6HS^IQAT:2#]^T;M[E[?4^X7YEQW'_\'^D*K\ MZOI4'13S^65W)MDG"N$I5$IWV:!7'&]W4O"&T5U7>\\;TF/KQ M*Y7$SUQL'VG^;WO27U_S/[>/2J3X?Z[X!^5+A[O_&2A@U[-\OH^7DWB?HMU. MNYC(:$,&0D'JQZ]D.G4E* A3)=0WJ7VZF/?TZ45,$2#\.2#4@7-&^Q"R+3(GO#9FLD2%#YXW&H_42D_/>B_!?R +Z9(4!<2^\EK9TT\8598PLC MHALKT?UNO-;Z3 ^@DE2$+IC-698NK+/E+IL%XV0+:7[BFB[ -U3]R 6(-/\6 MFO]^%R#%MNOI3*Y&XPV3TB82O=*'%>0"Q)/0"HA'6' W9L"M#@@CZ/A2T''> M68CK2I=WZTM1K8C:P*FW!\6*B8*&!/[C%_0M7X&)+U[TLCU:=6TX16!AP=6# MIF'+RCRJ9]H1NK=UIBXS./"M5: MO]$51@-;7=-2@FR;R=Q(DG[\(D-_ /L:6>VT+>+S1LSF"G5.6X,5C1,9[Q/) MVF!FXX:NQ5-L;+;(5H;SE-=FT DL<;43V)"!351[=?$0;?A*JKY6U/8UQ&!< ML6;PSF2HTLK&&.8+9H4=>Y\9OJ$LUW!D*S%A.T.CFS'7D.\N,TZB UPR_D"] M:HU%V'&'"=(7Q([PY3U'T''-^,^HEZXJ4[J?54'!S%AZ)\,+E18$DQ2T09(/ M<2I^O0A0R+0H2B2_QEEQA"9?'DW.AX3X41Q8RT2!8OE:;2#.9KTN&$H0.=#Y M<3SQD,#3$71$T'$_58I?*YC\&G0(?:+L3H_ZI2:BZY?#S M6K.LXCK=%=99C4E7,CYX)*[LQ$3@$3DQ$79\!>QXOQ-C=S;#5&,\+G,=<3A> M5[J,H"HH(H(.L9$IDHZ\F,@4B;R8;PTGY[T8I:6,!\7Q8J$"@QW/:*:;70!D MB/@'V\D'G'[-B_EZ-<+,Q%P"#(Y0@8-I@+^K)1\T6C MZDO&5D=!HNBXS#B%JWIK4TL/"YVF,ONDLV>DHANVVIL)<8\#5;4QK V+H_H2 M3F=,0-R+GYP_WX4XW^Q0]';-=S_]A/3&2PW3_OZYN/%Y88:D3142IDH7V*Q; ML#K*8ECK<@@ZJ!^_*#H9U;I>-)[P/;"#O/U*(^BX192!CSNJ)$ZZ'.[VVBVU M/?8\JH; )/7C%Y&\%IA\TTSY6ZO89\86(C2Y&S0Y'V2HUQ8KJY98*BI-TZEL M*Z]-C!1"#G142J2C(IL(.G[SA#2"C@O%*%^"#KNF:42=L!=XG\J05*TWRZ8S MGYKN:?%DBC<)C>0:HNR.BI-";6FU$'@DKNG$?$/PB)R8"#N^)G:\WXEI G,P MZ9!= B]HQ661RS&\6_;1) E-$3)J^Q&9(I$7\]WAY+P7DV^GR/G,4>8X2->4 M=5-OE.BYA,YA\!^_2)*Z]QK@KNGP&B0&,!QEJOCWW"G/[\*+"FTN!:"A+!T. M 5TB\7B]AO-X'R+A/B2:+E+0,.RYEVO&&\:5AVD+)L>:X29ZBI&>J#0M)DEI MK!!K]E/[;)G+#M]:XDZ=Y<)70'C.5!N0=4#\+#MN0RF8SJ'")\ MN%;WWS"N/$SX0(SC7J\VZ],5AUT,&3.O#/'$LORI"8_TT,XP%;D+N"R]J+?; MI?YTL/01(G%EGR-"B,CG".'"ORM O-_GT.:384^HD 4., ;;$TJZ%E\BG\,O MGJ0>$B09049D5$1.Q]UCQGFGPQU,^+I&EEJMKHR MP/@#],;,Z>F1(V(]YL@@.,]'!7@V!@P1B%@."/[),4;&'S#DP/K_$AB42/0# M_- #%L#^=6$)SKF6/]MQ?.R+<'S<-9\$.CZVJ9H'N%6SS!687BN/&U[7M(Z] M:.H# GVXO36FSV5Z+]#T0=/5KK=,UO6>6U0K27,($I.\)=2E?:'EM0A!'!&" M&$O48IAM#QHEML)HRUFAO#9F*>DS"2&6I$6JW2\76#VAI:PF@/#!IAB0UV&Z],TT[-_(MU, M!-HTH[\%U60+@+-TVVQ:3"&GKD66[D_'0WS4Z^4D[QUT2WX'NN5-USI+ M-MJP2IS8'6]P6AT.J^*2R1<*[R%;*O8-J ;'GJ5:8T4EN.2&*G -K]<<5]3! M2AA(KU/--^*@U6*BKU-0 ../ MIVU<]KMTX*T\\TWXG?\S!"NURU/=&,5>KF%N.;!D=3)R"XY MCW?3J;CJ"LJZ5"@U^O,&,R9.WY[#%3$S4E3+/06*X(69U>ZCRV>2\ZP+-)#PT\F2>>)*8#A*B M&>- IC@"Z3%92+#>.''Z=L\TC%EED;1QFE_*]B3=&'O^O9,G(T>]MBZ+Q*2* M9].-4DL5*C@H>N/DZ%W\7D^,EGOXE2;B279 MF%/1G&0\ON97V^;I_LB7>ZW\KA7[S#@5!-,U'+O)KY%3#'^U7"!6%=YW015@ M,X;80(I]\%%.L07-M*$EF74M"QA.%\XIHYF"NO72)V.Y4K0+58)7\#5+T0!T MB6QA"5\.H)+,X>L=^):+!4C\7SV 8B,_)Z8F?LRKK9L.P-+[:T*V%-@9P[:/ M;":B "8$J\6T)U)!Q(.OVT@N-/@"%8+;FU"COK'UH7Q%CAT @XC M#]<6R8X@ ]'50&/Z7#@-\50^N^@OIP+8:./+LMNB1YRR6-N]>JI$R=#2O(X M?E+(QP];[1ZS#4L*D$'\W 8_=S\=#=7YRS/_@>^\7D__ I>W__:.8./%(OGI+8,27V_ E_D93 MN(@OM^%+^I&(]"6$?(EP+)Q\B7 LG'R!.$9$?+D:7SY8?AI8QSR"M$,!AQ,Z16)S!;&Y M,ZDACLGT6V!]2S#^,,#^I1B8(YNNS1NB_?<70]M/:2GREIUZ,RLD]0$KY*J> M[:7U^.U6!\? %@EK)*SO=E_"(JR_YP>$)45]>X''LV.EBZEB:-9Y1J8_*17_ M1AUGKIUI'^PE(6NE\^6K=T]/1K>'\^<: #?+\=QH8W%LWQ[1.B^EW>X Y6:0 M/W[%B0>"NDI=?Z37=Z_7YSL!?2>]OGB!S$?T>FR.2A7.8SB<$):J,6YYFUC, M@WI-0[V./]#IU_0Z;([NFZ9'=JTIA@@L2%D_3'PYV^,[ M)=]/Z\NIL:.KRY MN!V1"Y1IAS?KE]%&9OOMT;1&3]F"+)0KW;17Q?O2..%;$DH=]6 M0Z_KFX=.0R]N$7Q 0UMYN5J*M26VOR3:ZQ).F4ZG!344V0/D TV>JR:[I^C$ MD:JB2R%CRBH6Z.G/HO^_,9-LN,GBN+?!*^OEFMC(^ES.2&>C6'^4V1M$X;>I MN6>S=?WNRI@Y@;0-[J7= \AE(_*AX5'D@5W/!OKF;MC%S")9M(V?OF8VGA3S M9<1MJ".ED]JH$M=P$C5*,)() )@QY=M$#ZGT57J71&K]/=0ZBJY+78*?+>?A.7OL/=*UO; M([I[Y7KQF>?%F"^#EC/K%NG!G!340J*:U::$DUTT6F/:MT7H*UHBD7K?KWI' M-]5?-[CS?O5>YY:=M IZ?=P%P^*T(('\6D>%Z] F2>,7O/XHE)$=__:CR'>Z MNN]T\^Z'-\M&N?G*PX1SGY"N57LT)U!:^BB)AS0 MJ"'C#Q1YE8;2$4I$*!'=C.FK VTC M(OF0QM\\^-KUB+U!@Y#C(L/?;Q?RO(74EVYW&Y1/'A2)"AK@+:2W\C,2D>BI MUZ@2?;',B$CL8&>O:(G4\]+/_SFJ<-T#"6K@8EH_=VAQL*IM92WA X<$8D$! MK=]>[2>O>?S:WK5@23T2B9U;]G./.(@.&/682OT;>_H14>.$E*@WS '!CGJ_ M!-\Z[OZR_>R-*MXM5QQS_BDL>:'1$_G$D__RF&PAU/K?;B/[T?K,A MU$TI:_JM=)Z.:/GWB.DQF<_1;]\83)Q/M?*PQX_8CMANFY.(\TV 5(#XJN7$K)<>]A4B#B5$-J MXL2B7S#;7"^_P,^V9$N[A:)<<FDR4PO]RJPB M#5.QE-TZUXZNF6D:Z24WRG%\?3TPA]5&C=XP@Y8A.NC\R M4N,BW41W*I\\$Y*\4A^+"US5)1?O9 R"&6W0S2ZG/)K,@-2D:(Y;)%9$,25* M@IMHP9$G;V^SACE;LFX=;UA.MM =;,I>&RK+J,*,7U#7;R0Z$^2SJ:.9UMTN4ZKU#HS M8M#0DZ<:P\K2L"EIHX*8RRF%(AL;R!XRA4Z[ 2M4*R9J' MAI[*?KWB$CJH3MA*G\\[79I,CSC_J2<3H&+U =7-3FDNVQO(0JXS)^BXA(9^ M5D/"')@X3PT&3QN[*;VB76$&@LT1$BO(8HO"Y_.M6:H8T%ADG%?&C=&P>&C[ M$ :1VCB^ZY_:D4W+B<$=7_?;]6DFW(/]WT1(I<^Z!N"?XT:"]FMS.NT;^*D- M Y'PO- 04$LUE_1\RHQ5.MGK"1."8AHQ*6H($_'X-:*)&6G?&EZB15CCY M$C4$#"=?(AP+)U\B' LG7Z*&@%%#P$LW! Q\7#+^\$)SLI!FH/W1VJ.&?M^G MH=]7$9([DY&H?=]7:=\7^CYBMR^[OC4%/J>?0I@I$&E!I 6?T[/@$RCPM1._ MSY#"-QU$()C!,=*S9)KG?]44 _QT4H^/W,VE$7Y+W#]PCUU0\;[2+*OL3E^3Q-VZ,Y% 7U*@ MP^?)O$.@OYP7 _>@+G)2-!.*[I07?(F%'VY;3MV%11CUH0D#3;YB/ZI+;UC? MB^.1%D1MFSZ]CZ1I2&A#0]5'VWY-=> TIGZC O3AXYD6!>*LD5[,]%Z-(YS) M4#>H!3%/>4'[IL0#0>%WV\ I>$7'G3A1#Z<;=&<)%QI>O^WUK5#+R@.=%5=O[PGEA6CW)J M[N? ,KHB*/0'EN%B7R2R7UUDPW:$B?TV0^_!NSP;8HYA!G!0"Y/=W09ST_+- M"?C1F=8JD?E]KZ=%W^VNI!(BKIO&V2CQ&5?1I)GJI%C/ M5O'U0!#T=MJI51:H=U[0QY9Z]1:/+^W&=618WSIY-3J@ MC80SM%[?_6R*><6RG9)1Y6VGX<+?-//$6606V_1/2>PJ@#2%B4\7@#<'/YC5MU*'3N,+^&3(JA,C@ MO_4Y2G2V&KG!D5:$RTV^]>H_%B?^ZXN8#$^'J\'.E_7H?S-]?V)&^>&[5MX2U;X)A M48)T)-QW*]Q1WO-U-^-G<6WAQ:2GY427S65B2'%\U5AQ:DL?Z:9_7PK:@5,/ MZ=3]WEA[*U6/O)3P'M9]HQ9$X2)#I!214H3@J#M$J5NW7*I_C?OAE5+G>^U% MEOZ%+/W[O)KYQ(4-_3W,D0\;2?9O^:^AE^POYL BQQ4YL6BS80S1;Z&'?LZ: M^D0Q@,CHT"PXY]"N\925Z1A-'6\0"5YTFGASH;7039FHC(=\(,@W'=K='>-? M^F+N"UZ=>50<]*&[,Y]:6F6#EE;Y; M=CA#_XW87P??W4[Y:9HVQF.2RUN\X9C6 ^9?X !$3(&_PJ=BC X,$?Z.7M & MML,[\)$-]P.I^)V=H M43*V;0J*_YM/%E[4%4.Q'-,1 M@VP7LCCHFA8\R$8ODWGX"OAEG5\CLEO O[0=FP#!U.&[L3EO.? OIL^3UY;[ MB'5?&+'OFL,?T-?:T1<]=VXI< KGGGK,(\CQW8T\6#R-I#6>?KR5VG ^,]#T M$0;[U\V^1:- LO:82(_>O"6]/^\EIR3 1[4]=\ M^MFV_$MH9Z0_L#,V+1.ZPJ*=MTP= MS<3>366_&=+!9ECG+6N,STKTC&K/))S.R^-*=5 #$UE"65DGNR &!4E#]/=JPFT4^FF //C5_(5*>$14*\#OD$BVQ#% MT48/!<;:[_I()NPCH7BR"*KH;WNY@%+%0YE8*;JK0_!$QMU6"-"7-6!#%$// MOK1(!';LNV5@BWC0(MUMFL^D MFJ0' M]*W=-OIG@D$,YB/1*$T %Z-8WLZ) M74I)_;Y@G'M[+:![ -9H*3QT>N#G9V6E*^%U*;/H+=18EQR;O66Y.NZTWI 5 MJ/7\5MT1[R>\#95=AB*DV!A\A>!J_@:)/A?]5$G(= @P-F(G^L)6(K;[SI&A M%$_^@P&XCRG(][+@EJDLD?EN^R_=_T$QE@!90FO?[!"!+5C*Q-]K_V"WW^_< MD VF+U:\8B##RX:.H*(K3@@DMH,(CIB.].W/)+$ZS7?B\Y+55SM#3K):N;@S M3S&WD\1Y.S/JQY3R3'5+A3@U&QBMV0#N;>F7!1%.#K-]$?2;ZP;XA 3E=ES: M,P,@!W='D#_CU#I7P4N-2=SD8LWI@JI:XR9H_[[)\<>>>;4^UH2TI^^[.)_'P@[P8%KJM)!YK M&_C"394SM1'?J>2.\9OZ""\"FNPFT'@"R6=$6DKV7( MZ#-,![I<<.C. ;B95Q,0S'[R1-R]F_,JVONF*\!.NHZG)K\ MB.W?(LCP<7 U?C !?C('@H,H]1 M?Z*__W>T.SLV-CGO!FZ. MIE3PWHS1&:[A5>2EJS&:RWN'L/;1<&_)L!W+1:^ Q%7LSAR*C=@P>M!!1Z*$ MB!W?HUN,.#0$-*,P8[EFEZ,GU+JCM,RT5H'N2_SQM.[HWP_87\3?@20"*,V0 M*5,HUO:67YIK7YP?'[38WLF '.-U$Y719L[RG-BF6FXS-J29CS+ +_@ZICXC MBDH0KFL""]W\RDN@:2H0*7<:>IX+LVHK+RM#8*%09Z,(R:),Y]0P0 M%\B_H=*"0/N#$$*GD6]_)1;L'G,HH@>6-_(#@=A8 LM YS/Y7448&K9]@CD2 MX\,E-5IR%3>33N5FHES1;\G$3I_<5*8,T54+HT1[U736PV+->U&5_'!.XN]= M9-,/!>@Z?*,"]0J%7A&X^IH%L>Y@KW@(V.Q'@B; \0 PKLUS%/AK\X84< C] M5E,,9,(^8^959:*):)3=DZ@:4 B-:4Q/+$<'3SDI(R=UV *O],EV0@)T_B=C\&\YSOE5;%+>! MV 5?$V T-.3A1@EM5/0YKVC\9!O\0!B0.361?#0_M8Y\*VT^UQ3!-Q#]44][ M[W<"@_=L$*,D8Q44*Y'&=5Y(6HU^TS);K1N*4R,ILVU[[2PX>E$HT+-9!U>+ MT)4D'DGZ-AAPAI=!;")LO,SDK*%'LL'-XMI_HR@WB9.L?+L] W1H+ON,%<'B'5^>CV%<,QJO5$>+T5JXD9.YLB6R$V_K-MOI=%>M! ,R M[5$KK$[F/7 ?+-CVQFD)<]:-::(\;!1H,7U+YZC?++5@T24\W&^NZQ_RGPJY7K(^[JY& M:F>SEG)+I:6J^HH5%FN$ =94/*&RV[2^_&+/J?TKSM#;]@3 MKWM&MQ6B5U6=,<2;"]E[L*C18J;+G"'/5&#RR7&K(V?*DUOZYK9!=8W6(J.S MP%96&2K=[4P"@6!D2 BX_ M]>J^?.T/'L].Q4RONXAO!BQ8%CB]0X(Y';^E3'2-G,:NE^Q8[5L$EU:K25Y8 MMI"1<29S_=\(6^[+O_X@_V:=ECY(Q8@ERT_B+3O+QW6Z?\L 2=W65_H <"1; MD'(3,J46EL.RA_AW-M[VY#F* )F(J+AAFP?ESK?.KP:60/-3,;=.]VM'F:)K MH?^A[QVFV\Y1:I0_(#!'=<#;"# Q7D))2TZ0W>N7_3U_NI^HM3WT_N!9>7!D M_;R0XC^BLOSU7_C/[BA;T !OH;H;^9_CB@<2'4!OBXMP_-]7*9X1_+SKW?$W MD=B5#>V/OQ/I8!7^K/U__^=P\D]5JC'!U$SKYZX Z&!5,D![TD_"KP620&P" MW4XUYN>?_^0UCU_;VU6F4H]$8E=<]'-?1(3H@%&/J=2_L:2$E@7SB MR7]Y3+806/UOMY%]5C1S4+1B(,77@C=Y 0^V'_WXU?6M+*A5681]4*_WY3/\ MKP.&OR2FQV0^1S\H]0A6%>MT<0GDOXH&P1-T@#!9N,;N@@&! W2($@ ?E]MP"Z-R[=9CNM3 M,-^L,NQ?:I5>R-YS[5 MXL#]TW;Y8#*>K CR\2K@MW<9/[8[L14(O!8J)@JR5'RF^KAL0NB$O^\V%PC- MVS(= (GDU_KNRH8N#GX6YXT""9=OV4$(L>?^2$0G+X MM3-^HA)Z_ 088*KL4VD/7B11$%QSAN$DJS# M:4C^LU]8QUEK>+ND!Y21NYNFLHM';_D$MTU'\=G@4]=_FF+M7#>_*,FV@0,? M$IC5OKO_E&7\@ *^RCQ8-YRA'^N#[T#VM9^%_-?3U]"K_=*O())M0NXZZ[\? M#G.3]P190[TV!?4!ONM@\,,9&@;3NUENV)LNR4%:]+8G+ER08,(E(^9:B'Q[ M@V4G*9#E.J_XW_/C]Y SCK\(/? 75VRR/$%$U!&+3UVZH[ MXI_--5V3N5JQD6^TV7YU6E,+Z\Z0KT.?]N7R@ =$[ !1/XOD[_5I/L@2J4ZE MZ]49,<*SY:YD-YKN:E/[>(;\'["D:V9 #FKU$HBH](J3HQ4M-V.<#D:-6:K>'@K/8.#='O!6FA@)[N70R !< M0$_D!KXI28T$K25422RI,;7=9#M"==FMH,RQL]E!>VF"VWG 4 ,#VM:FG*R/ MRWP0C^$V"K=".["1]CNF?TYL&N"I-NBXR.CA/1L,M#97J/K9/Z#&D(X%3C;B M+/87(K6_':#$=52(AOSARR>HO'V8^YX8VE4EK9.:>OEZ6S3QQ5"4:CUZ2;7' M1Y)&O%?0?(H'!+=W!/?IO1A7ADFO M$1'[,',NL9E\C#GQ13U33Z0Y#P>2K=6K#8?.;[Q/8$ZB-YHDAS.VAF &S+:X*G0 &, M(:/^Y-5_GUV#?V1K"S(070W.ZBGE:.N90Y]NXJ)G[/RZ,R.",%#@Q1X&9Y^' M5M_GI/SM3PIE&VF:?U?F-JD$^HOHQ"Y8JV8*ONOI-[-P^!6PSU+V=,787]"] M7"KPY0]!J-??(/D5_/HV:<5W=^%C;!E-8+(]I0R>ZX/Z/N"5J!I[TZ"D2T*J8OHZL?JX<($!0+" M&ME!NT_]MGM3]*;GI\CHNTARD1]:.6'T8K?(KT7<10^.T>'[G)\%G0LG&1 5A M =)[TQ<22,,@%H5$=&[M[C?:AJ?\ROZC0^=== HL?1V!$@^EG':T*124 NJ MIXCWMJQYW[,)@1]:F6OX.@:]@[D)H?018]!#H43Z0GRH=UOC")(?=7K"^/V1 M\=<-&7ZD%OWLE2_@? EZ9]:4W%:3$52>32E+<4-R0I)YHP0] (_S%ZHIYX^A M]K*P#2"A+=L\-+=OW^GAA82(+8_4N3R?J]($9Q6E[0%*&2:,V>?P:&(G>E5A MX1EY1"H] M33/8U5P))MOT3C]^39$=LP:\]3R+(D@H M?L=IZTWW%V1 *$ZP&[[S1,:#@H4\-&A9[PT;OYW$H2-UKA#$.>-PN,OD O[X- 1XO#3TDV.6" M0^CMM-\]8_\!<)I Y;_!-LT#3C]J:EI0323WUI4!P85VBNW+M'^3\=G@\=6 MT=S4ICC3MWI]?H9CO>T_LGFAZ93!B]HV)$""\!^%N M%$(.M80$,@CX]:=*!M]N!AK3NMC9;KJ0JK(RG\RL2@/8)*!; ";>C3W\S'.1 M=RJ&*NL-[7RGL^OU7?\VG#8CM_ ,:\M?OP MDV5*_[0:ZZOUJHMUL'Y8-%6VP!SHG M^P\(:5VM9E^O(_K7T1MVRXC^O5E.4&L4EO^$^^AYP_ @Z^0DJWY,0?B06RO) M>4S-@T*<7U.#\Y/9*'#6<-('IA!EC^)H/HM.U0;/M\N3K*:.I=\O?; M);Y1,FEJE)>-L2"CZ'317IH8M5B(,-?]1#^DC2FT&R'$O5(5<[-!6['R#\TF MG."50+3].!48S031/0 >H'R '_)ZP:+C???S*+VP[U/W:;!4T^I])>77K_6K M\TFA$QL@H [A9?IK#QN':]4P]=W=:AW:&16[8G78K"3FP+6* M/[]QBP_Q8L.@KYGMV_#=W4#&NPO@A_%,!O,1U GASVPP! M>Z*80IC#'UC?Q/X9UT%-/S]H-/3W+Q9/DV*]OA($].73+('ZOUR\>'<([6$& M\H L+MMH F/Z2Z-$9P2;?RFV?AO2VV)X==20=CLTGD1UAM^9$WWTWSQ>YO;3:I,Q+YH<^.& MJ]=S8MQD^D.3U?MJKE2#)VW$<_Q-E;VYP?9M1B4\"N>VE]PN,!\A*DJ7*#Y\ M!_M [<0%-*1-&NCKYA,A&QB*O:@INK)@\+9KEHK0VRP-B^OMD/G"FQ+=\*;H^ZLNK["J&QNC1>IS4V>(8 M]^HFO&V@^@Y"&"?BN0W !;F/8ZS7'*)KGF.=PG*P>>;*3[N!2*Z#-Y_2#;LU MT[FQL1"?#@]'\9/'4> S/28N@^8 &X_#\D]M@F/@7?_X-;J==I=/J#OIMIQ% M;SVO>(P],3,9$"YAT(UF7I\MYLM1 Z?.)))9('FKM\M"CZLSI8NURB6TGQ]T MIY5.;QHKPM(&Q%N7>??D'_SLF^U'-R)!'R91V 8Q!<>@QZ<\E[0C M;G6#=V6J[9]_93?W/4#;690N>/MOP1._X%[UY#X/>X55ISXD,+6@,BFWFREE M5=(S+UY7?MNC]E?/U6"DP_;&R3\RL_=5T)O?AV%2MF([_G75*P$7(=CZL0_; M"+Q]>S^XGKI@],.&73 6VV&7L/?@G_!+Q^VX>-V>+9A*MMG19\DIG?D#?CEE MDOEWO0H?(,11^8!=;BEE^MV)_L*5F HN:C6M(8SQ<@N>Y1U7Y#OI&(36TDX9 M +_B^KZ3CS\=NA!>\ 18I^=;@Z=^>6>NAY)Z72TWN5IYC-+)2GI93Q')>)]^ M1^KAUOAAX*]"\75;E7R]0?/QV)6<1*A3>E0MHC&T,\]81=-9E* Z?9?@XM8^ M?=6K\UN4O8&G-Q'$!W7"?F2OK^RUW1C2#T9A^'D:FQ:$!.89^<0MK'/C7.Q$ MKGIK7FVBO"QQ9\6>#003%T(,M,)J)IR75NC?D 7!H6-Q9;QRM1[$:^[&L889 MWT /ZL;4#TP2P@8?KL@%-US;STQ1AKVN-F&MIBB9BBQZB>Y ]OFPMPKX'$#Q M8;2A#D/6IYPJ>I'@P(ASS"" &[;2LOW0F? .HA*WV>(0"T$]/ #U*\;(!VN M;BQJ"M@#:W\Q<)/@*3]8BP7(9DDK[_CRL.5*8,3ZP3AAB0!(04L4O>\'"_9S M50%]H-,8)GM[AG0@XS#/?F=[@D12[P$P)/J#56\02H<)Z+LO"B%\AWN>$)A' MXJ45PA!M+X\@B!0) MW$V?Y?@)I+SW9]YW"8 L..(.[!V*0GL[DXXBB/_W?[!4_%^D(YH+A??5U#^& MN(,Y4M,8*== U' _LC+( X0S?? M%^63DPV^L=>>)Q R*%.0QW3C4)I./0B683"\#G7F1H(T&+T5LJKE\- ] QY7 M$!EO>8D@^V(,5Q3PZRXQPND%D5]>ZM,. X7V6CALIY72EDD-+S1;G-F^S,# MD">/MEX-A1L].,M2;;J#4&#SH$:]<"/ MVVB^RQAF<18GH&6&;BRS@SIE&\LLRP&\ W0\U>DO:*5^G$(*G!)^(O)JTS1L M/Y8:_"2;7)B\2CF3O$%/*C742>7M;M*A:J7])A2?ZNO.>,DYP,1Z]6HDMAAE M>BVL5$.YG(76NODXT;6\ O/QMUI,>E!5 SP@ $7GM9W>C4X)%HEL5XD$R]Q$ MB36;S4UDV.R@!,Z&17T_V]M^_P R#,)](S[YIK?Q$_',.W=:\/\[6\8+O47" MQ+41TY"+Z**^)M,%BO*2L[S09>LP=OG),U6=D!=\L!P#=;WU8[VR[9*7F!]6 MU[U,G<,;W9C7\K:]70(B]LHN[<\]/&J -5"]>W-A6\OP=/5"F^LSLRY!N6JG M7[&<=B TI65![B=:>E_E7D:K=3D6:Q$, M$!I$5\*:X4=R$YP0A"%Z^C:.?>.Z[F4KA:> V4:OE(MA:00H,D$$?LJ3E\4U M RZ3YPT$!K.':_NFB@ 4'"(;A@ -1O_@6#3](AW[-2H%$4;WPAA"$[E?; M,@W!X;>YPEO[Q53%X+[4+^DA.# %V$M=A:;<01@=&QJ8G"/'>>D!U!LC&+S'O)M#Y+V\_U=2_\";]CRP9V0;G;Q1G4_^RL(%P8DK MUJZ#%3!A4 P[G(B?$+Y+W4U>/_3PO0JFT-5Y\E.NO2:DNKW)T7Y"8#B #.NY M;%4+7*P-/34OUAY>1&ZJ;C\C[T1'84<1+[Y1N+NNGNUMFU7IYUDCWK7H@2[V/#X+*BIL ENVK\$VD^#6;O^0=I//\L?/ $N"B7^W014/D04,!9% M 4=1P)^, @::-1;L.H8])X+CC$_'!<-(WV,!XKQOLI*(HCR7'K-B/,&S<2XN ML&1"2+,)3A33:91$!4[ZX:_'_T:79QG>'I2M/%.D^^EL+%$18]I8<0'N)PY' MEEZRZU'3[H.13K)7PG/5FMFGX&W/X MZ8AUO#OLXW6UT%8O3TSJU*SZDO19*9RKT7@<[/>%67@.QR] M7;7+2LS0Y@L55S.M1KX_-AVP(_'CM[\D>&*6U)L:$V,;SG!@4!S!R6SB^)FK MIMA=YZ:&I>+4BG8R*3)BNTGZ9&M9*RJ ]++39Y_$PW M258F6DSF5:5\(E*7JO#IE=2:6K/5K"Z$%-/[1,Q6Y MO^PI>7:F.JS:5XJQ?KD#YIDZ?N9,,TJZ/)BYP!-95>4&292R,9DECY_9$\AE M6ZEK+_0J/4AFL\WTNIIQP^93J]5BDLM./3HJ<2 F<7D\4)F8J91Q;%V"[-E\%3L^*GU;-^L MMKA!617I%$:,1JC0ZGI#CY[*95.M/*9:8S5)O+S@Y13&SD@P ?SXJ70L#\PH M5R?I>;]2(NULK;!LR'#HT5.GA>9+)KE6."9KB_2*SA3D%@ND_H3@-4HO0FMA M%ZE#HDM5KA2+:((;%"4LVVJ@+EG5"I-RBF\@9U+Q* M]RM5EW LHU C7#@T?.H'SA&PG8AD0#LB^&T\%B0=>)HV.L>322)F=-/II7MX M;+*]Y8=7_%D/I658J$VTG_I_:NKMS02W5UF:5^7*F^.E>,/S.3I!';B&U C?786O M+NF4#O2X!N?F62#'S-'I%N+B(#&?,L[+L#3(LD.]95V*.=YS"79O6CW?=PT> M[Q%1""MP*.(ND6'1W;"R>7"2[J<8 ,\_N&PZV S@% 'S69X@94=; 5>90)^1 M#,SX]/Q\Q [M-%5W8_ZKD=NU;_UH8G?1/>-L-YA4:K MOW!;"#]?0+(#'SF@D[_\X"$I]#D)O)8=F@6O"^FW8T3O/!\>P\ K])!HX>\Q MUP30ZOM(\+CT7?%0;@R<:L<6+^*K'& .^HPFMJ[)ZT[T1SWFK:?Y MWW]LX0.[,%%L,08>P$.7!U(O7/4SF8CVY1;W!8OVY0;W)?V,I:)]N;U]B7#L M1O@3>J*CY:."0W@4FV M=RM)0*&YD))290G?UUBN&K4@I3"^0\:PQZ<4O$6I=6 MG77,ZBWL]!A5N5+<[/9YEUAC+38!56<235]6=SZ2HKP[K5AB,5K*NTZ1X50\ M9U+TN$S7J&MH10R_@%J\,;OLA*9$_L+_:SG[K_8>EO(2EL @<9/#!*,H8/H7 M?-C!XL''X/FZ .CFS'YY_:2AE/[]J!9NY/Y&[N^-:7!<%\)187F0RKHVP%+Y M-=K'Z[G2*,=IDZE[:67.5^?K'!T;I!FGS:AB1J^[6AMFKD$_.'YA97YC\G$% MF'@-7I2U?QF-/0-$@^E,=L:F!.XA-2-TQ[@F0Y MTP HW MUE+,&#-N6:0YF]5EM9)3!RS%ICQ]2T:^\\/ZSO:Z-UN6V&(,[7382=FU>NYZ MW;K:B7+BH5UGVO(J,0O&$U"6F@*D6%>BR]W(NXV\VXOHV8VX;84M4+),_X7+ M6/BE[MKO=A/6BF+5'$3'8]F%%6JT;#,"5"R^*6U[(V) M172[>ZR+7S!)CZGQND#C9;N@-"8=L9*^RCEV$NKBU./XJK!\()(1.5@)_0*: M]SNJVO;R76EQQ2S2% M3^E.#:=+JP4AXQ*LU 45*/E$1E[J@WJIZTZ\YNI2T:4;:,;M+12SH!>O>)85?-NF)QG&S/ M"^6&?&D]*[?+2J)<=U-,8R6MLT5Q*F4YKW@E4+18*AYYJM_<4U7F#9/)V;++ M5"H.6S;6@UC->)R(JVNR6UN!#<4408P\U[ Z)F9 M)-U9\!.+UQN3V/KB_JJ\2BZ7ZZZ04OM+MQ=3X^5:IN+"WV4XGJ"\II_?J4T ;3E[S7 M- '&026_E=\;A1U?0?]_2A9^1^MWZ:4]=/E^GV[(@U2O39)DVO5Z?5Q$Z]^* M5]V9KDR=>T(*(FS5%OG3D3\=*>6W@,B7ET!:]ER0@9(DZVTB2= <4\E,.:Z< M+[;U$>TD&8PLJ7T6GU"PF1!0S/$T'KG2=^I*OW_6K.FKI8JM MQFVFH9GQFIDT2WSQ*A'*J7]@3YF'OOKMV(:^0IJ&HMM/WB.'AJE&%F[D^T:^ M[T74+!0W3]KJJSTM.T\OE1(]GV;5 I4;Z)W,I#:H7?R\FLI5N$DY4]94)^&P MJT$F897&7A\^>.^+11'*C^W6OJ^+!Z4"154SF90J9C%J0MAENN*Z5XM0?J!L MVKYA"+RF2!)2Y531U[UET;3$U4-8L9&O&OFJEU*B&]&!D@,6[8M-H$@[:*77 MC)76 Z;O-IWUD*6RV.CBM:@P+J6PT^%\KCI3GBI8^%Q?="G83]9+];GP0?(W M$_0[]6OMDMLL5)O+(;/2R$4FV2Y5D_Q5="GY?K;//U[+T5]'1\([+;1^?Z;/ M6Z8*2U-[GRC;SO?/6%JAU\;:@IU1#?-G6.)ZIWO8\>.\PE3/ M23$T#/#$,QI6S8;K%C>;CL#NJ B*H/"]N^VV/M:;-7BD]^TW[12/[6!AK-?Y MG[RLG&^JA>/;C\("7B?ZW?[X]?]."?4M3= #;\3E+,04==$5!03HL!IG\A,$ M>T)@..'S*^S_!5V"/2S9Z3V]VS?9]/I0;UL7>]V2%S!\V#ENEGS8'?D9:>Q_ M@HB^_H+J#['!:U8B9X+G@&\+2$[D/07J>T&$3Q?"^Q?W7@M^P!#;L('F$Q!N M!B:U!!K3%K45\K]?;!^\UD5[J^-CB;,I^:2OY.N<:8()&)F8-:)[:D%+Q:@X MEA#XM@Q?4D79' *]HX(>GBY,'WR,/SLJ)^3#;'C1*=(72%B^%\DI_(>4O M(,^Z4VF4ZS+EH(54'&NXO7K--2A@ #TG7R6/QUN7IA"V1R&,M1(U5V26S3)3 MH'JM/*J[7<-L?0&%^N+ JJ>KXXD:*R2;T]Y+/A$?N#]^$<_8JQ1Z1DJ 2@!- M/_6W,60J DEU4LE8YN/T@5'R M^]?SKR')_O[F%(O7#,LQQ88$B0"VUWMJ&YH1HI U+-OJ3 !9,["[?9-;052V MNF 2&KH/-FFN[C,WI8I.F1P;D^ZRJZ(PJ4_<8X%@[#?B B MX*L9F)UM.N+9-.NNG>AUW/B4SJH;MN@S#8;[_X\A'D%B'D607:)Y.W@%O>K/ M9^S-A]^9#U"R,U.T/$T+&9 'NXF8_LXB'E]OO\M#PA_FB($U"6 $VFWCHX639%&!HC =6#'H<_JAK9@_(%EN/N^;2\!EC#)<52Q]4:Y/,1F2+/$&BP'4 MG0&L WZXMGJ"Z&**D@8^ %*LZ$A'A$%Q,L!0X+.9G.:1F!.FBJY @(%?"^4; M6B !=NM>?RL/\THZP (1 62W14\A/]^"ZO%5"#+AP/0G8"6&&6B2L2CJR)03 M "!;^VK%1V*@%L BP$"PL\9V3*AI%,L"!@2P\4S+@1 >V(G0'K-"I \,.'@B MAZ7^W7^+C_;>!XH.WP3I.],X^/J_X#'&=J?@H^ S.5]ZR,X2D@"LQZ^1C*-*51HP"E6;*A'H7JQ(#V!2;U0 M!)_Y['#>STC3-P["A?NK ?MY0) M?><3Z34!X;V9!&+!+3A%\P[[_/.6+3= 1T<))N;](GESW9]#-TV8]!QW;D,<-EV[%TO#I7.[-J ME^B68N(ZU?KQRW8-W\H_].1]0N_[(9YB\M4E!YC#(S047X\?X&D#G"0\X_2^ M^X%[&*(S-POQ*=NG&^MR;#G)UQ,L>I7:,O;$%,7]:Y@_Y"S+M&%.@>RS#ORM MQBV5J3,-6.7,G"?$9#FKY"J2.IVERJ*8:_/3MOMISAN_SWGC0\[+ S^V!]U8 M"LQ]ZAM*T$2%YF,7L,4N'S*"VB/XH:FJ*ZE;G"OSEZRM KU@ XOK)!_"([?0 M!O+!L1%X^'\%AD^IT]C8/1OD.M0+T.8!=@FT>W;!+4 J3;3@B0.G!X=DP"\' M$ U0,2:&!N^[$ S]#]3Q4\/< M[.#"\.Y@@AWZ39$4>' 3L-F7<=3SAK-?>Z5W("MZ;_46Y3\_ ME)PM8A_PI 1EQQ]R0#$H.KL'8W]*P9-'PO[=[,[],*^!N<#8@LG!+2(! 7O_ M6OG" 01X/(P@V%A@"=Q?Q?9>^?]\Z')[9U7!/3?N70[+P-TT14Z-<1)X\4]. M<[F5%:R2))_Q3=OYGYL>T) .2.*9)/^#;'_<7G;OS&;*+6,[! MN>F.:*-D_ M_6^%'WG!1>%G1Y?O/PZ>NKG(_8HM><4J)K9[\E\. ?H98.'_=!O9DRV^WU7P M7<]= R;A= *S/^-LN=^[6SX:VRZ3^93].,\:&/3.,JC<1*%<4@)-HZE4RP9 M%P06)<6DB/(D*J3P'_Y;N3!DJ<<-4LF\)J.J(J<:@V8M;S7[+8#VZ.'(D9SB M!O+4FJJ*GBJR0K:6[MHNBQ^/Y(8QI\O,EEU4(7+D2W;%=/!5"XP\>GLVDQ9E M2] +JE*@5:U3*ZND"$?&#T?6&F4VEL\P97J5G@[G*;0OU'@X,GDX$HT33+4K M)QU5;-?CQDR,EX[C#,TCNO91),:U(@B')DX')EK$[5G+7,F, M42K7C#2\V9_KPW778JR_(R!M]^M'8Z_9+-93AF M1D^QHMS"&=JA6G!%1[OI$LU:1;6H*XXS\R-!:W, MUQS;]48>4G^G#1=O9MM#X#$I8ZI)+1G";S9:B?5AIY+)6;5^+P_ ME,'((RJ1HY0[?+&K*;61Z'(M2=92K "[B!RMO:&G7ARBFUNCA6RZ.V_$6;U< M=<'(<$5 ?P?7H,$=UUM7IN%5Z"_/IG-Y<$Q;%/TSOOG^>^)?R-^+,PAO=\%0,/&!S.R"(%F!&_YX7V.N*=[SH6=E;6SYK M""*TJO43WL83_,-?"GA/>*L G^D3,+2Y]TXM]ZXRWO"5X1S^#D_^C_V+#0_O M78][YSV;*_%]8]_SEF(G%O#I61_.RKO0UBU'L_WKE,TU//*7.Q&]AWC4\TX7 M5][)Y6;&?S_MS!Z^\[7)^^2!L7. :X/@ V@P^K/Q[G7 E(*;'.@U 5*(4\0% M.[I_(_2,,'K@[.V240';9Q@Z)*]H3A6/)7R0X?RH;+A,WS_;B5CP2120Y=3N MN(JFA6Z@H1\!61@]>55T+3NZB/BX2KZ)J^2[N$I>"U>3K >KY(=AE8;,\Q:L M+@@+KXXK59KA+(!G0U.N5SCYUF%5*E:I92ZENJJC5-68;"V+JQ$%KW&^%ZS" M5[T%GF0$GN< 3_(RX$F>!,\M3N'DK< FYM\QHV_A)HZ^AYM@Q-5P$_-.I=$/ M V?7!6M8O0J;HV&A4S"R1)J>&Q6L:%!VI9*[>=A,)]5LOX*K*E,@2=5,:%R* MJG]#:_0=V SX-(+-/X/-D(QGALWPL:=@T\Y=2K2 MUV.KO6!?>%NS']E@;4,;H)S!P <>4CG8Q_W[F_W;O\T]^9<1Y" ]21#]/1>M M[873YJ;I.&XZC,W8N=L?KQ#'@E<[7CB4Q@&)Z? 30X-,[9$X!HD$!TP!9&A/ M03# )J=!V U&LQ1 9D]( R6$3($4&8 =O>BN;6R:'ZO5H;.; !"@?"0)H7@> M!CK#UV4<31/!3QL%UZ$R&]56-YXQ#*C+W1#WX&+R*0R-=FP_/-$+9]2 ?K$V M1-D/^ME+K8!+\]4N> Q,T?#"FS?K"A;D0?(^(XY%GH/CP19SOE:!(7B*N/#V M)B#\7GH(Q!6/?2T'8H<7V;,-2-QR*=@GSKNF\\/C$ YH!LXR=.]JPP_N]A2" MK^,A^P=1YV$ZAT\"R"G[:P6 !&,"X&(DH"8<,Q 8'BH:3>/\A7&6CWX&SSNF M_P#)@$%)<)>\ *()#(OS/"$A!M9C@O6#;VV" GYZPG'I%!' M:+@:&)#.GU7 MO1,[8<&P!=\&V,[2NRDZSA@9\VC?[E0R19K+8Q5A$L]QG:9\H1R0]T1_[P;L M(!43COA@]O?'$F9WYI8$SPYN-^&=&._?I877N-ZU(TS.#3_P+QV]3_:N)G#\=X;=BL1_/@U%#G33PC_[S_C\\A.,MR M/UE ["T"^#45CO\]$SG>M<.O7E%MG[)'%/J2NG/O&<77E9$O8)$W%6G$(A_0 M:E?3)>0G=,EE#:X;XY/'8(OWD..PM/7OF0?!66UXY#M;(EZQ!21,1KE5:#PJ M;7=69+RX+?$0P.A;&%?FH#-:9/!JZ$P,='&[XD^4QO78A7PP=L'/98G=LHUQ M)7;QC8Z'8A?L7MCE#%[+_E)_TSBYK68B>S+B<88 PQV\:_^#'-[#O\*J>3^] MF"CXT]&?_:Q3C[-A2-(VA.!\\N2;-#=&T?.U9PELD=OJ7?3*>L^V:M_*>.0] M);_=GOK8_K![&FCU:$^OOJ>_W>3CYNXAWEUJ#H;AB[J K!11$^[F?. K->=5 MNQ,=+NY.*Q_]<>6UM^I?A3S:61'@US+D@;I)L7& M88+_1=H47?^(XS_GANDOOP^Y 5'X?,WFFQ>%J65*G-;6QZA82+A8BQ.F:+$% M1"%^(5&X_O'-?^[RFN=]]K\T]W^^_/;-<[_>8 MVB4BKC.*.9Y:P7,Y)&E8B M2GX'[G^(@Z:V8JF(9(JP,"$L10V;5X#=CDZ![O(4Z,M![0,%9!5]IX!L166Z MA8$PZ3 B[_)DSNVLC-(>Z,6O!7I0$O) $$J!')P$/2]3.D^*RQR)MZ?TJF$O M[9=.*SU36[ +4_*XQ<-_8C>P!WM%?%N%^#CGMM8.W2!JP_9B47;&,>K.]J!' M#S6.JQ.B*E):.C'D4SFG!&NU/Y/'>_"HYY\7\DJ^.Z@=^BGO@5IMF1KB=JF= M0;/$2T,9QT;99-6],X%2ED:LD1[6-(9+9J98.>-(?0Z6-GXFXU< M0_LP1ZH MK?-23T[$8TEUI;UD')ROIFK*O>U!IVC..4JR>RBNTABK96;5.>-"4,./&T0^ MZF'Q&?W+[PYD1R[G.T#&DH5:GD6Q$EW@.W,"S2O*&+L-R^!#+JDG1,-Z3^EU M3%*C%5ZFQ@N[7:XUO&92^#6LLP_LP1Z0B65TQ=#QM,WTA56NU.RDIMK@WO8@ M+53E1694;S*QJ=Z.RUB>7(Y:< _(XXY>WP#([N\>*]QK9&' #"AX71==9MWZ M9=8->)KWXNV'_-W;L/?K:/9B=*G*C+(M!D<7ZY4J5OH-%&B4%+ RCGN"10[_ MA;;!:O;FX_)0Y.@&EUM0\J#8G6G .DX?^R?1G>.=W#G>@!MY+Z[\9T3%EV*-54I("K';>(C5_Y">Y MEOGE2JOH#*>]])JC;)%*F1># MJYNZ&8ONA:_JI%_]WO@CXF$.TG'7F=7;ZK0WBF5RV>DHD840=:*3VATZZ7>Q M!TJ_U$VUC'F1::C%JDC Y)](4O(E*'/9IC'V@7Z\TT6<& M6K0:3$R<+AUQ,LLD!U?IUXL_HP?=>H/NL8]Y._U-KZ4_(K;G("9-KLU<2VU3B0G)[D_<6 M#YZ!]2=R>RY?[9;DMELE<@DYFQ?I:3>NEYBQ\Q*S6I#M3\CM64GU(9?JEDA% MQ4NU45.IPL27.LMW-2'>@IVEC@CUV #Q9^E\_W@%W'\=M=R^JR+T7];I:)SDQ;$H ML&E^S+-Q,8ZS9"HIL!R1)' !$Q*$0/[XM=_.>*P18ZO2G V8#B:CLP+3,.H9 M&2C.H\;'I6YK[G!-JZ9.8U9Q5>8=C-?E4XW.1X-"BLLU1R@SSZ;8V=QBZGA! M/M6^O"?WUUW&PA:JTRXX*R+13S7;<.11@V:WV'=1IJF0ZLJ0FL!,F-H#!;9$ M/WJ[5%*[FBJ\%K!KO:0E1E4\U^R82*6;9U(P<6K 6!E>CEMEIDPVN"B+-D9C2N M,QV[EE_DN+:@%666/'ZF5),F+Q0_5^G^C!]S Q5MFRH%1AX],UL?- K:N!VG M&SF\:O31-, FETT?/],L])H-NMCOJ-FY&&]4.U4Y&6^!D4?/G,^7>&+0J5%H M19HVG52[6&%2+19#CQ^J90=4-:ZA+35ISA1JR0W&O0(%AQX]%9>69:FXVK"J;2 MV96PM(:RX5 .6-8)P;-FZB@O*SD)31;3VCRM /P#C(*=D*\V ")P0J.W0::\,=Y9@*DY'BA9H[*"=<./3HJ0;:3_/FHI9D5@YG M+K5:QG#28+=.B!1=4ANI#EK-H_VNFVL7K$2IX\APZ-%3E\9P,6NP55>M8'.R MM$3C4RL/AIX0JF%96K6R,=E$\6*^DNS3@]B4I^#0_:>RV#@MC!-X@N7'$F 0 M3 #X*B1%%I62<2&-2PD.QPX?/B-6CD+W^94:FW5SKEH@Z=+B)*KVZV*OEG?Z M!48Q8@W'J:^K=/PDJF92:IRJEV-+%1^TL.QHD!<2RY,(6*YEROV6\U)C'#9) MI=(,CS8E.#)Y.%(=K>JLG!,6#-YOI(K%M:IQ8,/BQ_A;(TO-6FK5'#!.6FY- M7'L\+^:H4UBY2@X)H:H(:T8I#EKM6G:X'J4I/Q5S?R33;L?8\:R08SAZ:.9: MM20Y9TZBZEQ!FQ67S9OT*KG,.PMBWJ-U./)HGF2Y4AZ2RF*ISO-+2ETUB[/Z M["3^]CHZ_?*2-,MH@Y2L5(FPAV01CCR:9RP?3^(MN;R@5R4MH6%MME'-G$1J M8Q@S,'J1=NE^JI\7JZOI/%6$2+W_3':<( D>)W$VC:; U# @S5P\@0(](Z;2 M>)SG<8(X?+:"=ZMQ>S!;T8UNG%OEF"S>&)WDJ5DS5EABZ9Z"QK(M,U74**': M=D_Q%";6!&NI)2JJ4IWU9[-DMCS(G.2IWJ!I\HT,H=!9R5G::9,T8X!33O"4 MJ"PF/?RE/55CL?DBGQJNXXFT?(JGEAF#0K5%L:L6VC5M,F07M77C)$\I1I=- M#GK-J3IONTXE;CO%$=$ZQ5/Q@;,V"-8:H7UZPG3RY)#*6:U3/.6FFOBT6UR\ MT-/$2Y$H.K75*D:=XJD^CPT*0U8:HS%!T*>K%NKTXO(IGEH-7%LJ)LM#5$SD MAF3!?A$DD3K%4X6ZMF[)"8=@.LX<3=D#U>1K)WFJ7URO374YTY@*H0@3W%A) MK$*.F^FZ3X^HX=%FAX9G,O"H;A_!PV^(0J4_=YHXFL, M;U@##K&<*?AD%3:%A#>^"^C^P3Z!.XW_-NT.88M-:_-711> WPA=U!EXOR%8 MT">%_1)%KZ/E6(0=%Z[616_W.&BWBQX5+/*5SGGYL:4PF*.E&(X?\H.V75E; M7"OJG'>3G?-2Q',R'K4#.<$L.]_[.)^Y+^CD9=9J\F3Y@[]IAW[&X_#N(?@L%U"_7]ND].R/J;O(X+ (\ M2$@1+_;]M]D%OVQ.[9D;+?2]WP[["D:H>?LB<8_C](CR;D@B MAOE*U'TW2-!P; OF'8,9(9R-O-(D%$=Q M]*PR=D\DNL11PLTGD[Q%D(]V6+ \;&9)6ZZI2[S.[3?\8Y@1NM3%HEE'%PR^6!7LHF@O M5&>O"4.IGO^*9/; P-F1J[H#9[A)74?93 ?-U5/,D.'BU'!8EE^2-AD$ MNR2>"#S]E,!.U9E[8#D\4G]7\+P2U\FM_FU\^M\S<81_"?'(R.17?&293B[$ MII72E^K96F7-=!I6M8)QHIKN4U^.35]29N,8F<)SO\ [#6V> M8X:9-#V?SY;-XD*=4GF(5PF8'HLFWX&J^SM/C&4YG1E%/9X0>R/?3C5KK2S&Q$9E)I[BRNZJ&,1/8P3QA">.JWK__1 "\]L9 MHA<+T+C\FO_W;);$39D-%[$,OAX?SFHH6)^'AT]:#%AV$:NPUD!2*U*3SPR2 MS50/@R'M":^,#/Y&>:Z'.'J)A00ZGP%Q8RL\MTUQ8^Y'9&9 ((%O*5F6(PI@ MJH#^/A;X1^^[R0@;;C\!!05!7H_R(&Y.;:YD6-T:&\UD;-P8 MD72TM8+9;]Z!!7;JP.)V#RL^IHA?"9X-S)$"(#U,9OL+^_N18E7.;H1<[X;S MQ*C<5J_)YT+(JPFQ-%CN,VEDJ MI$$)=.]E?$5SZ".Q*K6&-.9T5W/I3MGB<#[/II8,+.0%+"+\*8G&GU#\N(G8 M0\MA%*OR>7R*8E6^-%;E$MAT'[$J!DI*[2'NXHPC=5Y:I#4LXQD7X)4?J_(> M5-W>\<^[5TU1K$H4J_)&;X;/ L&*U5/SA%59T&+1IC&SFI^NKVFD?"Q6)98N M#5RWY@[1ABNGBBY>,!(ZK T*8U6PIQ1YW!$J"E6)0E5NRFKXDH.7R\/#G86J M,&:[(TF)VAJM-%KCI,7VUJ1$ >0 !@/AM4YY[).7*%3ESL]%(BOC7*$J[3C9 MGU>FV3G=$>WFI!+CFP/,*P8.$W-(X@D_T2\]BE1Y[&.-*%(ELC\N%ZF2XY+2 M.E;(EAA1ZW.I*B_7=8+/$GXE3=RP/=63R.\$J"($](9!]OLW5^)?6M;IQU^K* MH2J?QZP..FN*,R#IJCC05)/![=&ZT;KM4!7)752;=:W*H$X2Y9=#NE]^F7O] MT;Q8%2*-/F$)]/O&JGS?,YPH-.5V0E,N@47W$9HR0]M*9U5L)QB.S:3R[J H MEX<>/GEG/8E3[EH4F_*]'<]O&L1RV#_MLY"!40-7GXXF,[KC9-BA8"W)5.^* M5>$^%L3B],KC,97)EYELRQ*ZIF".YY+7BM5+/WK"DV04Q1)%L411+%^ #W<6 MQ5)2)JF*:W0S:+9FIMN+6GI$=[W6S,"V2#PGCRLU/=B9S..'L42'*Y%!*Q,GJ?-XWYRFU,9B-6K#S.CPP22>?TE&\R[<[*XGB72)+Y7+Q+K%, MLY4^*4D%>H9W7 @Y7F6X$P[.+9]_G#7>A7BH>)?K62L/='_]D);+ MI0-CE!*6Z4ND3*J%R1HG2RAJ]1LRBWEU:Y,H_I3 WRH %56IB[E%C.>-4:L%D0=>\*#?H.[M>E#9QX\$SC5XWV^SIHR(: MZY6I52F7;RR7P#%+!H5>XJFG.!$U);J50B]7E^#;#;>Y.FGN*Q[G$O!V'_$X M_15GI1(9O*,6UC7.FK6Q<3/3@I#GI7X3'XK'^',M6I-4NMQY MDO^7C4,"1WP0E 1E<480V,P WWZDB9+](;@(D?OS:UCH.>P_;!C)S3'X"..F*Q7/] MV93 @I>BT#6\2QS3HN<.V+7N:N:+7SB8GLXT8R6*.Y(82*&>J#-ZH^1VU7X_ MU=68YDRPVC>3L%0P#+_:U4?K;()O_?@53Q)/ MJ1/E=1%_"Q!7-$5$#@Y+%1W&TF-/"*=IB"$A@ 'XB3]D(5K>B.E4%!3@L&FK M1)UE J:QTE&W:%28V M*^3P:F&(!V@#)(#]PKG=?N&>8CUFBDVV!:0WXBKV!.&0/3B) M62(?4Y8Q'QY_%KW_L;FXW2BWYE:6Z:/$L%?$K1G6H4[:@+^+E?ZO\$%@<6!' MM+W&SL%'/WY9RG*#U-[_8L@4C)MX? T]YYDG7\___0> ^'=!] HT15*6[P4RBO]A;R9(_'7H9=;%MD1GEVU4#$]LRO[45!'--**]VN M%%,CWDZ#38X#<"6/KU?#/7Y5;>((V"O$GHB(*4XY*-UF./B#FPR80F1[:T*, MQS1<57$VEDTN:MW&.N?>^!9_VH_YG0WV_NGYZ-[VU!J08]CA'K@PFQV.X;M; MG%\U[605*Z/)MH751LMU/S61?_PZD=STG[T=A3L9;=IU-LU8]F-M4[:SZGQ M5P8KN2+S&O7*I@6;!,0=0#I_%N6T0Q-H _T4'-,U3,$2];.IHUVB^+H(VR5 MPZ3M9%U?,QULSM<3HJCTVH!K#5U$5B)GAF0(%OT+X20;8 U$'@&P+]0W\&=/ M#UF7M7_0VS)_B.N:/Z]=\YU)HND9PX^RU/"%F;?*9:=M2+'$D+I]:VK4P5;S M>"S!T5,]W\)6;HI&VU"@R?@3>2+$X UKBKBZ-76/>_P5UA0U='HIHUEO,J*< M)TI#8]C)JM!D)E)/*?PXJOY=:)HE),UU<9]P_-Z<.Z3T>"Y*NBK:-SO%D MDH@9W71ZZ=Z .47V6ME41UYQ:F-2)K.L->[$\ZW?-:>^^FC4)_,15WM+/F)? MCVVIG>,_GT4Z5+L3L+$R30_P.JOUF62MD7=%F:E*[!5OW#]J0V0DL>@3!/>38S:/NHTQ.\R1:K8E+C2$S.IP&J(ID@@Y$8*1M;%ZCKXB!K>TR Q> MTYXJF>2;3-Y1E"']]"XP[^JVU;LA#A\31"?P@)38^K['BGGV$;X@8< _B=!/,/6:PT_\,? 3WQODT3_ Q=HF^&\@O=A_L(_ M%H.8))[1U%LASSM"N?-\ SQ3 HP4$BW\/0;]W9]C4^34&-2E_\X,RU-(/TU1 M P*S$ ^>N>.M;X9R8\O0'%L, VA0?Z'7B!;:Y(A\-%3(!RG_WXN&HD?[=K$K^>1K4\;_GRC9YSPP_^_$"/,H6S=_EB&OEGGQC%GG/ M\#S+XC_)(&^1(TQ]@,L_7ZN1:W/ ZYM\CLRJ+\C6/QL$?(G$OV>EW#%-(@OA MYH3_3RAP)8T8V0T1XWP':R)(H#QK7^3/-@S?MEF"1<\#8MT;"07=Z5C MSRP+?I*+?VYJ2!%@1CK4YXOL-E0W8HI(BW[T%.CWE.@5:^>>F2A?5;7T0<7H MCY3NXW!1D"84<<+BPDT[7VW;CI+U6]-=^(]14^/U6122!$R MJ^ K^HHYQ7[-"DH7Z.5,Y&V8]0\_^DAQ[S)!DVB_%)^IBDJ4\W@K*QN&S :U MO>,H^D00%^R)\JC"$A@95Y65CVB%+ZE^ --\+U.FY2V6/RCYO+D8V#G=Z(KF M%-MV!]+S:'H^G6!TENQ(IM9++NH<%(4X0)7X&\_0' M@H$*=ZXSSU1,_GVM^97%X3\-(._5C'Y+5, @*F#PO4(3;SD[/0KTCUCDP<(1HP(&-YE">,LJX,[R Z-TP+L&^_N+ M@8NLA(AQOH7M$)4K>(AR!7=%DCLS/OZ(2)$U$F%(9(U$C!-9(U%Q@EO-T[@? M_HB*$T10>;,<6\Z-"I.$&G1J#C!IXERV#D/CX0G*DD0E22X#8YY MQ)($446"J")!5)$@JD@0522X?$4"G,7<7NVEGZS8]'Q(&7EEB,879>HN*Q*, MQEEZ+;6[?75>[ZKU9)\V66U3D0#'R*=4.AU5)(@J$N![%0EP5D[,A]GVH%&B M*Y2V>"F45_H+*=]S18+1=,TE"EQGS(@)-9%/S1Q:Z;E!18+$,Y&.*A)$%0FB MB@2_69'@(UKSKBL2E,;CM5/J$#23+!?E6)M(IMISV:](@#T3Q$(UH Z@X$S^W7\/ =]SB1RB5W4B'@_E?B,*B?AA M8M#_V%>Z)MBS&_/0J3@(O_LEI+K>RPM()Y#,> M#_W(GQN'$=(!Z!N2_ ^R_1%2XXB4L*;##L'V:C;XW]JOVA!\]DZ.5[ KMC'[ MDBTY9D=O.XCMGOR70R8FA)3_Z3:R)\\&X,] : !T:'OG \%'/WYUO;"?8:F^Z3^13]. \&6$%*\LFT0+ <%L?8.)E 64[@"9;'^3$^ MYL@$+A(__+=R(7#@>D;J8=R0I*=9*ED:C"K9@MB"5M?A2+F8K'$R-3!01ZLK MG)!3:@M:N8.1$I@N],6M@#:)&.Q0821Z.K!2;3-JJ3'@F.*E8]3;<.31/+.]E%"CTK,Y@VN,W&L-5LUAC0(CC^8Y+"5SZTXUPZ&Q?G&> M;">7F0I)L<3Q/&>M9I>1&OT&7<&%0XDO%"8,WPA3=R(B"K" %=T"%O^"TQSP+B 8QJG3$1LY MO,D@O",3J,\1H%R1__V@MPUMAW5<>4ETU"6A9N/%F)O.9V:)Q)\7_XLEOM!J MV#$/2B$1>Y"&&X,@Z1L$=&-+U"0&6 M*S3U &)KJVSR<9 M92*3NJO5AZB:U-(Q;MVO*.F&_.,7^DP^AOQ=D;9E>IU%RTGL!>V/L'E.'&IX M=N)"7P?[J PBE*=ZCDKY^\QN3T3 Y2YGW0VGAVA(3V>:L1+%CF@N@+-X>G\V MY/6VPNH:-J?M_CUK6';=L(AX]XQVZ 9MOI(.(2_BPBGM4+_F@;"'A:+("K M +]\6#U_G=,#;<-/1,'1Q(;TIZQ? -MJZ0WP4P-P?LM=R0(GO/0!4O(:(#\ M/T+;3DQW\R9+-PS&X>+E3G]&* U1_H&(8%]F8+:V"=375_GO[YEUH58!V"8& M!QD"(C@F-/. H"'PC-9"1%T 'Q_IG:= Z?C:!T-<*)A +B5#TPS7>O-N\>?F M)O$*!QE'\XEJ+QY=UB;2ST14&NL&2_U$I;%N=5^P:%]N<5^BFI@WNC$1D-WH MOD1 =I/[$@'9C6Y,!&0WNB\1D-WDOD1 =DO52M_U]*-(^MV[.4@]XR%A%!WH4_MGS/_H M+.P\J6L$O6.W1X9S!+T_6*;81Z,*?O=N>QMD@'Y5Q(>WNA M!Z^$76WCVYW!VB@0KD0SJUE!6PF=3+J_@*&:!,P4(\GD$TJ^U78O@HL(+B*X M^/,$NSN!BV+)3N5PK$DPE9A3Z4_R\+CZ:<$^GU:74=P$<'% M>>$"VX,+C+42-5=DELTR4Z!ZK3RJNUW#;-T-7#2&+^JD.65)="[7:F1BA4V< M80O 11K"19S$GLC$<+X[N$TXV81\D'@\%MAWV4\JW/ELH2) MPM;G$#!9Z[TPFDZ;*EYQ_9]F_C,]S M9=GOF,3PI36*D8S2-^.#]DQX87B8V X\G]032I)/B=2[GD]8/.1:.3:;4)8_ M*QVR5USIJ)3(755"N70.7!,P*&1/76C 1,FF8=FF:"NFSZFB+DJ*;>44B]<, MRS%/I*]5$E7:M1OE%KTBQDQ\1JDE5W(OE+YV=,WZJ9SINF&+"$8@D,P8]B\2 M+ ]I:IQ^QM2R/YODJXEGVR(D$Q&!T,+I*P06([/!?Q;"(7$4^TO].S8.5C4# MJX*HA8 -1,0@E=1Z0H JX">(#$:9G*:M$,Y+OD-F'-0;R@PF,L*DS"FGBAZ_ MF9J(HGMS1,;@ M[8 ?(9<:.IS+_B3!G^TM@9X1/V !TLQ[$$Q4W/\")-&KV8FA*+Z[*>?.+?Y: M7S4'.$:'"FM+&"@400*RF=NE]^X@:FHXNGVHC?SB"DM\E)BS>@GM=+2UR4UR M9F)&_?B52,(SN%-6Z S,9>U\"ZP,:Z]KEF%XLI"I\5<(MVNUYH- Y8B(;&G!'GJ MO.;#&W-0KN1U2^FN[*(K3/93X=7W4ZDN$56JBRK5';+IARO526,.'Z<%E.4% M@F#C),^QI) I4EVG3'98D$T0BK'SV176+=RWM MMZ(WM]/\RL(3AU-L.J;E (L<6MC0JC7%N1/X9EY9CH[HJ0/?Q@6>#3!EL03R ME_!WV(++^Q88Y9A@!\$\Z24_@><0",7;\ %8FH@_!8^6%>#[P9=-. L1'. : M\)P#ZWO8$\4"?Y\9IC<18)-;8/JP6HON.1=C<<)I4FAY Z@037_ DU]\!R@] MPW\@Y]@3PX0%8JY6..O-72\RN4ZCCG3I;+'>J#8*);KSY).R5,\^;SCA%HMX MA'#UB>-6HW$C,66\#-FSYM:)SP')/2';" M*4#5^V7FLA-%E "V YR'ZAEI2)+"BV;$F-> NY_RW(SC_2G 3PW_4P%(F 6& M"( ][=!_>0Q' ,>?L9O.O'S760??XFS'%#^8E+N%%;!R_*IM0#)[G7OFX MX)*V\\6AZ\M=FWU\>O#MNS@H??GV[>///6_?^ZBS(X;7-IY^*T/H'$>9=P9 MIN%^L$3)+AA]Z?(VAWJ!?Y(Q.%-X0IJF:"EP']\Z[$/^:IJ*#@.XM.,__OW] MH&EG.3XN?6&(\RG#Y[6SC_NS<'X#:[X3S@3?$A1KIG$K&&$C_GMK0!,9-K]A MV%P90+[JZ-I'F#O?OWM'CP@P[FPYWQXP[M0#JG,V4C$5:Z)S4P>L,<*6*W@] MT*')*SH'W!?@O9QP:+9_A!X0Q?,PD!I>[7Q?_^8& >=;NS@1D%P=2"(CY?XP M(_)J(J\F HQ;7ZG&\/&'?JH]058(*(2,;1 M9,Y4="/"EL@]^2 08M[J<;P\8=^J-M!5^PID"TN1,4]&T*,0C\DF^-6A\:Y\D H.K@T%D M:-P?9D2>2>291(!QJ\OY]H!QIYX);2H\0CTC3=-P[.B0-/)+OC5D?&N_)(*" MR,BX[>5< S'.:%)$C=$><6;WUO,^N3/K/^YY'RQPIPE]\,EN#_K@HTV/^1DG MB[&Q*7)JC)/ ;']R"T,1 LJ0Y#.^:83S$X5$"N8Z-H05^-_$GFJ__C]02P,$ M% @ %XAN6.@T)'9Y8P L94 !@ !H9'-N+3(P,C,Q,C,Q>#$P:S P M,2YJ<&?LO'= %%NV+USDG#,(K8" ($$D2!:5))(D9Q&0)""28Q,D9Y L003) M(#G3Y"B2:_WV M6HM"3:.6 =+GL@JR !HZ *#=_ &H.> I@(&._LOGYL"\^6#A8F%A8F+AX^!@ MXQ+B$Q(2X!,0$!&3DQ(1DQ$3$)!2DY)14%)141&2T-!24]*24U)1_O(0-(P; M#"86'A86'B41 1'EWWV@6@$R7+0"] @,-&8 G0P-@PP-U0F ;OJ)A?:7 _B_ M#C3TFSYBX^#BX1/CD"8WWX^KT_'CXU#2T=_5TV=HY[G *"0L*/1$2?/I.1 ME9-7>*ZNH:FEK:.K9VIF_L;"TLK:TWK[^D?'QBK2R!=2O9+!4Y^A2Y] M9-<89+-]"HDH@ZMEHX!>^@YD\RH*&)8QS,(WGFYP1<#U4,!2 @K ERIW.KB M5:, "!>2RB4,R+T.SP,/!99=7QC#OES1**. 3 +CJR,(5-OROP]4MZ&LDX1@ M2Z])3RMW18E%98*M-:I_YY+CJ]=)^T-LD3.J6JSOVFI)01HI&/S4D0%$_5TZ M9JZ8I'*O<;/PE_XUO:UP-J:R\F K_[*M76NDA"QGC=7I6F]T_QZ;=2NYA)M72V_8OXE)^(FKG[LF8 M=Q% &T$!K[>7CJ$V*,!'&\'QJUFNV?5JATY9F@X[T?<>^/?N20L/*>%>SW!_ M2^S,Q;")VNZZHO,[1L[1KCYZ-/2YI.&_ MK/6T0L1C6$M@45>NM1'KJ,#UR[>XNZ5EV6$60R]8^$PS3?3?&70YT[F9*\0\ MO&,YS3=?K!DD]TX:T^5V&%#R7YT)Y [> +P6M6Z(Q'.@'9SSI*$"2&G*^#FZ/_K7:#8L-';OUA(.Y2WAX#T8Y M[,J^C)DX:7T4'( DEB-\E_>7-P&F'%6LI=^?*HTRP,M?&[!?25)4/? 30ME$ M _66.;FVZ+HDC@73$I[5SG[BZ\^*\-=,)HL=>@[,_0XX_X27S,J(XYO^'H-Z MY41Q<@*-D#">@-DYP\=8/0$TQ5\/DMROQ2MN=YQ[E'_PQ-*1_[Y0JD[X+.YNM4[$"*%#Y9*O+ KY,U9)--0[1747X0Q4CP[\T7JJ MG2EGR,QEY52W6H.TZ# ]Z(%CXYFKCEG-O+8R8D6[6"/)LKPNSWS#_L]KS1D: M2US]/4EW4X(',Y4GM#4CO8@*X&+0GL!25MAI3?'Y.?,^[:I+=9#48I4J5\%C MQ>>?7;FP9,0I_ 6=C -JD)2QGV%+H'+];033" )K5JT&Q0\LXUW-;&WNG0**]# 8JU'_T9SWMO2<*^T\K3 M"BE+9Y&P'!YT@AGAO.U@"J?>ZFFV"00W4>YU1K7$!UONKN(K7P46P_+BPMX. M-Z4WO*C^:44+OH_= \2FG*J(//)0 MVE>^\VNV;N'+06DKT3@VHEAG]274DSD*@A)JK %[KB:4G)_96.C9J'QT1N1P M0.X5YW!14%?)RL,5%$"* JR$XJ\C',X>@!*B(57ZJSXH8-'BZ_Z#VO4L$M'1 M%G:WJ*Z M4*ZA$";ZAD.9XHIMET31H,P5[C<39-E!*UJ1J[&O'I?=GE[4T4&^,<=D@AL) MPIU:,.K@:E )GM5N^JCTG!WU>4:MT;;]NV,K;JS/V'1L$4UXM%ZE)6UB?LI< MXV4MN):SI<&%,\;6>B6+N07S^@OS-M$"-F[F?@&/!ZHQGY/FMX>TG]Y58(TA MN3/EX+,!KCD:)^IQ]8K=M.B/V7S M\& J*W7K:(>0-^%\-7"+XE9Y?DB[V_GW MW[DJK:C,#"D6V8?YKTVW\ ?[OCHEUBEX9IP M?>+J,C<7[#+);=G=K[V^N-+S#%X^I!;*W\[]"RB&F@**!S[^5Y M-[4H37UD65^0\DTQ< MG[==[="ZPX#[36"9&>Q[XK#WQQF\,-I./W$HGW3ZXIN%Y4A?!Z.$KU[LW\:J M):@WE+0UQ[F=7M2DY2TJ,G38WHG\PH^-RVI:/6VR\-$.*DM#N8O$LZ*F,)#& M+BCJ@6X?2"XN,ARO"C';\SV7OUY*)>T5INU,PV/G"@@#H-40:OCD:N<2=?'G M0_EO-3!D@DW!=J;9V.<%.K?->-,4S+2VHU;3-G';F1_>]]VV3U# !ZY5KI\. M K&6 9H9!.\TQ'#%)S5_O,/KI?O!Q: &!]GD_V1Z.*X2Y@R_>ZB9K6N4(SOV M5HWG24BEW7,HW1AK?##KNO^WGTV"4"XP,5QRH"/.T,#Z3*LF^[M"/NZL C.& MI?9T6!Y!X-67VX[Q\8^9C!U7[&G@RAVMR'L-AS1G^^EE1KIZUJ+JLVVWA%8. M\*.M>_U?L%1$R!_9&1P1R<$VGT)49D$K!J-N21H97 YY#_7Z&,N21)OXJ>28 M2=M,AP;*/W[RZKHH[>F0PCXY(*Q)P?])_^-+CA7_Q>R;6+##K<2S%U0)+K&T ML>U%I-G:[YK(_-%(8%/MEHB'J]?V7;'P3(/FALGGWA7]>R61E1]>EG,0H%=\ M(/(+PD0!9-; IB2W0D';H2?4:U8P,O%S <<$%3.DT4:G/YG"Q4PGE^6K0]4F M1I[>C\.#D"9]J%2 D<#AQQC=+2.!VF-F]/5 MO\R@$KI(-"XN"/;VS)M>PM)='YL5_)C_:D[:Z1U:ZQ#=>18QL0J9S2(]O*!, MQ\:(;?SN"&\5]7B5Y(\[_6_M$\K:@#HE.0[7/.+A M#Q4:IJI!I%:I]VG.Z3/2B>.,]%-25;,UZRSC^]29'I#;B:PG@83SX,'0KPDK M19D$AM;O%U33N][3KT MO57T88N-%F2UAMH=M=T_-N3Q^D*G,3X./?IY\)A1Q>] < %X&R=,]W]%OWB M$&/N#J0J=&)4I/PXD//[@PQ9O.73LGN'FE$%L+25')H,6G^*KV[[ZN8.UKO4 M8DJJ=\P:\1;T!+QW^'2RSP5W4]DB;:%[;%/*5<>20W9I5%\3ZR;' M*;Q68(VS23H\[\ Z/"O*-I8*=2ZA.G'OFBC6LYAQP3NKN(C<:+O#;E.Q*O;. MPR(5.(:0[XB>!90NPBE::V8[A47M4IARSAM>>-@,.#J+]8L/1-?(^WVL,D_N M%B;?W'@!C",<5H= ,Y9:@^X%M<%>,CA!:6J93X=+LIKJKE[;+;'NKH8<$'[3T.-YG7>OJG&.TV#F/;ZSE M"XULOH_2I;I]1 XAD0)$/&.=-;-$-?7+79/95Y*)\0SZ)3#TSMX>MX':@:/( MG*@ZDYU,BM-&%$"($#B4+P2:IQE)OVO9"!Q?#[*-6_S<1XQ?!544J 4:W$A>8F[R-5<+.51L3GO9YBA>T:"=$\R@^)$F3 M3"]B4:^NAQL?8D"#@YI$\A5-H)'/?ZH%K9WHFQK+&WO9MC%JG^K"5"FP$ MU\_]R04]]]]' 0I-PZ6I^_UGHYKN 0W\\K>^5^ L,M928X5NWCY^S"3E>(C3 MD_HF@"ZZBVQ!T?X0S4N"NVLCC4!1L$B)OA"YR\R#]C:F7F2YE$NE,X/S,"K: MY- :UTO__:B;,NXI%T%>135_+]/TP)IBR)G JP(Z3>T.;Z3(MB#)3.VSQF/D MX J(;+O;UM;Y_,B>Y2-#E4ADS2"E+Q;+MP&'IAIL'NM,M!)!FTP&1>&PIF1XS&\BREO?N]2;#[UU,+ /;I(IA!<>G($GG(N6]HBT;!9T M5)Q&6(U,]-V'R?/1HRB=J';.EG#>VO)Z"7NE;E1>?\Z>EOS(@^A]EI18K'&A M3D9ZB]) P(365*Q"H=B;YK)2R:7W^;L:F&*Z>%$\2QP MI.J"_F[BX[KN;4XW%)/Z&3]"A@+P0C+^&*^XME87@CO<_J97XU[^V.Q M2L&+N.1YYF]6HI4B/GEV/Q8AV5X8HP+WFC@.;5)W!Z!!*4[3&W7A;]_UIA'B MD!'UTOCV;#(*QW9IQ9^YCDJ5WZ\*$9J$;^Y>+J>NA'7+[. MYZQR/+BSOK[U;)5>FJOV(:FE!2N&PFU\/^F#/D-3EBM")P0@%4N*:UU<:1 A M^77#MEZF)UF,LCX[EXNYL&/Y"2_W+_ 6$_Z=2\.JR?*W7K+;;)*7JQM^1W->952 JMY$F->J2%1+B'?5L.1]QJ8+F.&N.3">5*O-OC_H3'AV, M^DHP=>OF5=3&K8 J#<2M1Y_H""=VOJ^_=8N)GZM'DF='FUZJAS=0V"559J-6 MM*THO^J;I98VTPN# ('8K]B. R1OIRIFYV3,;:F:<)F#6,FR>654^0 $5\BA M5+OYH534"9A**LQY4/)8GIP[O21O1CSD0QBU6G#M&UNHK.N#'MA>%C'+L@=/ MY4HFR$M.T:W*4T)M6J"HP/#LJI5UQ ME)NO4)W\(6L1A%<*[#=QS2[M9.@@-KM"E4!^\T:&([+H1 MA(*W2QGN*+-"R8@MH1_UBY@V0X67VN*17:VW3S.QO:2+?GJHA-A6ESS>J165 M;73]*NNN$)ZFZKM'!<[1@7BE;@'MHH-3H=60&C<;;OMO M>A_J7 SCQ#MZUQK(\]X,H_4'BD] @L%$*W GP<_$]84_I69KR_('K[^^$F,' MM_2M/TLF\FOKI:7%^.3K0JDF _QGC6KS9F4R"B">7; BP8I3>,_2 M.&&W1[_#0%M3?LP::8C[\O'+=?\LV\'60A;O MSOST7=D&U=$YJ;]$#@J@1GCEJ;0:\4T*AL/WG*LJ=7FKX*>>#\PI;@?1O*4U MN[_7/';OJJU*:#70L,G754,[W@!A-'Z29E4=/J"O'\E\P2M54?(J,L[)TV4V MVXH@P82'X%UX)2J5Q-;*I%S69-ZZ)XD1"K ]R*.;9TS8E\C MH%Y99]-N7_@5X/RW:.-_9_O[-*\K*3Y\&DUJR6N5;:V5ZCS'-V^_1_2=G\>= ML'!K9A_79)_(QO(W,\42PW>LA=[8MX*R>"7%<<5CGZT8!<](&9H MKAEBFC7=^DZ44(.^S%]<9J56N-(Z,57BF'LCA4\4G%JY??1H[LA][7[6;I$D+1Q^6.\#A_I=/<%Q[+B<7]' (^&N>J%%^G" M!"7:Q@',EE?O:/1*\^%6...H5$V[-\>Q91&,"@*ZLLYX2#?B*BG( A7(R M8WVLTW/DX.VP7Z)]V7\0;YWE0$_Z_3CAG\@_D7\B_]7(TH?=$!H$.^QL!\>@RL3OS<&6:ZH8Q&/GE7MVK,\6JZ^&4;AWWV> M 299;&]N\<#?WIWF^O&*^)DAFYON0T,+NZ5:8_P[)W(4MD\B7#/ M0P%8EXSVW671E^SM! (UG,[VY/.^W +ACDFOW0CA/R:&5CPQ^I@DH)DSCD;P M^A6TU>@PFB73YN84-F_J2=)B$\WV[EV2_!V^D]+*,^^,@?+BU83?84 M\.R?2'*56X84]Z>.XYGGRG=8%OKLYH8D?#%$S@I/F?AI,;=?&3>=9VJO,PT, MN3@4DG=6BS\?RP%K+R QA;3>64V^T]/K3#P;EBV7H33%#_F"G^4" )S6'&58 MC3M#+VX$?_SW.UD#UVXI:AM)$MA>R60,3);@-B%]^8CB0 M%8M'AQ-[?IYPRO0WRC>#'S^=%)?.:OX:6J!G-?6VPP%2)L<9ZY@?=IMAVA;D.2;CS_BP.X:^*WL0NN;"4U;% MHK'@+HI%!&ZEI^32471IN.5!:JR1 9\X7CW:^1[@^_YAU4%0TJQ !DY8CUXM M/3AHV9(U;*6UJ5;_R]&/*5W-U[1;0GRWB .H5#J7"(Q7WL1ZH@ \K,&-](+* M/GM[H71/9QO:6O+$Z._^7'%1G<0Y:VNW[EQHH%U&=Z8_59KB.;BKJ ;U-'QZ MQ2S?>=_N^Z+6,9_WE8L=LQ3O&X^:7:]JS[^1Q/6PMU6V1L/_!2&M5)/XN'P8EIT[= H1.+[X#1'*J0E2?7CW@^3/_=H!R19P--CH# M[=+=6W@^[CKOS/LC"D&\_K08Z)LK9WDY[7"3:8;^._S-5, M4,@;%.&]T_]@F P<_) S71YTU&ALF*B*=-ACGZB:"O]>_\WOL[]9K/ ]#8OW M.8S][WO$7!T:,3+! 58>4XE)LP69SW3VXY4J@TAX](7J;$?%GAN$XG\*06K. MXN& ,9U:2&!=&Q^<"0;UU<*U)IWQJ/9Y2O8BJ_35GC"SFL_G ^3O>^Y_=\,$ MT$8F6$JLEF/L2_Q )S/@[K\DE&JJ#BY0P"\9I0&D -C6:ND8!=P8(W 2POHO MV2B;7[)15\97",BJW-GDC362.H.<7_P)_A/\)_B? E8SA"?)E]6M&'"";\:\)XC^#SD4NM$?D,.;7 M,H;:?*ITT6=JQJ?3[WXU_/FBIO6 M+B_?AN8&6QM-%C7=..XU2-''/QPLJG7&7-Z]$C$D> ]\<(0"(D%S>JX(%#"+ M I;640#]7TH<9F]($W(*B0)XX2/7U7G@H>NR:Z3Q85&5*M9OL(KV^7H+Y3H\ M)BF^?62]M'YPS3 .H$P*[H<"[B2#?RZ 3]C*'O_V/(MXZ+<)6^+ .SP$"&W!&1PQ<$'KF11 M0+M8832.&_78+XS&H#:.V<^KMX2A_NV[[Z)[/VCH7C_PAV!#+'CA]=^.BYT^URV@6*60ESI-KQ5;1D MKKM&?&[P4M$69/#">Y-[&>QOQ H?6<$5MS]T^*1?-I3G9F;.$DK"\MT8RBAI MW#3-,$0K]6)NKLL*\YTT_5-":S*6R">%^;0 VC#)\[BPU:[7.Z]SZJO"9KCC MCD0YAB.IOI;L+^[>L"6H*'H81]9OVLT<6L%!!)GR]'P&M$-Q>-#E' %G/=083/_4DO$'1.O^3.S>CPL.@:4T7VQ?'>C5Q*7[=_ MB+-4^^HUR]&919$=DAZRS$MK0]^%<&F8U2U.FO7R:$ZN"(UY2E!#R$_MLKC] M\7IYEL&AO73QL5@A5U^I#Z^UAU+5;-=Z24EWK%=2YHS6-]D^48E&6S6!P/YO M25AU,C.^Q(@U%TG"*4'%QA)]^2FF46]]);>F@31<>EHV!8KW";*NG-+S>?<= M:UT9O@&B81R%7]-&EMBMNEA)@F%WPFZ5J^>M5.(PURYGT:Z,8_>ME M^"?V3^S_T5@;KLZ;+5R3R/(>]:KF1'6:HB('MN[WSRG1YIJW*IE:"5/SN]7C M(C3G**PY#TP]5E:XY%DSW,EI35\>L$90:3[N8\WP]9CZOB@,GUE1B?2Y70>3 M:YD($:*I& M!+F41/>2[83/@C;H:,2#-)W>GF/RG6-7_X9(H+5:+1'Q5EF)DU!%5=L)H "B MUF$%JBX_=[M:N?7TTHK"S@?#;U\]8L3FE-#N0(H=WJE.<%Y@D0N;/-*5['/X MHO"H3M-Q[>%ND\$K8'JA#XB!.'@3AP'+^E";>9LWBB6:=E7W>+ _2Z:>U<7I M#W'U\VX$MT;X@@;PTA'[/0,OW4RAR )H[<.:>GMO9TQ2J\F72J]:GYHRK'WQ MXQWB(B:L5TMXN@Y[ZJJABI,&::MJMAE0W-,8RK[OJO!UI@,GB3O-0&B;,9?G M6:#R,S#G'F8 Q%_4& ?^^OB):.!&27Y7D8WHA[!S&JVS[EGN_,]DY/S[&@"> MB&GB&W%T8&LKZS]X]7]9XVJ%V$ B],HZ0+C3.ELTJGK6#4W1=,DB5\\><-!9 M3M&N?;)CCVK-T"XC",K@K[)47TB>+**G7%#8C;IA%0?=F21>MT8D9XH&-XV? MY^VFOKU_PX+/0.WU.SU^^^]((N"*4/8PB*7A^[EN*)$93B M_JN% ?.9Z9 9 "/W2@J!USS!$]RI$JHH5+0R4'M<8GO0:_(VF8$QGI9DBF $ MFP]M^R3!(X%+?#O] W4)R40T%2"P]#1/8#*_ZR267 ]9&/J,6$KHT_R24 M&"-G8X..NQ)$B1N2]8K3KQ5C-"\[#*;?4GS2'L:1@R9#J?J_;$;@0PSD4SX4 M,-5P0X24C/S^ZHO'C!F_R>*Y%/Q5Z@;(ON'._WN;34-WQ'Z;FJSB@U:,25\^ MA..JTD/H06 U$5@[K:^B,MH=XT!^@8K2]Q(UWLK6P3/;NY,CUFFQ/K0^=FK7I.<8>3]^N: M _(,%[2@U./?JCV16/-M>K;#UIY&^7;:(T\N3%3]8'">B4LS^KY^.O.NIX%C4K-4_^M@@@=<%R&:E;L>#: M["=ZMJPEZS%SM]W:BP:O.$*@Q1,S#1^_K]YW7B'"XK6OFDJX\/MY%&"+N]?S MP6E$JU= M2:W&CVOBTA;TY,?< G]F$\-3NT>:<]^Y8(F4$^W<.R0$[C\]G.PKX[K7GC#C M_%A"EED25;YQC3CH&5#_&^TB\.J?G0IV_": N9T+P-8UZBP). MD@W:VF>3,:X!<&7/W6\2-&>^\ &<-A2 0[=,X+A"GYCXQANM+HU(9P>E&RE7(,B44$'IFV&R\YB)%B.""0@);B,MAR 1WF[76 MQMST7-7C?A]$Y-!+\&U@"\M9ZJ\C6VZG[)P5CFF-GNF'81\T7A?'_E'0457M MWR2>^2\$"W*W?+9QZ7I5'_0&@U7N]FL 9W MA-V5Y\ MC"SIW.?-X)SK8>HQB!+Q=*(*@NFFKOKMT+Q#U^"IN(6.D&IPZ@F5OALO9FB( M:LM)@G_W4U\"F53@/)6K[U2%T89>J\B[5,'M(&?6>FFZ1U9^E:PAY"G=^<=C M\2&^9:(Y(4+;>5>MLHYF3]TDC9K*24'J"0;UT=>3:JDQ_P;K 6?M!UJR*GH)&XG)E-,Z&U/3K) M[KTT*T99=MAO7/;_3V(??V+_.V-O+.^J??<>%U38/V_\2\;BE58FW[1NCE]$ M7.R$K\ATL\(E<8[6N.6/9OG1KZ6+W<[L]&J.:15R1%?/$2KC90=[DE3P^RD( M]=+78O4L]O"36I,X/)!3Q5H\XEX\XO%4H1<;W/2KUUV884; 5]_=@.\-#5Q! M=;GGY+=GK]W"RO2KMB%#)[RC&C\ M@0>SZ18;^#>)6?V;8L=K+@-+YJC\-^B2"6-O^86 @&=?\@MH"6M&%(AGF;/ M3\OE&UJ][Z]3;.1O,;,8QR8LEGB*3I+K(+=LE^KD*79W\C3$(HHKF>?@M=N+ MI,-Y_JIM#LL4X'4XLD0U'[BG9A0O [QG@28FBLLV)&<<[+9U;BK<#QHIQ312 M_>3?.'#A9F _URKFZC6^1.(E6 OK'SR3,%7GCR4D57H0.#LYR3:?6+YQW]WK MV]T >>FK"WPY$QG 01&6)&O3K%!JWMA?L"\7\64W2]0B!EF709(0W M# I\*WZ$] D2!J M 100L(A;/UEZ-NBV5%]>R8[M'K(,;A MW\4I &"@2KEV;SEE&@@IPK1ALUL/ M:<[D=E%B\I:T[N8Q45*!3\INA9U]T_C\A(3!T)";&9)JO%8+=MA<8>>,NVP6 M+EHX,]ZX9/*#64 ETV&>;4*SW!DSI7/GM;6^K^9?R+%?CXS(O9)08&_,#CLJ MG$BW:DA@G)O?^\"BS$FF)7\C1^^WOR=\]X\M^7XOM7BC\#;1 /B[_H:X7=:Y MY \KW!V##^C KAMO%VK!=&6"DTB.'1RZ)K3 .G7RZIXSD8IA^3>_,ML] MDU<5))RO8T//S?7?DQ/:AX23?IGV4LR&A#CII^&>$I3PZ&KCN;[1_AYQZ=N6 M$)S_2OJD5)37/]6+WC"P2F^QW-X5?_[NY&?"6+RR.!(P-L8 ?]L8LI& M!5?\(KB8,\6_L#B]T.- J?=V/].BDJ)F^[N8QB.>^?64FA.EK%A])@K8)Q^J MVGILY+%VMPGX7Z)/U66 MZ,/MYG]U%@%/(6E' 83S34;T8V84-K,?#8HH[529KE0 5Q\/-AL(3N#EA*+" M+(&NY #BROW3=-ABMRC7S0[<10T.)O 9A5#E'!Z$&G)[,68_?SU2-9"D2<$G M0MBO(@Y-/N&N=L>7\5;YE0SY36+0/:EV#ZJHZ%Q][J^9YJ1!M.K9^4BS4_8" MUM31O,@N[S)U\1'G69B=T/.5%")AH^ST?[3:\]JAC/'$ M4TG_BN&*SC2")3_<(=-G$&F1_+A[+PU;:%^L2!VZV%P\4*BO^Y,^W#JR8/N! M#<<@I4.XUIN.UC0J1]KY-,5]'X;[[_G0MIRT0Y>\%*=.E!Y>>9=)SA!_J^VS M^CIXZS4#36!_JV;"TV^O\.(]A1087/P"%N%,YVH!ZE,"C"HOT_327E@:"C(D MKT3IOM18"-:)I>#L7S:1&Z@5N1V'-C4B\U*T"HBMV+RA[C>^>\42?8]*\4J/ MY&+S9G+[QJ& 0P&PC30*$-^'P,B-D6R^OVREJ[-00(:K,1R/%P50R)U5@8Y_ M_+S!W_T3_R<>?8^1BT'GT"LV_JC:^S]3>O> ZX." &1(BHAXS=VFU38SX=2/]*Q\[TYCZ!.JXWG M@T\/7OJ\E'.5XECVZEQV-L8"6T2*0>-;:HL,0*3P'S]Y'8L,R*_H6F#AKBQE M/#YOSG"HAA%\<&\H^$,J^G8J460_=5M=8^*H;,9Z\*'8V\ME0K0,+!>IV6'P MD%@9 C,)!826IL)[GZ1U0&GNBT*J>8T&!@X>Y#UYF51=>L 3GGUR?/R?C)!- MS_^,-EE*;:9/(=$544#GR'4)#N*X 06T*H#AJ7\)ODP&(-T7P,NL$(02Z-<_ M_C\C-W]B_P5817M/QC$JF11YNNLUGH#C5QSH7>XW()(+PHX;=WZCOL^"'EA_ M_0W@XO%K5Y+[5^\7)820;Y6M,%)OM$L\^:F8J-EN.)-PS"*9Q6=NLD-+ZLT5 MFGGF!;,K@'X8K8[D7S)H[*"9%"30N=O,<[ AAO, RM^)*$3W:T5OY@P#UFB@ M47$9S(8*K'51(P;* F9'74D9S$7 SCOTP83%2Z:3 M@@_OD;9ACM$:EMB^MNVS87K=DS2 KB/P 02)R7&A5,6AA. YO6D<3]W0;YQC MJ-MG#E=*']L]>^VR(!)L'8PU]ZE2:#&TBIS+M-V'(KJ]YOSVTJ+U>>U+/#MG MHL?=%LF!^%D7EF'HA;Z VA@[:YRKY3^OPJL>% JF;)* ?7GLK6W<1%K0ZS\K M+C!%+!5( [%SPQ"/-8CN+INE483K5\J/98FB@ B>;XD-,BTZ1<(+_+9K%N(< M%VDU."S1<*LK\9V6>X?H;C]7QE=UILPZYBR'@FJKC KIY/H=9G#Z1=,[#W\. MM[4+3+)07YB,>!=XN+OOOAOO5!B84=5.TA[Q0 &Q?E_@O-V@ZC=%]F7PH2'8 M4L=6YN"W8>CK"L.H[ST!_E+KGQE)>@&1LCP!"0(5V(]XVZ]66N^FK<[Z*KC< M:*QOC(!X_'B&DA& YM>:6_Q IV_%%K/^54W8##AM?R:7GBS77=A=8@Y9H_"TKG>#^-67])[]R0$-PT/67 ML7 LV*F-^64L6O1#Y_XR%FCC&5@"G](35VSONABQHL6WEJ6WL/D,-^2%(AXC M,>%*P*3S!7^2:+M)R>[4%RK3HSBQ^@LYZ;H,D06+'J8'UX6GGI$8;4;@8'$T MBN2RT[Z/10O$.S@&9"C@?ML/DA^/'Y5YPRU@E3=K$P\AF:H58,FL'B QGFQ5 M"KKZL7 =+#V-?ZY)K_M^L[/4.OW.B/O C7ZOAD3&,^X=C;H$Z[J>W.P-ZM9: M\)%#>L;M"Y^TEL[3\&)-*";E/W%SR- AXM-+(S;(.1 T#$H'N>VH-][YM^G/P#BD MA=_M9@_;>6E45.R=B"1J,9-ZDW*VK]J1\$24U..\F$O[2W"TA%5^Z5[N13KE MN]-R_K7/..S-<;9('"L9[;%J F]]E>J6JO@?U?6A;\(>X\Y'H*D'#-V.JGY= MHZ1@^/;56'CE_,VA/6PF= M9? =8@5,#]P=& JP57S\@I6.;JV"ZY>G1RJ5+)"?A'#V#X%J\VF+R9XG6=X M%JK2E+2O:+<*8R_>MLB;"EVG(8;X5AEJWM+.U>V7& =[G%7R%-A:%%MS%PKE MY705?Q%0Z^;632-!?ZOYW?2]+6\]_&UY;W<.F+!J_!#=VM;56^#.A[VOW[?. M1@U"FLJJ6M3=XPG3R!?]S_BD!;II;/1UTM[K M]227KQ^U)A+=P3E8NP?<8CSO; 8_&Y.JG3W>B_E)X)68^G:D^TZYFT$QEJZ& M&#:0(EQI%EMK22MQX'?@3"LHX2@]?GJONJ"J.W!,K3Z*8SWAKM*T+^6?>^6$CVF(73E41R>JVRR>SG-I?-^X.UV;:8 M8=.PS ^KL)+F7N'SU.:]<7_]]*>J#U(V[CS)E]1C]BW, BB=^OI88XAFX][ ML*+P6D\?82*Q,Q]3_A'YM(;>1E=HI8H&KW)C/!^:$QP4G6)\-N7P^5KIV2:^ M];&51^J33SMBTL);!K_+JDJ?H(#53+\JQ$7&'?^78OH]K#,HH$5C2L+[2L5- M=HYYD>CE=0-O_%M*"A2 _@K\?#G#W#_HU/3(%1']A,Y(U%,M:5#P(N/S;ZB8 MU&^Z;,3B?:6^AP*B07B&O<7O*@P-<#]Z6.#+Y7D,)=WPJDA!BG!&WHXSCJ4N M9S #%>C\U!TAA;_AWDVWK?1!J&;'E8733MWP7Q ,*9%"A(I>QK[-]Q)1U7K&+T!0FZ&HM__H>V'(J M$_:MTJ>I'+&T);7;3XH4XB$82S7^"%;?OB?8J*/:Y \E=7Y3_1$-!41-,AYT M2>%MY]'H[>4V@EUD;R-UACQ@(+BL),T@SYY*-_U^\2J\J493ZGS<[-)U3T\H M%*:M;-BC.,[[R>DX(@>IWXH"3M7V*D4SB6A[$.KV1]$[3!V<>8=3GR =F)"3 M I^@TLPK WT#:Z%#0S?;$FXF35T[K(-DTR?NMOX\[T2Z;0H;KO.\*.Q4DKA/ MAYJT]H<]G2X>B96?=\Z1Y*&(.5N*%T$ZRR81_F-88J&,^L!R M>J.C8=MUNI?V:B:YW$HTV?SCV<]W8G;>7WPEF]&ZB\V'[1C5DU&]M03+/C@U M8/3LULO(RBM6BRO$R9K_+O7\W$01%&BM\2 Z=;9:&7\)"GEXL35$KQ/14E@% M>[Y 4T/W'KF11=DQ*448B(5QFFG *]$C,GZ[ 1S]"1GK:]_^EI= -4XDF< B-IF_49N_MQZKM4V(8+4K'*)V%BNX5@ M6,#+.URVO-8$8677"#DH-ILB.7/6;;&N*XR\S+V0.Q65JMJ6T4ND3KU00+Z_ M)DGC]F'UTCXDO?%R30T)N"@@B?'!+?"2/K^4Z$CM")+;A@@9FV^C53@S4%EU MVV(&6V[=6%G-D'1@JV/E?1(\EQTN;-^ZD6%N!,:/ '?0EG5Q(=F'7#)QO!3S MEW\R<4/HUOP8%_I00,_99'/F[A6T.OKZH=KD_MW]$;TJTZ,'Y=;-TDB=M^HEJ<$?+"LN".G+ M.Z4-X+S+,IR3$4GAD[[0G6A8Q8F2%MP1T%)O'RXZ;),R1%X/6JT<4D*"A9H% MC%UZ(K8AE9O^]W-C2\&U@AI.G,Q-Y%A/8UQ)> 1%:'L,WKL5SD;O_H2*151' M;C3FU9KK9#P#!3M!@' M6W _N94NU@FR/M$?Y+&$:!(ABCC<2%;L WOIWS6ET$3#$^<5:7NN2FE8YJA. M;2F]Y9+@FA:@*\\T%/!\@Z3L&$P=<6,.[8Y0P#8Q^T#H(65RS MTF)ZL]3!M_IK&SFEZT)!6GUS9(KY.PWHA[DE$H5 1)J\.C_/OT)NG]71(31R0; !E?J\BPS-7.18*M4P MR&;,WC9TQ\0L06XU02K7F=KXEA>=QQI6E!?5O&K-D@: MOE/K.%+"".U9SB$9K3=4/#,89NL;._56[HJ6<=55]7CW6*J$:8J.)"P.#$W: M9H7PG3VZAZ#Z!.X"37(CY7*W%Q\-GWIY!UW;.Z( R:TA1*#E;^Q@B^2;!"MN-S\YYD4G]WO?^P)H;"Z* ]DEX&M0^Z64%Y&@J M8LEJQOAJ3\/BN.@;B+BD$AR8._%!]9#&M7@2MNWFTPI)5:KWR;,/N.' MIYS,7 ^I<];[<$88*HQY%97^/- #W?3T]TUZH.*51I5\V"SA/0[0 YLQ?^^@ M'U)Z&6.K4^&G,9"9##+AVRB TN6X7TH0O=HM%=\@ROJZ-$*+NC$L]>O>XH^> MVC_P%G'L83Z\UH<8]M YL3O79VH,).T*X%Q9)!.\HZ@G]+31AHJ=0?/+$XEC M>HK+R4_G\!LKR'*7P,MN*>7&_?[:A19?R_6(,D5GUN[@F49!K&2C091F:<#!\8T*4X9E='2VFA_$4J+@R"TRJ%_;36)U, _G/#4/[A!9DN"K#0+D"\ MU5C*NP^^"^Z$[-V7D%J&WH9T#?(.SL'$2Y44.SW*$($MO#HS&.-6(9L8:,IEH4FZ8D#SU[6FQ=?7EGX!9E&..V=LH*PO>CL M:]\$XO6H\"N +LH'37^"*C<#3VW.ZF6;QL9],:EMZ;OK&"L^'$_%V=#/8).0 M,6AM)*5]S-S8M9<+*9]V-XJ^KVV.FPN_,;?JT/N63)0C50-^#X?,S8FJ(AF+ MNQ19313H'CO$;NLM_5KG1=0Q#/HZ)OQ](I%4XC/R/'#:@5=H\4MAB2W^I!HK MGQD3@W\HV^7,KS>.Y_[!8M*V++K]V^N)BV=B7SG#^6,>7O4:XFRT_LM>AX"6 M7@0/5Q@6S]Q34AY2.@XENRZ%,B_*/JQUH.N64]&+?SY9=>TR/6^5=#8;6?IYQ[5]#P7<0XFI9P]B2L-D>:PFE'14<[U!=U4R M-EJO@H<EBQC*UO6_]^:.!F&<,E#U\CF@SJFPS!F[(UE3]O#L]RHX5_D4(E>.O*:X*Q30NVHW9#IEU\(&5_Y.P1[B=-:#.$HW0P'#CKKJ" >8QLTD M[]R2[ZC0?^X(W^UR+\ZL$(FY09T6E%7,/);*?0 VM<%3OV;O8;H=>SQ)06D* M4OI:JV$R60P^LD<^&\J\BH:A@+6HG9]G8; $R&6EM^/4M68=Z)("O_^&ME71 M#NT[#9S3H8#$KP+(%S:)*"#H+@P1@8GD.Q0OSVR"6$602U%*]<>I3"NVQEU? MVW<.(4_G<5" I59_$"-"\X8[V]4BGXG&ZZO;;R1=I/'[C+U\@5L%Z^AUZV#( M!DN#3@M=I:I 8;ITR[#O[V2)Q?N@*3$>9HCLHHXK B^Q,+X2][(7X)9S!XS+ M9U@J-+L2L!41C(<_^?T0)&YU4G$8EV.7+63@[S=VN U\7==/1P%G M@4+PL=6%I\EW1O>.'OJ.Y"$CX@J&#BE6L#I+*!?91M[BWJ;T5E1^*0%_;?/Y M1B8.N,6-((A/:J@JY-"AD_T=CB8[1#@_%][JH;38%[)%:XB92;!Q&7.9F MEHZ2O!T]MHQS,'U5)#]U;61D]V>PTZCIJBM.*I4T<%G-Z6>X\P3 1MWEQWVXK6I+B6G# M0Z)\/C2J+\G"N2PQ!@_I:91]I5WQWB)QP0D>&N *2'M=K)H7"QKPRJX^/7K# MK*\@ZSJYA69.Q SFG?*HYX UH6?-(&Q"O?]+X>;5%^0;XJ^B>L*@Y@QS<@1> MI+P](YVR1W4O,C9,9@IB,:W#Y9;3J[&\GG>G?)\%J;FS!!M$ 82__!_HV(T+ M1P'T-9D \E8V9S2690Z:7YH ^S%+*@3^ @7D95[!R+>:*'5387&;'F5X:8J=;(C M*'7WJ@80,!6+Z+PC,7H G)"8<=X;YD("AKABCE^V/ #2MYZ<#%[Z107I3VU] M.Q1RD=(IZ3PD15*-TNGF$DX!]"13'71 F;S_Q:T M@@( 7J:SGHF(=D;:50B,(DTJ:?J0;^YQ(GJTXB">^WYEU HUY/Y%<^.]&DUT>M#M*/ZG _-D.&HR !8T0JCRY4\1%. MJ@,L[1X 9UO@?ZW?=[GH\HCB?(\W%QX C'23I \ *?)[C < )LI5"S5HMZ5& M)5=PQX4L2J4J/C@9M*Q87?W+DFRG-J9)>IJLNNO,K*Q/8N-27?YT,VW*GIO4$G0SRP:M M8>89I^R7L(*LH%\20Y1OC']B4,_I9_D)J_TP1PQCMQ\Z;M^M._%DARD0LO#8 MF1K/["U"8&$D&J:O?OVW_X#Y6W.6>B9);+O^O+@^Z1XT^HJK"7% RV0G#+[= M+K2A]KK)-3PLK2R?";,]U=:3AU>HAL+W8/S)R)>]*DR(HUR6JJ",PQQ+X26> M]^)Y"86VYH4[US*#98+S&G*B;HB_UP70L9]HR-H7:R31D+.U^M\K1^P1^/>5 M0_8:2=2"=\T/+].U+;G6]CIHW+90L7MQD9HW:"5?.65(70T3 M8\JVG(IPTUZ4+M>=]MPPRU4ZB>L @)E%BJF81PQP;*.[\']\8+F";B"QD/$# M8(.S\T[E[WGS_R4._FO>_'^Y.O-/X7\*_U/X_V'AXJ;VN+WH@K$B@OM3%WKV\@EX82Z?#**MT)+DW;Y\<$TI:$O-03WFQ95AE[M@7_\).5+^GT MYET\-5_J?GY L M.3S[U?07OHJU\TX%5Y_)5#[:X@(.?K /'ORD,80\#O)J\TGAK, Z":0 J S6 M#> >,>-Z:L4,#)958L"LYOL\LO$:<)X!'*G\$'QKA%(IYS"58]J;953P=)G8 MC[6OBJ!4K7VKVPQXNG@T.?"=%,\11Q,J=5 M]RA>3RC[@/]M>XRG'XA;;84,ZTT7'P7[3Q?B \NWDTI<0L(WLAQQ:!4$T%8U M3,'5*,_>R]SGYX?^TU7GAV9J?&J5]OB]XV#FOZ*<@!?TPSNM#,Q$P, W$S:? M[\0N0>L8O^MMA:X60&5&?THT? MI+Y)5>%:#WK]F-]5D5O_]Q1BRJHVQP%XC M/(MN2\>/BG5UL!)^P?4EFCFQ:)7_W5!T?CP@.X^]Z^9CX4ENL!NEN]33!E9@ MP(N]TV5CN0I%5PEH%H'X08=+XE#F%A.#0=$VG0K QYITQ-OB'J<2"XW_NG6[R%D0*'$3O>-/VE\J@_S=.[WOK.;DU1CU MU3'3;;H&R1F1U:R2'Z=&OZ#S#R#1P[ZQ>HEL9,=OKU^C3X!6!+^ M0#3F;?P"?DZ"MJ9AJH9X #RU;64MKHDGI! XI#8&^;YQX-16H$EF$ETU'B@$ M)%,SUL=]HTGR&J]BZIWZM4X)E5/!6U?[K#V3(U.F;\J;>E!9UK92W6^^,83I M0%N;W\54$.CC3KIK1@#>BD!;HN M"$Z@%GIOG"*JV[2JO0S?S5B;<&Q.ZB1-SA^5R%0%N%TZ5)>" DD MLZ@?X8?Q[ MJB>?;>B)N(,^L$Q3([J1*)\FY$BDAAYY%0[A"4"JO:\]>9I-5E'R;G9YV6!U MUY4YW.XY>CAS0^>J92IF3L?@=%O!S<<+T_><_G+]T750=C M7#6.@=ARZ;7;P9;Q'CK-E@F+C"U@'I6H>SJ(Z!EGT>S'68@L#=".=%F)0+5^ ME)H#O%3SK/NTVRS%8PM3':=IVCB\SKH Y)%Q,1E9&/S[G8(^<_B)IU'K.SY/ MAJ& -;&89RXZ7LQXIZ.Y!/IV&594W%#&X6]VAMPEI7:UQEG9DC)\;0RN2=^7 MNYG?1Y2C>USD$>65UG!\1\YGNVZ]Q =%)NS=P!/L:?045^"MU MZ3QA5? 4.CX=;&1+^N5)U=-!=+_$?-G31\IOX?"A+(#.=O"IE0V=*G3V%G^S M8_&0>Y=%1Y)= ?]I2WF< 3C^5<-U MU$S EN]X@&W$DN<&1> V,'HS, M?R.60:^J2O@X+>&?2Z'D(;3@XJC/@V#.-158'9<=_M",K*.,"/:;'(%!\T(: MBT#1$?9_3"? L!.34(7-B" GI>1)#3]<.M#!TH?A:_XF$8S= 5\;TA@!+NI> M_S?PB\FGD9PL9)H_UBN9[M\*'_U".HG\.2C%3&=.17>PJ09(J$:?+J\3R"#6 M/],]AT7(-KGG4%9F&L4=_(%FFS,K<)!FF60(;&,S2:( M),/HMGGPF)LIB3R.VL ,U?3>PNKM)_%JP);XSU"!>/Q(IO"CM8FMWJ8<6NB< M^Y=FZ:F55?XL%=$M8B6V8_YFX@'!H9''+YV)1N:^0-%Q,6V.+GCT--82C8 &O['(IW_U"K* M]CP,UW(EP@OML/[$]E#L-K9&6<7)2>BD!&'Z4D'E "Y-#P \\>?ERP9&:R@Q MZ;:FNOAA:/2627&A,))_&))HJF !K='1*T^)V.-B2%616#@D\&C;@ !]YOB1F1XB$W9/E5L1U2)3*D] M\/OED9CBO%'Q>6+7:/Q'5NBO/()5C%X?A3"!DP\%=AZ&$I$6F_,]J_21O/L> M>1AL\PVE_]#.Z ($6(#*!Z<93!\(.H/8,]#\')*]^9[&908MK6UEP L"11I1 M=@B;YS)Y6)A ?F0U<-9MHB:*6HV^XR9F9F$@\)+IM[<74>M^KFL;8DL;6 MQ&OELDQM88ZO3+9IU('=XC;M( UI2K(UHBF'"]"XYOJ[V3SX\7OH^(%N8N5L M"GV9)P97,!HE&^9C1]V)(;]!JP8K]^DHIFLN(J/Y[,E%(9K&#*KJ493*A.TM M6U W 75L*TG*Z<,+0OD;+M8!X*&<#H^CYB)FVOM"/!8'ZRX:P&)7N6XN$018 MLFA@L(0"*30VU#7?6A<]^_$N<7GR 2!AJ=ZL]P"P-;]=D/E/\76\Z\8J^IF! MG^F6[*S-G%7@4OMY:F+#X1-,BK%01PX9)D?G<0<-:9H'0$0'G9=>#U];*WFX MFQ^9 2[WC7NH[D$?-B IFC]P3&I#8;[23I)P2@#-7V"<2&56/J__&*NXR-FO M.,[%:@G[;'C[9]E%530[!E#FT7TB0/J';B9TO8J-\1Y##ER:F"9]9%WJ@&$= MM@6,F3+;]:<0-L2J*EA!"=D1^\W^!9"YR<,'HC[*6#>*[:ZNR(SNXET='0W8 M.?(G0_%=*4)GJL69\B:+EV!*3I;LD#LAB=&-ZDHZI( N[R:E4.E)X0AJ>","\J?0=U\T MK5FKP&0DAB@%YS2D*3PEL9"K1Z$"RO%$=EJ_>C\*[#D4@)QK ;DP8-,.7IYS M%P;MJYO92\F2UR_@?T5_W< 6V(8-6?5K7G]-O$E;A#@FG>R,GN MF_ RI[)5+ZUW+?"J4 O\X89?IK;!EJ-+.RZP3[PA V^J4Z,?S1[I%'%!_4?H MYEAVUK'&;0HK=FP^L2VU>4#\&].K*;\5M^+<[AO"^8:EOB76;*'JJ,N"LKIJ1I'2!!O:8+?FE"K)?VI4DEL]=7FRW2=IT5-3%ZZQMO//=HXKC^1 M%][:R.8$#Z:7"U L*5:BU4YH4^3]SP_6B^%,;)1[R48W+R/..PGLZO:6A#+M MBO9.DC1G!K#"69BW$20 /B4)X-O_R*T+(T>W1@_9A:%_ M'@"=RO[DUUDOBJ,]=\K3_L > )C7IY.7%TBQI;<+AB\C&5O9">IZ"8@9&T7P M!G28;?+I;:;T_)#UEZ'(ID'E<37Y&2[W3)'\1KX1Q\)G+SD3BBH3%?N-.'F' M) 95)1349@\;*B@X*_/BYF=6,9UE\,+>J;\&8.21W%98M4$SUF09BTHU8C0% M'-$HQ P4K24W@L6H1J 0DLTY#FZ>PMU.A!.\W.WDN=U$ >A."JF6=6[4KJ"- M# CFY':;I%J6Y:XA5JY1VF1]OE(!P\9*.E\A-0?@#0?]:OO;&;?P3!4D6^R= M@LUF[G.[C,8(WP#!XKF!=D]7=$X" Z:D)\6VV;C4BM831)@T5.>Y**T.ROON M63?SC'*[&_?!);"&X.B.U_:$S!GF\A!.'G/0!&!<+V3#,Y2AF7@85&9:LN3_ M8[[I9NYBKGX?!Y"PV%3(J/] NI8JR1JRR:>>J-T";PW?U M=V("2E9(0M_+?.D)N^R9D#KUK7#,OT3,$$ P\TQZ$R; 7 M-5K@H-JA&>*9XOWD?'QS,,^]F.FLW"<+.XMRP0N?1;?&OUM^) VB=5$R MGY.N+82$=?T4V!'6(ZF\O/*&7>TT;?IA\[Q,THXAI>&L;KIJ\?5X'"ZHO6V? M@>9UC[#!W/,.76O M<=3/\=PI;'IK:3=T?J^-DY"5S[CQ3IK8(2C0GR?63)<[K,>Z*;B;U3F"#YB MR#G, T55.MDT)&D]L23;#8-GP^*U)BDGIN-+BTHH6#363$RJ E(;)54K\U\U MJ8K7_:KQA1S47-$I%X$RUF ; <]MA9INH -U=KY@=USX^'R\9ZG1B*Z2>;32 M''.\VV=78KX-=MS\+RX"CJE$)"BM[@W[-=9XT=M%X\JEL/ZP3?2//$Z\P7)K MZN6E#K4,+D7AP\=M*LCZWAR>^0]S[LJ^BTX?(F6I>\M6I:/S/[]Z0A,-"Z'M M/FE^K8G+@1M^C" *=Q+()!1$P L:ZYI]FPW7#=K"+<62#/526(B8DM3&#@:3 MQ^VM7 VQ"WEZC^F\2MY2?2NL_*7;*FXX]LEL1/.MGR4M=&IJ-4PQPL8^8(%E#H M6^V"((I?O*85.#UJ!$M[PE00H:NI05>7M#1RWOTFD*$8 (8( M ,#;52%)_XBSZZ3V5:7V\YKK?UW&6B!'/847MT.3WK>AW35N_^0L"B;YR?$: M;=Q@:7CC9=02=D2)O6CV94KEHLFPLUVY_0LS<3[9G91TYO0U.1S_ 9-E_H; MIY[:M;..'8RHSP.GIJ";CGCN>'^W50F!Y84FY7>WXHX?;;L7^7D36HYC@OY-F&QNELV8]L8OCN)Y1)[ >W]J_ M4Q5[.!B"J)^M!@O\D?LF6NL9M[9OQFZ-*3[T,B'P$#CL[I34CNT4?D^7VR=, MM5B?(H@?=#L0?6H5TYFV$P4I_A2LGLO^A1OYAC!ZX"4ZA*H19,MY\;*^N($, M]/)R]9*,PNJ,4>;V2*B)J=,Q2QV'O\Q_BBH\+']XDU:O^] 2L0-W%,@5V'=N MGVI6*@J7F,;ZP>0II]GS5N?K7;'\F:\>:K8A$(&-7NG>5*..EI>[- M:1&L&/-9:@D2G^+U*EU3@/ J6X]0#:G7;?0..E=TXIB-=;AZE!_@?*DS5UWC M$.I)K+BHS_*$Q@4S)>&[_%-AVG4QO%\/ (2FEX/MEHH^E!UQ1E E[C.^N3+T M/JQWY0ED@5K:I+(/ !@ Y#W5_;G)_?V>B:Q5/H[!NTW.R?+3U4V9UVY8Y;OE M3;SOG.9!/=7"I"L>:8*P1PK=_'(O>O*TRO(!@/OG(BRL]B,47AR,L&C62J)CEOU$J5C2D7.;\Q2#-<<=<,B-K)?]F:D[%R$M4VKN1FD6[6FZF^M+*_(4=2XXJ%T6MZ]E&N>?BA>R I[C9<".)I\^8SX2FUW+.8,TVM=JI/);&T1!1Y55 ME;LS1T4-P12',83EJP';_0W>G%4N6 2!'!/,Q@BNBUPO-DEY^$S6");]#-0P45E*54)-W, M#*W:@8554_CVBG22)+K_F?VQNCZQ-.5/N@;4/:F7/7"@15DLQ=6E"40!YX:4 M%A'M^A])\5O9FST="@3RE9F_#^8Q0%'+UR&=D0VZ,[0OAD!.]>/.S&-,#MM. M'CP#7C_C>&/P %LL2 =7B!R5UN2;>MU0:?SP;72> M&P" Y;I.>#Y;\5NH@V;.?=QBV_:U,DOLS6^]8588_HC>X5-(%PT#M>(H81^? M0TR>_Y%3:*MNM>F6,0Q^H?(>Q%2BYDE7[&[+&B)!H#Y25_$,>S,:%J<*>$/F M3A0F20,_<@.F;\+]I_.[P.?7%G/'C+8)I5I)WX.W ]%LAIG*!-!V30GC?ANW M(DO"'*'9]A(8"-L9SOZ^0K5V)+G#@ZUB4, K*WLMAB^G9L/43X@_D&=J_ MD,9+?HG^RM\5)I\K/"''BZZ[UR/4;/223U7ES"*Z+CVNJ-[*'[1^_&((\A4: MK5^A[9KDK%16_.$APL:2GOY9""_0[WI\KC'.^*( MH66HYT:,C8AD3@KHGLJL]^49HN(!L/ZU$[7C[OD > (!ENW/['N*6@[[<>:X MJERV!*UF;7] 2N']_H4Q(BY;-GJBUMLJ6860T-*8I[T2 MY[AEC6TLSSJB)UO2J1!:V*3Y] !P]"K'-_HR;Q$],W F.^?>4M!8#^-KG-U5J \%ANBC1<.U&=F/8X.^,L.I4T4@^^?!,%?^3H MA:%N<1?[5!CR2N:$)DUSS:#5V$2 AVL\>ZRQ/C7",[5',=U '^=#@@S]QK:S M-(UN[ G"_17DS96HZ-X\54=&VKIM2XL;X]O*21(QA$YZ L/(D8$(SNARTFMS M5/XFB.CY[XS5RVP"(3U1U4S)].)5D+1TA< L^T<@]L[7V+R!SV+\8&VN 0FB M]R@9!)CT@+"J^%=TGP6U'52Y!7Q3AU7@_5[$9-#.7=KA298IEU"(_]J@;)3M%\@8.<@A!/#'ZM]9Q5@>YOQUT@K@L MK4N5"3S%&+C+IY^0L8FU.FW!-^L@9DB^ 2[T$1Y<_6O1E*SY 1;8@I-YT&;T MUN0B]SK_." -CUD7OS,&@.5I^#.HH8;8_L:_S)^G8]4BKE:PNMC5,:KMV3JS M"T<=?6+2D[RG.-*HO3*0J/&+<81@?1O,Q)Q+40[D6:$WBSCG%/^9R,X9#3;O-ZQ 88WY6AD+N20XO%& M8Q:+O,HS$4*$=-.U>^2,<-Q#AN^Q9CHP2Q+UX5W9VG27F/B15D1:'7I!0.#: M$S_!2M5T#\8DI>T,N3G'>5"RY/3K' WNZY0>>B#3:P;R."R E5?$%FL^B"WJ M@*LA$NS$Z9;N=)!Q=%B0M%'),%HN+BUN7DM=:/=:.P+W?8@T1/^$\#[=IS4M M)(/=;?5]KQHL9\'D=&7T5:,SAX,<*SWK,&9PK_V7WF;5S76$<%@5G1I0+87> M5_<[F1DX]Z#NW1#3!QKJN^9AF287=@=B_N'RQG6L.RZ[XGTJ%[GR=N@=?$.M/GJ*<5MVP,KZXF"FVP/6)M,M'/A1KW,QA M2A%\?!7NFF,D9#1A7,'4F').2*,>W24MDG ]INQ M? L;&OKA2I=]2.[\#,JHY7+[$L(VIQ.2$90@S?^N[[@A( MV^V7*67RRD7\C&Y3$[QL*OP-YNN63 /5F,D+##-9:=&1Z:CW0?H3W]:Z#VQX M"A=T(WU[A:XTC)E]RE*Y9&]U/'^G373:[;65?0WI&IC!VV*BR8C71@$1*A\? M (;M+2%:M_+?U=>_NL-^I8*_+IX6=4L;FP.P<6C9,=(^(RX:FS;CJ;O6&$XD M,QS6U@_2GGG%G7.5V9*.XBY94A.N(.;2ZBC*[G%1@[H+50+=Y2;M9_:M[WQJ M$T]"$Q0M$TJ*7"!)'-MA*UVTL+=':W?/D#G%[KX2*X;MD\O1F(;EC@R#:D_ ( -01 6 :&1S;BTR,#(S,3(S,7AE M>#(Q+FAT;=68;6_:,!" _XI'U763FA<"K5!"D=9 "U++*IIJXJ,3'XE58T>. M(66_?DX"'47KI%5;Y2&1D+-]?GSV7;CK?["L$<\P3X"@<71[@XA(5DO@"B42 ML-+2DJH,12+/,4>W("5E#%U*2E) J.W:9W;;\VS7L@9]K2O<#A+<1QVGW74\ MU^LBU_.]<]\[0W>WZ--#%'ZN>P^_AM'\;M1,>_=P>3,)4],W%F0SZ!.Z1H7:,+AH M+;%,*;>4R/V.FZM CW1T\T&?)ZND1&5^VW6/@QP30GEJ,5@H_\SN]7Z*)$VS M9YEHEN9+8%C1-52Z][0F#+#T8Z&RX'""7XW,=^,6@BMK@9>4;?R3B"ZA0%,H MT4PL,3\Y;23Z7H"DBY.@[EW0[Z!5Z^4I>%(69C35RBO6H%F_K]M0]6U[S8]J MQOC%C"74:XL%([IQ])31F*J/1^US-_#:?M^)M>'R?X"9Z$,+\JV<]ZNXH(1B M2?7\8H%4!F@&*2V4/GKJ+U._SCA>D4)P%$&2<<%$6M&$8JE];X,H3X3,A:P= MC/(:\5[IIXIWJ$] B26\)^58FTX?YN*TV=T)3^S?0TYAC0E^%\1KAA,*$DVJ M0\%Q$SK^ +1$_CM: D:)+^7L_VNL=!+*2.[MM"@%M7(IIR M15W_&/P 4$L#!!0 ( !>(;ECGE[O<;@0 &T0 8 :&1S;BTR,#(S M,3(S,7AE>#(S9#$N:'1M[5=;;]LV%/XKG(,V*6!=?8DC.P82)T&[)6F0."CV M2$F4Q84B!8J*XO[Z'8J2(WM;MX<8W88:L"3R')X[/_+,?K*L2YYB'I$8?5S> M7*-81&5&N$*1)%C!;$55BI8BSS%'-T1*RA@ZES1>$80\UQ[9GN_;KF7-9R!K MT2P2/$ #QQLZONL/D>L'_CCP1^CN!AT]+A71NW=X_GUIP7J M68[S9;!PG(OEA2$,;==#2XEY0145'#/'N;SMH5ZJ5!XX3E55=C6PA5PYRWLG M51D;.DR(@MBQBGOSF9Z!)\'Q?)81A5&48ED0==I[7%Y9$^!05#$RGSGMV_"& M(E[/9S%]1H5:,W+:R[!<46XID0<#-U=36.D >8?GQ:IHK-+ <]UWTQS',>4K MBY%$!2-[,GF=DG25;N:$<2V0A&%%GXF6W9$:,8)E$ J53G<5_-G*O%V7"*ZL M!&>4K8/#)Y%AOEAW\S NR"2)H?3FKN@7PF(!O<4>5$69G0%PK6M M4^-_ #2D_YYO/K3&<$MC16K?0L%B(%Z^I#2DZOV!-W:G_L#V9DX(D M"%[H[2,2] F6Y 0>,+PG*UJ >; W[LJ0T0B=19$HN8)J0%=49C.G?,NXO$8! M;/I8QH7@:$FBE(.G*TJ*/E@7V7M1N!OV+T+$$:-)@J[Q$^G7,G\FL G7^ZF# MW\I"T63]+8L(2B$5X1I%3;:40"HEB'+(:MXD%@%=D@08 1V!5'.8/#8,#PK M3H-E 8"'KH3,T(,U0$>WPD:#PR9Y_XHZ.(2#M>#P< MC]S7,6#GR6C4&?N3DV.O%K:9&IR,QJ JNTODXR.M.$+D0&"KVM644KP#/P$ MP^,:KV^PC%+D#?NH!FR#)U"935QTF'1]U[P)Y7!>4,P@<1O_M5&:DR0)B304 M<5(46E=']_N#B>\=3PN()>P$@'(M5TG!D'@FLB/7V ;Z^ZA**1B&\QPPT.2 M%NB,\Q+8[FNV3>@]U_K%5+0&S[H63GL:>S7(XY"1MM!"(6$OZTW/<%Z0H/WH MUM08"B4U2*9!5QL*?FY#NBZF;4#7,QU\UHIEJ[61YADH4G$[#ZXK&F'65"_@ MO!)9(V4$0CH[N5'6[.KN&=$1KF.9,%$%*8T!>C9CJY(X#T(XH)^L"B+PM^>. ML<0H;EEQ"'50*K+CY1XP:Z:)6V(-(Q"?:0%G"J-JW?K8F^O:<@?3F:-9#9": MX[EYJOA'S+]'S!TE]29XF^#OP66G<-#YQ6?T^'#61W?VP@#(FY7+OI/T3]/R M7T@%G*99 INDCQ;+'UGX7HYMWP3^YWEPZGM!"UC_%O,Z&)INK@\ACIY6$CJ& M>*=;Z;2'VX3F?()K[U3W+58S=AL+NVUI,]/M2G?[W1ROB&5.,IS ]2W SP(: M'I/VR<3VA^^FS<7*S+EUBVSZZ+HQG_\.4$L#!!0 ( !>(;EB$!.T7=@@ M &#,Q9#$N:'1M[5I_;]LX$OTJ/!>W M30#;LIVD%\AI@#9)L<%M=XO"Q>'^I"7*XH46M21EQ_OI[PTIV8KCM"G:]))K M B2.^'-(O3?SAN;)WWJ]BR+G12)2]NOD_6\LU4DU%X5CB1'YUY]/D7>\8+9QT2IR>1,UG:#O5Z>KT))4+9MU* MB=>=.3G&Z!FA>JO-=6\I4Y?'P\'@[^.2IZDL9CTE,A6_2Z6[*.>\^)E-Y3@TPHCLY=CW]K*OP2&QO*C\ _-.+TQXU+XM4VU2E%Y<9W+J72_O!B^&HP/AOUA?!)-L77E QB: +;" MM"S]DG&_5JG5!9N()"^TTC,I;#=8>EDD_1]HZ%=MZ9DP3F8RX?3JF<[8!R.+ M1)9]=F95@(3=%GBC5\Q MEW,7>\LDX67+.< E1$+*99P[RZ7EO&BJ( Y(TIM'#P^>Z?-'"&A]T\"Y2YN M,:+5>+/8B-YDY 'PC(/.Z>C1X^ MMSZXL_F*76$SE8 ,Z 8XU#A(-0PI-/0# M9N2R $Q6K"JH,@P/9>..1W:W6I0B$18R\V* MFLSYE<"\K3$MRE(8@RD5N4N:@QHDTD#1H!DTCH4E@!<#)I* -IW!*FZ13+!/"P*=-5>QN>07X7A Z>+L@%RV0! M&!$B-[#I N%HCFK3JI=%!F\80C2BLZI2C EHMC#2!:RE42M6 EE$"B(+Q/4: M]37@[-;4(%;J95^76E0*#0!U#3SZZ:RW)^$V9YG22]OPP(B9M Y"VC%.A<%N M6-EMP=DVQMRR]AG1=^'E\-$C>G+C]?_RXG@T_,?8UIBM%1FY.1U$XY[=]]BX M9-P(CT*@2M)K!EJ8L/3*I"%8,C]+P%!XE2>_\N)".F @"M9PK"1%<& \ 7+Z3U'AZM1.''H8QI$QO: M\25D_T!\K4PVJ.W6L8($;+%:R=2?T=AJ:F4JN?'27 ;]Y"->02-5EC2- M]Q'6"R ?#[05,,@A_E"GDA,6*\4IC&%9WHB--D*/H+3: A'_304U1*1!?Y$^ M5&3YB1@U?6*,NK<3OT6L^[O_>_,+G%S(E&C#D;%ZT'$+RE'"0%SB)FUP#:9) M/I5*NA7)JEW3$LL]!3RZUVV^ 3SUFHH"Z M4R 9:D1)[*4F2*L"D?SY#R+:,Y6^&:C)HZ?2Q8*KRGMPPIG(,N0(<@&$V!U: M?RWV[A&1PN-N^>^9@XZ()C8D&5-=N;LMN$_,Y.O6@C*H[,MI-9LVN9EW!B+L M!.P9T^#/X/]6:*6/'OSG 5>W\4G'3+7 ]S4[2? 5T8/4EDZ2RA *6])FQZAS M;1W*Z50?8UD@@/U901EAZ+T[NF2@$_SZ5NO:<.3NPI^0%3?/6/>#53FW:QU( M$<'33Z0^5/K]J,/8BBEY)51]7+;5OOO-6_20E'OZ3#KZ_ST4\%\%I T/NQN? M3"&BS86->R8T?X7FNY7'K*WCR&6<-G8MLWP!AIS/I7-"?"8 3C6$'-6G$O;Y M0?; &,0;2_$,GY11-307?U82YGM*5T7B#];VGW/_GR#W?Z.@T5'DOV+%ZZH-F]ZO'9AO\JHSF._2KHU^ER.';;X<9YBHY6K+WX MG32I:ETBN!VF6N0Y3@-Y@$Y'\7 M<=:_ Y-T9\8O[76'KMQT&I36.QO VDNT4KRT(F[^:6_B*VQ1'FY;T%T;L@1K MO'F39[#!5WV/ATI:UW(\V)M9Z]&&X37?C6O=X/<(([2NL&SAI'4OJ#4R[11] MV1/G,DU%L7[N$2_B*7S)56^)Y7_QKM&ZGD^M5I43XP8X-]<7KC[5?S]/V">^ M,(^PSZO3>Z[P>U*\'O,<](S9>VX0-(:'74:W[78YF\=C<;A>M47@Q[J]V\;> MT\;:T31>N+QF_M"=O1CXGQ^[ALA&MZYA_13;3_S^'^_]S[7O/]3&LUR*[/9] M1Z]ISW(N(6&+)AE\2YG?'9HA>/H',/"$*M?[)JT,DKP)9+3+QZ/! ;:9&H9+ MFNW@DZ\5Q)0G5S.CJR(E[:)-W&"Y=3'X9D4=0$G^*5F(7OW(;EB+:>@,9@@ $TN 8 :&1S;BTR,#(S,3(S,7AE>#,Q9#(N M:'1M[5I_3QNY%OTJ?JG>%J0DDP3HH@E%:H%JT6Z[595J]?YT9CP9/SSC6=N3 MD/?IW[GV) PAM%0M?? "OXM$!^_B>[7R>G.SZUJ=_GDS^]?$L3/OQ\]L_SD]8 MIQ=%?^V=1-'IY#14[/<'0S8QO+3225UR%45G'SJLDSM7Q5&T6"SZB[V^-K-H M\BG*7:'V(Z6U%?W4I9WC(RK!7\'3XZ-".,Z2G!LKW.O.Y\F[WB%:..F4.#Z* M5O]#VZE.E\='J9PSZY9*O.X4W,QDV7.ZBO<&E1NC9X3JC3:7O85,71X/!X-_ MCBN>IK*<]93(7'S0/SR\*C)REJ_+=%A:;(3B3LX%C=T:-5&"FWBJ73[>G&!; MSVK5+].EZV6\D&H9OYS(0ECV02S8)UWP\F4WE."_%49F+\>^M97_$1@:RW/B MTO6XDC,,3K:.P_ICU#'Z'8["!YIQ>FW&A?!KFVJ5HO+L,I=3Z7YY,7PU&.\- M^Z/X*)K"==4]&)H ML*T+/V:<;_5J=4EFX@D+[72,REL-UAZ7B;]GVCH-[GT M1!@G,YEP>O5,9^RCD64B*Z[8.UF"RA*?_LS00IC[6\._:PLKEE]8Q'F7?>". M_6ZDS4M>U+"ZRQ)O_)*YG+O86^;X5 DVU285YG5GT$$3I1J>K)]MQ9/F&3T, M?M/5@N8T8L)58Y[P3*;=QB1*OQU6(C>I.1!\ S#CK'HP>/@[?<^N3.BB6[@#.5 M@ SH!C@T.$@U#"DU] -FY+($3):L+IVI!2R'./#B @#AK,"3H6"5\01%ANE" M.N9T:'>C02D282TW2VI2\ N!>5MC6I2E, 93*@J7- $1/KKW^7UX&]XL"."%<.# M-#R%1TG2N0PTH/$9Q=\6.P):R98[3Y1=FRC#1+3.3O0O)B*D 0)N9@C#1M<$ B,5S:7V$ M1RM1^G%HQW25&]KY)>S^@?A&F5RAMMOD'JJ4R!.PQ6HE4W]&8^NIE:GDQDMS M&?23SW@EC51;TC0^1E@O@'P^T%; ((?\0YTJ3EBL%:4),6KZR!AUYR!^@UAW#_]WYAJ]A&< M<":R#'L$.0="[!:MOQ9[=\A(X7&[_/?,04=D$QLV&5-=N]LMN$O.Y.O6@G90 MV=>WU6RZVIOY8""")V#/F 9_!O_W0BM]\. _#;BZB4\Z9FH$OJ_92H)OR!ZD MMG22U(90V)(V6T8MM'4HIU-]C&6! /9W#66$H7=NZ9*!3HCK&ZT;P[%W%_Z$ MK+Q^QKH;K,JY7>M R@B>?B+UJ=+[HTEC2Z;DA5#-<=E&^^YWN^@^*??XF73P M_WLHX+\*2%<\[%[%9$H1;2YLR\0=KN\][_R>P M]W^CH-%1Y+]BQ>NG(Z1$"H"TD4CK/?A"\ O2/$&S>]7C=QO^JXS5<>PW0;_9 M+H=CMRUAG*?H:,4ZBM]*DV:/@B[ .G#9#<++0G79NH ;X"6_F"9[;CVX?A95 M3V1S_@;:*3,(I5T 4/@$ C[[\ :K'>#])#E7*NY(/U1\EGS59YI*L?PLFZBN#5F"-5Z_R3.XPE=SCX=*6M=R/-A7LS:C#<-KOAW7>H7? XS0 MNL*R@9/6O:#6R.0I^K(GSF6:BG+]W"->Q%/$DHO> LO_ZEVC=3V?6JUJ)\8K MX%Q?7[CZU/S],F$?^<(\PKZL3N^XPA])\6;,4] S9N^Y0=(8[G<9W;;;%FP> MCL7A>M4&@1^J>S>-O:.-3:!91>'JDOE#=_9BX']^[AHB&]VXAO4DW$_\_A_[ M_FGY_:?:>))+D6V[[[A5&81X?@]F'%'EVCO2RB"\5^F*?'DX&NS!F=0P7,5L MIYA\K1.F/+F8&5V7*2D4;>(58EO7?Z]7-&F21)Z2I>@USRN,MZ\=-R7M6\>; M]YDKZ+E>2*@\@Q"+^5S+M'F]AX?]T?Z:6:%LX--EN"?M+UX?_Q=02P,$% M @ %XAN6-3!*J9Z!0 8!< !@ !H9'-N+3(P,C,Q,C,Q>&5X,S)D,2YH M=&WM6'EOVS84_RJ951H%"N*-:RN MF4Y1*/,<"W1)E6*WYONU:UG@$LJ;U)BD"U'.\ON.[?A^Y M?N ?!_TC='V)#F[#Z6')?3:?AF^N9Y7:Z]O3UQ=3U+$U''.PK.*T+== M#X4*BX)I)@7FCC.[ZJ!.JG4>.,YZO;;7/5NJI1/>.*G.>-_A4A;4)IITQB.S M M\4D_$HHQJC.,6JH/JD6P/@T$QS.AXYS6_%&TFR&8\(NT.%WG!ZTLFP M6C)A:9D'/3?70]CI 'F/Y]Y:,Z+3P'/=7XS!X6%)LF6[7 M9.5:H"C'FMU1([LE->84JR"2.AWN*_C0SKS9ETBAK01GC&^"%R'+:(&NZ!K= MR R+%]UJ!7X+JECR8EAR%^PO"J+!/4WOM84Y6X)P8^NP\C\ &C(?SZ_^&(W1 MCL8U+7V+)"= G-VG+&(:]7S;"T9.!%'+G\#&&!!+50JE&YU)E-;942%5JR<%^ M21 5!"KZ&8UI%E%5\?6\+L3&[R%=&Z#*$XAU%VC?9HRFH 6 MT&HJ()HG"8NI*G5/4\P4,)H(&?FG$BO27-1QZ"+@-G>AB_*5*E886I^6J)5[ M5?!;N6?48B)ST^C:>W8X#;1J30NL(BQH8,@.M+M"Q[IK-AC&B M14G*-NBMD&L(ZY(&)?0TCCC0I2)4G73<#AC->=U,MM=%CN/Z&G8H^) &L573 MZ!T#J.I=368[FK09[TPP8LQKA)9@A9XW7*=,4\MHH &8IC L58UH\+[,+Y,H M=<>%QJ=E%IBD&+::\".IU!D?>(=ER/8<^YY,#.%>U[F;K#C?0(YG.3<9L\TB M1=^MF*)F$BL,)&IL(:]W@"%G%?*.#LCA%F$/.;?-MQIFWLM>?VBRX2$HCL&& M4T+J)[(^!UG^#X$L)J" 9[B$"S0/C9F 0L6JFMO #@HCX"Y7M# (ZQHRAL$> MMH$YT%J D /DBFZY*V$"'A',.@@DY%Y"M-APTX=OVK'E3J[X]GY0_N6(FPW0+U#SW\DFE< MRZP&@P^5D(_:6&="4PKR>P0Q800]<\O7U_7!*9SWYK"]!/]OAM\ \!O'_O\5 M]Z]JXV<_1?R,_9/9^#.@_]+&2ZSB%'G]\A&]_\CX537-)] ^,L1M4%C!(L:9 MWC0S@0GAP'=[$$/#6)VLM/MXNAW&(AR_72JY$L2,@5(%3=5MG8CN$NI9Q$S+ M'*9>J[YNZG3[)+9>:1_$[A_QYGA)K6IJP0G,Q0&^DXS4=W4PL/W^MCM4:VXY MDU1'Q^59]/AO4$L#!!0 ( !>(;EA[.4*^;P4 #$7 8 :&1S;BTR M,#(S,3(S,7AE>#,R9#(N:'1M[5C[;]LV$/Y7.!=K$\!ZV@E>;S[]-U#'/UB63.18A%3 M@L[#RS>(R'B54:%1K"C6,+IF.D6AS',LT"55BG&.7BE&EA0AS[6/;,_W;=>R MQB/0-:T721&@GN/U'=_U^\CU _\XZ!^CZTMTK^UUSY9J MZ80W3JHSWG>XE 6UB2:=\:&TFR&8\(NT.%WG!ZTLFP6C)A:9D'/3?70UCI@'AOSKVU9D2G@>>ZOPYS M3 @32XO31 =']F#P,*38,MV.R'[UQ^P8[>RXIJ5OD>0$A+/[E$5,/W_F';O#GF_[PI6/=4K11(@5 MYNB&YE)I)!-TOB(%3 AIG K)Y9+1HENY>"%B&QV81<^?#7S?'4YE!OE\4UYY MPT/(U^A,JJSFEFN]1HE4Y2XYV"\)HH) 6C^E,XA[0JH&+!OQHK"^ %O,Y- O4 I510<:%M8N=48V/C1 M15=8H]>*%:G V4IIUC6[3U-&$W3&!!0R!IC,DX3%5!E0C,K:VRZ",8-U%^4K M5:PP5#DM42O"*HA;$6:48R)S4]/::W9F&@+5.RVPBK"@A36_YW2#)G%Y8PR! MNB#'NFL6FXD1+4I1MD'OA%P#>$L:E 33..(@EXI0==)Q.V TYW7=V%X7.8[K M:UBAX$,:7E;UH7<,U*E7-?'K:-*>>&? B#&O>5A2$LK;<)TR32VS PW -(5A MJ*HY@_=U?IEPJ(LKU#@ML\!0?]BJMX\$3&=\X!V6D.TY]CV9&,*]KB,T67&^ M@4C. 8;(5,@[.B"'6X8]1-8VJFJ:>2][ M_:&)MP=0',,-IZ343V9]#K/\'X)93$":SG!)%R@1&C,!B8I5F;6A'68*>)(50274A'+/8B_! MVH\0SS2SI?DG'=,+=QHJUNA5C+1BR3G."QHT?]I &=*E50TW3;!Q%KS9;;'= M!Q+5#;89:?7+):.;76MM7G4K'R>O;$AZ!!I:#=$>%UH->TNS!&T)E^L@9810 ML;VV#/F#")Z6WEEK:#AMR[/I7/9/4WQ^/RA_@ ML()%C#.]:2J_@7#@NSW T$RL3DG:U3K=MEP1CM\ME5P)8IH]J8(FM[:..'<% M=<=A>F(.O:U57S?9N'VT6H^T3U;WSVQSO*16U9O@!+K? -])1NJ[.AC8?G]; M ZHQM^P\JK/@\G!Y_#=02P,$% @ %XAN6 4WB!T^%@ PVP !8 !H M9'-N+3(P,C,Q,C,Q>&5X.38SC3&<_0B0D84,1*D!:T?[Z>QX "5*4K&X2M\UUIVUL$@0.#L[[')P\ M^Y]^_RJ?RSQ1J?CYYLTO(C5)N5!Y(1*K9 %/5[J8BQNS7,I#XY&0P[/>?/X.Y+OU')A^)TZ/CLZ.3X;RT,:_?+=Y=4_AQ&%+C+U_-E1^)/'3DRZ?OXLU;?" M%>M,_?1H(>U,Y_W"+$>GPV4QAB^/X'5KS.?^2J?%?'0\'/Y]O)1IJO-9/U/3 M8O1X<'Y>/[)Z-J^>&=[:R*I,%OI6X=S1K$FFI!U-3#$?MQ?H^G(9OIN:O.A/ MY4)GZ]$/-WJAG'BK5N+:+&3^0X^?P)].63W]84RCG?Z/@JEA>X7Z7/1EIF

_OCL: (86WX#^!*@ M5F7; !Z?[ ?ASQ]??GCW5MQ<7?[\]MTO[_[Q^NI#3[Q^>SGXLP)\^&&F!N:?BI;8J*8QUXJ" Y__[M_.3D^%X)]ST M+4)+@X_'ASC/SV7J3"YN5#+/369F6CG ?IX,]I_WTBQ -*T;,T]4IM4M;+R8 MRT( _6DG="YPRHER\"L> /S@$ 9\ZB<1,D]AN!,.I(2:PP(*ME@8(5,#B"CF M,,]E)E<3F7P2[TVFD_7^@/+X&,Z>6,UU,A=+:VYU"N!.C25P +GF5MDU@IXDLG[8%NP69#8,!RE]D22FA*'Y3%S#)D$@DT _D$ZD M:JISD,^ (+,Z'(@;W)'?B,;7#@@4WL.6<95L3>*_1W@!G(#HGRC&WM*J@@=. M$"(0SZ[ 57C\!Z .A.YX^#*@&!Z5%L05;//J,TCA'!3(14(P'S\]/8,UG) M: JS[HW3>*8F9J_+3.'R_6-$[Z+,9J282IB?<=P XF"?Q>HI&\2&N'DK72I_ M$[\ $@CM./+QD^'Y_CL)GWXH8#[@%!>O,;@7#G^&(\,:J7;+3*Y'.L^ 8OJ3 MS"2?6(AI0&%>X 1CUD6G3[JDUG\+'_^*$XUR8QI N= M VXML,U2AY9%G-C ;$D4BH)0\R%TJ6PI6K@ M"E_ R(7\!.@"K*4@CBQ,2F [D:M$.26!N "]T)I](5,5L-[<2G6$(&=E1E!.@&&0LV%J?">G4Q".L$]\#&*_E)FC M<;F"A[DI\.LRUP#=@H\$-!704(';51).KOY0D)JH*2" _#J_>V.]#NB;!X% MI:3H@T;(79FQB*>/IR7Z @VJ,DAQ-6U5"M;3)HV1CIS.%:"EI47L;(WAJTN+SLJ#9EJ4%KX$! M0"YCHR%FK -&#UA.^0;YX=J5;1)4:61!Y+FNPE MVF[D[[E[4V,73I2.9-6FZ)B:#(Q(/.VTALP+0.2']>AKNT_^O!Z?[81Y+_74 M:2)'>DHLE,Q1+@./54-M9$TWN;.2(2CV\T2#:*Z&@EE=$B=VC0=A!?N%X;G) MR>+6&(OQJABXK9[/JB48#@S&;R6(90*CMF==;5^#" (W"AR&K"3-PVQ+'Z7; M]D/RW:*PQTTK:U$=Y& [JUMM2I>A?^!*^+YSA^QG1=OQV]WO\Q[+?IAB9[FJ2L5PKE@"/B*ZKX73B. SIN/FC@&O#0 M!,7FT"'SQ[+)6M4V#H-R1R*--E2+)%"T[@Y,'"BVT0D2V0$CO<"/K79P[+(B MI2FJ_$Q)5X@<5(I8P%'-@^@CA-#&NQ?V%K _;X_T;R?,S[N5(MC WLX9S74* M!.I)<'@Z#KH(0=H(<3:"D101A9\+L^"@:!2;_!:1R&;@[.3,;W%8;?$X IK_ M/['O*.*\ M731^N4 *,E*S@(3=91K5IA$F >F/''T@#VLI&'DLNSR5N593\:I2:.^\O0M^ M$FI>Q7H-CM>9'(0V^O>DWN:2@G@\B):0Q1=M#Y".(%9!3Z."GJO< MQS7ILRU&!"XSU9GZ,ZO@2^]P7WT&2@@; M2^=5K!MU[A*(Q>F4B *4)ASP$DZX/FL/2_PRLD8#I >XR2F'KI 5U: $2YWL3T(?Q[M(C4>03$H'>P2R+0&-/8$A%D?8 MM&(*1B-A]B#$+YS,D+W; 1;K-ZL\),QQ86.KN4$3 H^?K GRI?H+^0FW%-8@ MF5%_"^,=V631ITX#*TB[98(ZB^!/YT_,35=@O^>*_8.+%5 =T%@<_XEY:^[# M1LAC%&*("3KD&QZWHW=_S-XO]HJ1UIKCNO+MWH"V**V*-Z[9AE[PF\K5BN0$ M\C#2.YI'Z38!$;&/)WH@X:G<6.0*_5EP"& 1 YPL::/A MR=*:J2ZD#SP""0-7(-X6QBKO^)/7Y]2,<#^.XP+(*>C-#&:#7CAE-" 2I6_I M*]P JBT?],-,H;'K^C',H!Q "V81*L M.G./AY6Q)!43N03$9KT(Z6"FS,44\Y_C<+KMK_UC2J^"BD<(JHGJ=]*!#&H@ MKCU/]6*I+%,5C";=P4]^*\GF,89,."<7"LD1'GG]LB(=R!\ 8[DX!+W%'*N( MCE8 ]K:L4>"@P=OH>,EKA.=[KY(81Q&3*K0;9J(7>T_#P6^6"5VQK@JCP>&@ M^6!A6!F]N658=K?8VICP]T"8(OV+B71418 <.Q 7NP17(Y53"^8H(;%7V) $ M)SL)' L#XQA7J41Z5TJ=O!2'ELN?6.^_#K4,_1?2[=#Y(0B[;M8\!$4SLQ(1 MRWRF*,;GN75"TVXJH')I?&JLP***$,F5NTX3TVG;P44X_)99Y*HT0(]VF,^W MN':697>,RP>:TI(TNPYH[H99H;9%I08@@)(($"('5I5P'QY*0 M7/'HSDG)F88I,9;!CG:>\L;EMXBN?A?YG].]\S^;KN=XYW%\VR31_ZNXXLE# M7/$[C"O&Q6^4P%=4/[!3Q 49C[$9*398DL*(+/\F"I;UGJK%D(3CI,#&-V.* MW>E:3*+#C]]PP*5K%4Q88'@.-AZ4!$EMCA"0W^=5R#049NS:%1LY!\DAJIJL M84N!VPU0@*'-1G F.:X7)1M1F0@NC$'SI7ZAO$GR(/);@OQL;Y%_':+ UPJ, MTV4P5^X*FP0+X.K.HM![*R1X'9>I?EEN,?Z:4VY8X+DL,JY-*9=LX"TH#T>; M7]^-L09?PP<;/$>Q6;#-$HRGPPLP[%PI.7%>1Y^XW*X7,^5&TO:!'UI4_GAO M?KCK&$?B@H\]*M:Z]O5*]UHH7U/?UPZ#1D[K1B66JNIS[LXC]$(RK 9U;\7' M'-A62J2^,*>NTM\U*21<\.MXK+6!:^28&Q=T/Z]TI;*HB M4?1JRV++"9&?CW5[G%(+]7<4BP,'3>_ CO51J.H.Y[MS8?K496"[ZJHKCC\]QYDM:*L,_%@ASBP MG0E=OI",BK+#;]NR[+Z8> -T#BO589J=*%A)5TDW;WC[U'W3J%E(H&Z\^!-N M9$9%W*I9D%[%6+IVR,DANF#$GD!S/J ;5%C^ LL'VML;:3^I/2_%\([5;=K(>57K0[3@#! 8X3ZRJA2N0&]>:IF+!VYBR MT(Y-*25KV8@&E>%>GB#A .C/YZ M9X 20%B4#FY'L>ZSA*" :(]X,4$'.LM\IA0&;O^ 19QA6YO7/I*?I M&?[4(R<[FM]0=8!3!0D;.0-^=^S;H]K+*?-58'1W)P@'Z2$B>ZHTC85MIFJJ M+-H$24,)1EJM76P8U@LIV@S9X M[",4C9%#$-]T0+F(^7*Z^#4FI-W_9B[*BSE\IC#V,^I)")3>WN5;W8]S< M- -DV^[DQ3&H6)AYIZ5<[A4I;(O5>*8RITK.[??R&O?[J$8K\L6]3>J%+KOX M>']\L439[D\5C0DJW;>M>I[@3[%1Z^N-(@W6' W$D*BTM/[2)5HGF:'$:'1= MQO&5)"ZF89;\Z='PD4!U[%FL^MTM91)^#\*'F1CD2R:73HW"#^.O0 9!#D5/ M4,*0[$1P^V#?@MTSFNK/X#=$S,Q C;QV*"S\EP: FR;O49'&+[\(:#A1/,#, MRW02[P#O& RV0O41=V@1KZQD>,5&'-6= &\ F:,Q25PF';8]H +H' @X"3%?SSU,\1P2B_U6;IK@ M&4.E _&""ZY\33C/PHTKMC!-'99H&"V_QQ\.F\-@# $?A==;%E0)>^2+UK&' MB==L%\LX1,("744@2 ]"TPRM>@S1^,TI#]QAU!TMXV?!@V0FM;1XDJ"-D MA2/BG0>.?^#X'1Q_W=108 M@BD?,S4+Q;2YX17Y)HY \E)WA53!XB6$=ZA*# M>IF\1J1+F'=2.&./"P=C@9TB'CCX@8._E(,S_0E-RD26U.D@\B8*<(1^ U>#"^4P?.7O M4:-/T?,." >=)BI74^VO)4VLD2GJLUNIL\"6H?*UW46JAR^G,)"Z42A5^'!) MDR5.GHB/@P^#RX$X&QX?R,.#X]-#=%6BY\?'5$Z2IXU82QU?&6QGE^[.=>AB MU)WK'D*T5>#UQ[U#M&^Q0"A5BYQZ^@2AVGTM[%Y\Q;>F0+?-H1@-]B=Z8"Z$ M.W4;7,Q?@93F,B&V5/V=HQ!V0V=<6HO5.XO0U*N[+(*UEV_,TFH,5EW.(F]\ M,\.!2;, W):J"U?%1/%S4"YNWXJ.=O^#J**U&2,.CB?5K7.5KDW[;.)'>"IM M,B=]NJU A&K'\)X"X!3[JF"5;A)ZQ9D)B%S/OQO!QX>$28O'SO^;[EZ4>FQ0 M^OUU2:%+1VCH5:J@56L1TK8A"-X8R[$3O.)7^Y/%W>V;:B::*%\V2!=[,UUU MMR*#T5\K;&4,;V.6W5[JQ*7JD1+'#&KVQ7Y%E'8<1%(JVY7 MTHKWX\15;,][SAU5 ?X2Z%Z[X1X+:&G/#)=@8J\CX.,::11>B@Z%0JN.NX]M MR'>^>-AQ:IT; G":^WG@\!;?/MV_Y(M2-ZAI7H)3-A;7J@!;C)_XTKI[Y?6; MKGY]J@)2$GV\2PI#;A]Y?:>_HY]E8[>;??,JQ;[9-I!:+@5>N;O@2KM&C567 M ?.0S/H*R:RSAV36=YC,8IU37W1J\FU]E^KN.U,4-\*.?;=X!\O'2WOA:EM5 M0@!\W6%Q5H&F31@&XM>X4B)X!C/P:JT,UXQ#TO])5;CXL4,S7XR]J0VP/Z ).=$= M,3"Y." M XG5+4"M/HL!MF.B\Y3=/4!]HD(E$%MEML.D;ERKH48MU#< ?T.:PS]] 51< M^U2;Q01.*1^?67&J6L7XJ-5>)FN'NVZ<=/9Q:VZ M8QI]@*$MOMIS3SRQB[2.CP?B'9GBT6V7:[+*QY4]?9E)O;B_X$I-;]0L-0W% MQYU-F^D*6;K%\_%> YPP=Q0FY8=/;;W9CHZJU+<>]:5/=3&]<>0$CDZ5@J5V MY<4H[(;'E.,]FN8:<;RF$3H.=*[GZ9ZVG*>J7]5O<]M>[@?@GYK\$K_C,)<=(UZHU,J'U=\ B22 MO*;$.T7P*2*I[N2]X>/7KFI"Y _NKUR H>9:7;UJK,2'&?H)34ET@:X&&QL[ M?A 5T(V+JNZPZZJA!;,<*Q5+HE8"'ILV4LNA2JO[SD,(3E5G\\>6T/R5U._^ M/8 _E EJ$6/O4P1VR+K0TYSZ6'/U "?P R7!L*Y@+N?^M/79E40#>>$U"GP& M?W#;,F.;K;7PKQG9('3?5H,L_GNZU_-7(JG]VPJ$OZ+G%3<7N:[35/<7/P4A MN%QO6&->[,M@&&VZ-3N^*-ASQW\Y%?]W7\_\# M4$L! A0#% @ %XAN6(^L-JS$% ,-< !$ ( ! M &AD'-D4$L! A0#% @ %XAN6/+%B.\!$@ \/X M !4 ( !\Q0 &AD(;EAB0\$JLRL 'F< @ 5 " 2&UL4$L! A0# M% @ %XAN6#-Y[-N83 W%L% !4 ( !^,4 &AD(;EB_H7;$M'<" - W&P 5 M " <,2 0!H9'-N+3(P,C,Q,C,Q>#$P:RYH=&U02P$"% ,4 M " 7B&Y8Z#0D=GEC "QE0 & @ &JB@, :&1S;BTR M,#(S,3(S,7@Q,&LP,#$N:G!G4$L! A0#% @ %XAN6.#(-J3\ @ U!$ M !8 ( !6>X# &AD[W&X$ !M$ & @ &)\0, :&1S M;BTR,#(S,3(S,7AE>#(S9#$N:'1M4$L! A0#% @ %XAN6(0$[1=V" M9RX !@ ( !+?8# &AD(;EB+:>@,9@@ $TN 8 " =G^ M P!H9'-N+3(P,C,Q,C,Q>&5X,S%D,BYH=&U02P$"% ,4 " 7B&Y8U,$J MIGH% !@%P & @ %U!P0 :&1S;BTR,#(S,3(S,7AE>#,R M9#$N:'1M4$L! A0#% @ %XAN6'LY0KYO!0 ,1< !@ M ( !)0T$ &AD( M;E@%-X@=/A8 ,-L 6 " &5X.3 XML 87 hdsn-20231231x10k_htm.xml IDEA: XBRL DOCUMENT 0000925528 us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000925528 us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000925528 us-gaap:CommonStockMember 2021-01-01 2021-12-31 0000925528 us-gaap:RetainedEarningsMember 2023-12-31 0000925528 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0000925528 us-gaap:RetainedEarningsMember 2022-12-31 0000925528 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000925528 us-gaap:RetainedEarningsMember 2021-12-31 0000925528 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0000925528 us-gaap:RetainedEarningsMember 2020-12-31 0000925528 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0000925528 us-gaap:CommonStockMember 2023-12-31 0000925528 us-gaap:CommonStockMember 2022-12-31 0000925528 us-gaap:CommonStockMember 2021-12-31 0000925528 us-gaap:CommonStockMember 2020-12-31 0000925528 hdsn:StockOptionPlanMember 2023-12-31 0000925528 hdsn:StockOptionPlanMember 2022-12-31 0000925528 hdsn:StockOptionPlanMember 2021-12-31 0000925528 hdsn:StockOptionPlanMember 2020-12-31 0000925528 us-gaap:EmployeeStockOptionMember 2021-01-01 2021-12-31 0000925528 hdsn:StockOptionPlanMember 2023-01-01 2023-12-31 0000925528 hdsn:StockOptionPlanMember 2022-01-01 2022-12-31 0000925528 hdsn:StockOptionPlanMember 2021-01-01 2021-12-31 0000925528 srt:MinimumMember us-gaap:EmployeeStockOptionMember 2023-01-01 2023-12-31 0000925528 srt:MaximumMember us-gaap:EmployeeStockOptionMember 2023-01-01 2023-12-31 0000925528 srt:MinimumMember 2023-01-01 2023-12-31 0000925528 srt:MaximumMember 2023-01-01 2023-12-31 0000925528 srt:MinimumMember 2022-01-01 2022-12-31 0000925528 srt:MaximumMember 2022-01-01 2022-12-31 0000925528 srt:MinimumMember 2021-01-01 2021-12-31 0000925528 srt:MaximumMember 2021-01-01 2021-12-31 0000925528 us-gaap:EmployeeStockOptionMember 2022-01-01 2022-12-31 0000925528 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-12-31 0000925528 us-gaap:StockAppreciationRightsSARSMember 2023-01-01 2023-01-31 0000925528 us-gaap:ServiceMember 2023-01-01 2023-12-31 0000925528 us-gaap:ProductMember 2023-01-01 2023-12-31 0000925528 us-gaap:ManagementServiceMember 2023-01-01 2023-12-31 0000925528 us-gaap:ServiceMember 2022-01-01 2022-12-31 0000925528 us-gaap:ProductMember 2022-01-01 2022-12-31 0000925528 us-gaap:ManagementServiceMember 2022-01-01 2022-12-31 0000925528 us-gaap:ServiceMember 2021-01-01 2021-12-31 0000925528 us-gaap:ProductMember 2021-01-01 2021-12-31 0000925528 us-gaap:ManagementServiceMember 2021-01-01 2021-12-31 0000925528 hdsn:FirstInLastOutTrancheMember hdsn:TermLoanMember 2023-07-01 2023-09-30 0000925528 srt:MinimumMember us-gaap:VehiclesMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:LeaseholdImprovementsMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:LandImprovementsMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:FurnitureAndFixturesMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:EquipmentMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:ComputerEquipmentMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:BuildingMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:BuildingImprovementsMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:AssetsHeldUnderCapitalLeasesMember 2023-12-31 0000925528 srt:MinimumMember hdsn:CylindersMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:VehiclesMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:LeaseholdImprovementsMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:LandImprovementsMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:FurnitureAndFixturesMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:EquipmentMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:ComputerEquipmentMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:BuildingMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:BuildingImprovementsMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:AssetsHeldUnderCapitalLeasesMember 2023-12-31 0000925528 srt:MaximumMember hdsn:CylindersMember 2023-12-31 0000925528 us-gaap:VehiclesMember 2023-12-31 0000925528 us-gaap:LeaseholdImprovementsMember 2023-12-31 0000925528 us-gaap:LandMember 2023-12-31 0000925528 us-gaap:LandImprovementsMember 2023-12-31 0000925528 us-gaap:FurnitureAndFixturesMember 2023-12-31 0000925528 us-gaap:EquipmentMember 2023-12-31 0000925528 us-gaap:ConstructionInProgressMember 2023-12-31 0000925528 us-gaap:ComputerEquipmentMember 2023-12-31 0000925528 us-gaap:BuildingMember 2023-12-31 0000925528 us-gaap:BuildingImprovementsMember 2023-12-31 0000925528 us-gaap:AssetsHeldUnderCapitalLeasesMember 2023-12-31 0000925528 hdsn:CylindersMember 2023-12-31 0000925528 us-gaap:VehiclesMember 2022-12-31 0000925528 us-gaap:LeaseholdImprovementsMember 2022-12-31 0000925528 us-gaap:LandMember 2022-12-31 0000925528 us-gaap:LandImprovementsMember 2022-12-31 0000925528 us-gaap:FurnitureAndFixturesMember 2022-12-31 0000925528 us-gaap:EquipmentMember 2022-12-31 0000925528 us-gaap:ConstructionInProgressMember 2022-12-31 0000925528 us-gaap:ComputerEquipmentMember 2022-12-31 0000925528 us-gaap:BuildingMember 2022-12-31 0000925528 us-gaap:BuildingImprovementsMember 2022-12-31 0000925528 us-gaap:AssetsHeldUnderCapitalLeasesMember 2022-12-31 0000925528 hdsn:CylindersMember 2022-12-31 0000925528 us-gaap:RetainedEarningsMember 2023-01-01 2023-12-31 0000925528 us-gaap:RetainedEarningsMember 2022-01-01 2022-12-31 0000925528 us-gaap:RetainedEarningsMember 2021-01-01 2021-12-31 0000925528 hdsn:RevolvingCreditFacilityAmendmentMember hdsn:WellsFargoMember 2022-03-02 2022-03-02 0000925528 hdsn:FirstInLastOutTrancheMember hdsn:WellsFargoMember 2022-03-02 2022-03-02 0000925528 us-gaap:PreferredStockMember 2023-12-31 0000925528 us-gaap:PreferredStockMember 2022-12-31 0000925528 us-gaap:SeriesAPreferredStockMember 2023-12-31 0000925528 us-gaap:SeriesAPreferredStockMember 2022-12-31 0000925528 us-gaap:StateAndLocalJurisdictionMember 2023-12-31 0000925528 us-gaap:DomesticCountryMember 2023-12-31 0000925528 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-12-31 0000925528 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-12-31 0000925528 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2021-01-01 2021-12-31 0000925528 hdsn:PriorTermLoanFacilityMember 2022-01-01 2022-03-31 0000925528 us-gaap:LetterOfCreditMember hdsn:WellsFargoMember 2022-03-02 0000925528 hdsn:SwingLineLoanMember hdsn:WellsFargoMember 2022-03-02 0000925528 hdsn:AmendedAndRestatedRevolvingCreditAndSecurityAgreementMember hdsn:WellsFargoMember 2022-03-02 0000925528 hdsn:WellsFargoMember 2022-03-02 2022-03-02 0000925528 hdsn:WoodcliffLakeNewJerseyMember 2023-01-01 2023-12-31 0000925528 hdsn:StonyPointNyMemberMember 2023-01-01 2023-12-31 0000925528 hdsn:SmyrnaGeorgiaMemberMember 2023-01-01 2023-12-31 0000925528 hdsn:OntarioCaliforniaMemberMember 2023-01-01 2023-12-31 0000925528 hdsn:LongBeachCaliforniaMember 2023-01-01 2023-12-31 0000925528 hdsn:EscondidoCaliforniaMember 2023-01-01 2023-12-31 0000925528 hdsn:CharlotteNorthCarolinaMember 2023-01-01 2023-12-31 0000925528 hdsn:ChampaignIllinoisMember 2023-01-01 2023-12-31 0000925528 hdsn:ChampaignIllinois2ndLocationMember 2023-01-01 2023-12-31 0000925528 hdsn:BatonRougeLouisianaMember 2023-01-01 2023-12-31 0000925528 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2023-12-31 0000925528 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2023-12-31 0000925528 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2023-12-31 0000925528 us-gaap:NoncompeteAgreementsMember 2023-12-31 0000925528 us-gaap:CustomerRelationshipsMember 2023-12-31 0000925528 us-gaap:AboveMarketLeasesMember 2023-12-31 0000925528 us-gaap:NoncompeteAgreementsMember 2022-12-31 0000925528 us-gaap:CustomerRelationshipsMember 2022-12-31 0000925528 us-gaap:AboveMarketLeasesMember 2022-12-31 0000925528 us-gaap:CostOfSalesMember 2023-01-01 2023-12-31 0000925528 us-gaap:CostOfSalesMember 2022-01-01 2022-12-31 0000925528 us-gaap:CostOfSalesMember 2021-01-01 2021-12-31 0000925528 2022-06-30 0000925528 2022-03-31 0000925528 us-gaap:DomesticCountryMember 2022-12-31 0000925528 us-gaap:RevolvingCreditFacilityMember 2022-03-02 0000925528 hdsn:TwoThousandAndTwentyStockIncentivePlanMember 2020-06-11 0000925528 hdsn:TwoThousandAndEighteenStockIncentivePlanMember 2018-06-07 0000925528 hdsn:TwoThousandAndFourteenStockIncentivePlanMember 2014-09-17 0000925528 hdsn:CaresActLoanMember hdsn:PaycheckProtectionProgramMember 2020-04-23 0000925528 hdsn:TermLoanMember 2023-09-30 0000925528 hdsn:TermLoanFacilityMember 2022-03-02 0000925528 hdsn:PriorTermLoanFacilityMember 2022-03-02 0000925528 hdsn:FirstInLastOutTrancheMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:SecuredOvernightFinancingRateMember 2022-03-02 2022-03-02 0000925528 hdsn:RevolvingCreditFacilityAmendmentMember 2022-03-02 2022-03-02 0000925528 hdsn:OneCustomerMember srt:MinimumMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000925528 hdsn:OneCustomerMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000925528 hdsn:OneCustomerMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000925528 hdsn:NoCustomerMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000925528 hdsn:OneCustomerMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-01-01 2021-12-31 0000925528 hdsn:OneCustomerMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2021-01-01 2021-12-31 0000925528 2020-12-31 0000925528 hdsn:TermLoanMember 2023-07-01 2023-09-30 0000925528 2021-12-31 0000925528 us-gaap:RevolvingCreditFacilityMember hdsn:WellsFargoMember hdsn:FCCRMember 2022-03-02 2022-03-02 0000925528 hdsn:CaresActLoanMember hdsn:PaycheckProtectionProgramMember 2021-07-01 2021-09-30 0000925528 hdsn:WellsFargoMember hdsn:FCCRMember 2022-03-02 2022-03-02 0000925528 srt:MaximumMember hdsn:WellsFargoMember 2022-03-02 0000925528 hdsn:WellsFargoMember 2022-03-02 0000925528 hdsn:RiversideCaliforniaMemberMember 2023-01-01 2023-12-31 0000925528 hdsn:RantoulIllinoisMember 2023-01-01 2023-12-31 0000925528 srt:MinimumMember hdsn:WellsFargoMember hdsn:FCCRMember 2022-03-02 2022-03-02 0000925528 srt:MaximumMember hdsn:WellsFargoMember hdsn:FCCRMember 2022-03-02 2022-03-02 0000925528 hdsn:PriorTermLoanFacilityMember 2022-03-02 2022-03-02 0000925528 hdsn:CaresActLoanMember hdsn:PaycheckProtectionProgramMember 2020-04-23 2020-04-23 0000925528 srt:MinimumMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:WellsFargoMember 2022-03-02 0000925528 srt:MinimumMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:SecuredOvernightFinancingRateMember 2022-03-02 0000925528 srt:MinimumMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:PrimeCommercialLendingRateOfWellsFargoMember 2022-03-02 0000925528 srt:MaximumMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:WellsFargoMember 2022-03-02 0000925528 srt:MaximumMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:SecuredOvernightFinancingRateMember 2022-03-02 0000925528 hdsn:SecuredOvernightFinancingRateAndFirstInLastOutTrancheMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:SecuredOvernightFinancingRateMember 2022-03-02 0000925528 hdsn:FirstInLastOutTrancheMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:SecuredOvernightFinancingRateMember 2022-03-02 0000925528 hdsn:FirstInLastOutTrancheMember hdsn:RevolvingCreditFacilityAmendmentMember hdsn:PrimeCommercialLendingRateOfWellsFargoMember 2022-03-02 0000925528 hdsn:RevolvingCreditFacilityAmendmentMember hdsn:SecuredOvernightFinancingRateMember 2022-03-02 0000925528 hdsn:RevolvingCreditFacilityAmendmentMember hdsn:PrimeCommercialLendingRateOfWellsFargoMember 2022-03-02 0000925528 hdsn:RevolvingCreditFacilityAmendmentMember 2022-03-02 0000925528 2023-12-31 0000925528 2022-12-31 0000925528 2016-07-01 2016-07-31 0000925528 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-12-31 0000925528 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-12-31 0000925528 2022-01-01 2022-12-31 0000925528 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-12-31 0000925528 2021-01-01 2021-12-31 0000925528 2023-10-01 2023-12-31 0000925528 2023-06-30 0000925528 2024-03-14 0000925528 2023-01-01 2023-12-31 shares iso4217:USD utr:MT pure iso4217:USD shares hdsn:segment http://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilities 0000925528 --12-31 2023 FY false http://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilities HUDSON TECHNOLOGIES INC /NY http://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilities http://fasb.org/us-gaap/2023#AccruedLiabilitiesAndOtherLiabilities P12M P2M 2024-05-01 2024-12-01 2026-09-01 2025-05-01 2027-06-01 2024-02-01 2024-12-01 2030-07-01 2023-06-01 2027-08-01 P3Y P2Y9M P5Y P6M P6M 10-K true 2023-12-31 false 1-13412 NY 13-3641539 300 Tice Boulevard Suite 290 Woodcliff Lake NJ 07677 845 735-6000 Common stock, $0.01 par value HDSN NASDAQ No No Yes Yes Accelerated Filer false false true false false 417114994 45510925 false false false false 243 BDO USA, P.C. Stamford 12446000 5295000 25169000 20872000 154450000 145377000 5438000 7492000 5289000 204995000 176833000 19375000 20568000 47803000 47803000 14771000 17564000 6591000 7339000 3137000 2386000 296672000 272493000 23399000 14165000 31537000 27908000 3615000 6303000 4250000 58551000 52626000 4558000 244000 4790000 5763000 38985000 67899000 97618000 5000000 5000000 0.01 0.01 100000 100000 150000 150000 0 0 0 0 0.01 0.01 100000000 100000000 45502380 45502380 45287619 45287619 455000 453000 118091000 116442000 110227000 57980000 228773000 174875000 296672000 272493000 289025000 325225000 192748000 177518000 162332000 121084000 111507000 162893000 71664000 30542000 28591000 26566000 2793000 2793000 2793000 33335000 31384000 29359000 78172000 131509000 42305000 8352000 14327000 11376000 2470000 -8352000 -14327000 -8906000 69820000 117182000 33399000 17573000 13381000 1140000 52247000 103801000 32259000 1.15 2.31 0.74 1.10 2.20 0.69 45385433 44990104 43765443 47338231 47109018 46640822 43347887 433000 118269000 -78080000 40622000 1398979 14000 187000 201000 2655000 2655000 12059 1000 1000 511000 511000 32259000 32259000 44758925 448000 116312000 -45821000 70939000 519749 5000 177000 182000 969000 969000 8945 922000 922000 103801000 103801000 45287619 453000 116442000 57980000 174875000 214761 2000 37000 39000 694000 694000 2306000 2306000 52247000 52247000 45502380 455000 118091000 110227000 228773000 52247000 103801000 32259000 2989000 3184000 3387000 2793000 2793000 2793000 2120000 -2475000 -2259000 1837000 -2806000 659000 474000 44000 726000 1086000 1125000 -3427000 -4665000 2306000 922000 511000 4314000 -1449000 337000 4957000 7123000 4461000 6814000 53070000 46878000 3182000 -1782000 2120000 17000 4000 -5277000 -630000 674000 9455000 4526000 16378000 58547000 62815000 -1228000 3580000 3659000 1922000 -3580000 -3659000 -1922000 39000 182000 201000 -694000 -969000 -2655000 8512000 13000000 100000000 47161000 148054000 5252000 -47816000 -57353000 5294000 7151000 1803000 2144000 5295000 3492000 1348000 12446000 5295000 3492000 4475000 11702000 10157000 18536000 15460000 128000 337000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 1 - Summary of Significant Accounting Policies</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Business</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Hudson Technologies, Inc. (“Hudson” or the “Company”), incorporated under the laws of New York on January 11, 1991, is a refrigerant services company providing innovative solutions to recurring problems within the refrigeration industry. Hudson has proven, reliable programs that meet customer refrigerant needs by providing environmentally sustainable solutions from initial sale of refrigerant gas through recovery, reclamation and reuse, peak operating performance of equipment through energy efficiency and emergency air conditioning and refrigeration system repair, to final refrigerant disposal and carbon credit trading.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company’s operations consist of one reportable segment. The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems, and include refrigerant and industrial gas sales, refrigerant management services consisting primarily of reclamation of refrigerants and RefrigerantSide® Services performed at a customer’s site. RefrigerantSide® Services consist of system decontamination to remove moisture, oils and other contaminants intended to restore systems to designed capacity. As a component of the Company’s products and services, the Company also participates in the generation of carbon offset projects. The Company operates principally through its wholly-owned subsidiary, Hudson Technologies Company. Unless the context requires otherwise, references to the “Company”, “Hudson”, “we”, “us”, “our”, or similar pronouns refer to Hudson Technologies, Inc. and its subsidiaries.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In preparing the accompanying consolidated financial statements, and in accordance with Accounting Standards Codification (“ASC”) 855-10 “Subsequent Events”, the Company’s management has evaluated subsequent events through the date that the financial statements were filed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">AIM Act</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The United States Environmental Protection Agency (“EPA”) issued several final rules establishing the framework to allocate allowances for virgin production and consumption of hydrofluorocarbon refrigerants (“HFCs”) that currently provide allowances through 2028. The EPA is responsible for the administration of the HFC phase down enacted by Congress under the AIM Act.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The AIM Act directs the EPA to address the reduction in virgin HFCs and provides authority to do so in three respects:</p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">phase down the production and consumption of listed HFCs,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">2)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">manage these HFCs and their substitutes including reclamation of refrigerants, and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">3)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">facilitate the transition to next-generation technologies.</span></td></tr></table><div style="margin-top:12pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Congress required that the EPA consider ways to promote reclamation in all phases of its implementation of the AIM Act. The AIM Act introduced a stepdown of 10% from baseline levels in 2022 and 2023, and establishes a cumulative 40% reduction in the baseline for 2024. Hudson received allocation allowances for calendar years 2022 and 2023 equal to approximately 3 million Metric Tons Exchange Value Equivalents per year, or approximately 1% of the total HFC consumption, with allowances for future periods to be determined at a later date. Reclamation will be critical to maintaining necessary HFC supply levels to ensure an orderly phasedown. Reclamation is not subject to the allowance system or restricted from use.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">On October 6, 2023, the EPA announced the latest actions to phase down HFCs under the AIM Act:</p><table style="border-collapse:collapse;border:0;"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;">1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Finalization of the Technology Transition Rule -</span> The first new action is a final rule to accelerate the ongoing transition to more efficient and climate-safe technologies in new refrigeration, heating and cooling systems and other products by restricting the use of HFCs where alternatives are already available. The rule, which applies to both imported and domestically manufactured products, bans HFCs in certain equipment and sets a limit on the global warming potentials (GWPs) of the HFCs that can be used in each subsector, with compliance dates ranging from 2025 to 2028. </p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 36pt;">In December 2023, the EPA announced an interim final rule on this matter, which provides an additional year, until January 1, 2026, for the installation of new residential and light commercial air conditioning systems and heat pump systems that use components manufactured or imported prior to January 1, 2025. Importantly, to qualify for the extended compliance deadline, all components of a system using the higher Global Warming Potential (GWP) HFC must be manufactured or imported prior to January 1, 2025. </p><table style="border-collapse:collapse;border:0;"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;">2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Proposed Refrigerant Management Rule -</span> The second action is a proposed rule (subject to further comments) to better manage and reuse existing HFCs, including by reducing wasteful leaks from equipment and supporting HFC recycling and reclamation. The proposed rule, which is expected to be finalized during the third quarter of 2024, includes requirements for repairing leaky equipment, use of automatic leak detection systems on large refrigeration systems, use of reclaimed HFCs for certain applications, recovery of HFCs from cylinders before their disposal, and a container tracking system.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Consolidation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States, represent all companies of which Hudson directly or indirectly has majority ownership or otherwise controls. Significant intercompany accounts and transactions have been eliminated. The Company’s consolidated financial statements include the accounts of wholly-owned subsidiaries Hudson Holdings, Inc. and Hudson Technologies Company. The Company does not present a statement of comprehensive income as its comprehensive income is the same as its net income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Fair Value of Financial Instruments</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The carrying values of financial instruments including cash, trade accounts receivable and accounts payable approximate fair value at December 31, 2023 and December 31, 2022, because of the relatively short maturity of these instruments. The carrying value of debt approximates fair value, due to the variable rate nature of the debt, as of December 31, 2022. See Note 2 for further details.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Credit Risk</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Financial instruments, which potentially subject the Company to concentrations of credit risk, consist principally of temporary cash investments and trade accounts receivable. The Company maintains its temporary cash investments in highly-rated financial institutions and, at times, the balances exceed FDIC insurance coverage. The Company’s trade accounts receivable are primarily due from companies throughout the United States. The Company reviews each customer’s credit history before extending credit.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company establishes an allowance for credit losses. In accordance with the “expected credit loss” model, the carrying amount of accounts receivable is reduced by a valuation allowance that reflects the Company’s best estimate of the amounts that it does not expect to collect. In addition to reviewing delinquent accounts receivable, the Company considers many factors in estimating its reserve, including types of customers and their credit worthiness, experience and historical data adjusted for current conditions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The carrying value of the Company’s accounts receivable is reduced by the established allowance for credit losses. The allowance for doubtful accounts includes any accounts receivable balances that are determined to be uncollectible, along with a general reserve for the remaining accounts receivable balances. The Company adjusts its reserves based on factors that affect the collectability of the accounts receivable balances.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">For the year ended December 31, 2023, there was one customer accounting for greater than 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2023.  For the year ended December 31, 2022, there was no customer that accounted for 10% of the Company’s revenues but one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2022. For the year ended December 31, 2021, one customer accounted for 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The loss of a principal customer or a decline in the economic prospects of and/or a reduction in purchases of the Company’s products or services by any such customer could have a material adverse effect on the Company’s operating results and financial position.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Cash and Cash Equivalents</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Temporary investments with original maturities of ninety days or less are included in cash and cash equivalents.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Inventories</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Inventories, consisting primarily of refrigerant products available for sale, are stated at the lower of cost, on a first-in first-out basis, or net realizable value. Where the market price of inventory is less than the related cost, the Company may be required to write down its inventory through a lower of cost or net realizable value adjustment, the impact of which would be reflected in cost of sales on the Consolidated Income Statements. Any such adjustment would be based on management’s judgment regarding future demand and market conditions and analysis of historical experience.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Property, Plant and Equipment</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Property, plant and equipment are stated at cost, including internally manufactured equipment. The cost to complete equipment that is under construction is not considered to be material to the Company’s financial position. Provision for depreciation is recorded using the straight-line method over the useful lives of the respective assets. Leasehold improvements are amortized on a straight-line basis over the shorter of economic life or terms of the respective leases. Costs of maintenance and repairs are charged to expense when incurred.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Due to the specialized nature of the Company’s business, it is possible that the Company’s estimates of equipment useful life periods may change in the future.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Goodwill</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has made acquisitions that included a significant amount of goodwill and other intangible assets. The Company applies the purchase method of accounting for acquisitions, which among other things, requires the recognition of goodwill (which represents the excess of the purchase price of the acquisition over the fair value of the net assets acquired and identified intangible assets). The Company tests its goodwill for impairment annually on a qualitative or quantitative basis (the first day of the fourth quarter) and between annual tests if an event occurs or circumstances change that would more likely than not reduce the fair value of an asset below its carrying value. Goodwill is tested for impairment at the reporting unit level. When performing the annual impairment test, the Company has the option of first performing a qualitative assessment, which requires management to make assumptions affecting a reporting unit, to determine the existence of events and circumstances that would lead to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. If such a conclusion is reached, the Company is then required to perform a quantitative impairment assessment of goodwill. The Company has one reporting unit at December 31, 2023. Other intangible assets that meet certain criteria are amortized over their estimated useful lives.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:12pt 0pt 12pt 0pt;">An impairment charge is recorded based on the excess of a reporting unit’s carrying amount over its fair value. An impairment charge would be recognized when the carrying amount exceeds the estimated fair value of a reporting unit. These impairment evaluations use many assumptions and estimates in determining an impairment loss, including certain assumptions and estimates related to future earnings. If the Company does not achieve its earnings objectives, the assumptions and estimates underlying these impairment evaluations could be adversely affected, which could result in an asset impairment charge that would negatively impact operating results. During the fourth quarter of 2023, the Company completed its annual impairment test as of October 1 and determined in its qualitative assessment that it is more likely than not that the fair value of the reporting unit is greater than its carrying amount, resulting in no goodwill impairment. There can be no assurances that future sustained declines in macroeconomic or business conditions affecting our industry will not occur, which could result in goodwill impairment charges in future periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:12pt 0pt 12pt 0pt;">There were no goodwill impairment losses recognized in 2023, 2022 or 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Leases</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company determines if an arrangement contains a lease at inception. An arrangement contains a lease if it implicitly or explicitly identifies an asset to use and conveys the right to control the use of the identified asset in exchange for consideration. As a lessee, the Company includes operating leases in operating lease right-of-use (“ROU”) assets, operating lease liabilities, and non-current operating lease liabilities in its consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Finance leases are included in property and equipment in the consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">ROU assets represent the Company’s right to use an underlying asset for the lease term and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized upon commencement of the lease based on the present value of the lease payments over the lease term. As most of the Company’s leases do not provide an implicit interest rate, the Company generally uses its incremental borrowing rate based on the estimated rate of interest for fully collateralized and fully amortizing borrowings over a similar term of the lease payments and commencement date to determine the present value of lease payments. When readily determinable, the Company uses the implicit rate. The Company’s lease terms include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Expenses associated with operating leases and finance leases are included in selling, general and administrative within the consolidated statement of income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Cylinder Deposit Liability</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The cylinder deposit liability, which is included in Accrued expenses and other current liabilities on the Company’s Balance Sheet, represents the amount due to customers for the return of refillable cylinders. The Company charges its customers cylinder deposits upon the shipment of refrigerant gases that are contained in refillable cylinders. The amount charged to the customer by the Company approximates the cost of a new cylinder of the same size. Upon return of a cylinder, this liability is reduced. The cylinder deposit liability balance was $17.2 million and $13.6 million at December 31, 2023 and 2022, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Revenues and Cost of Sales</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems. Most of the Company’s revenues are realized from the sale of refrigerant and industrial gases and related products. The Company also generates revenue from refrigerant management services performed at a customer’s site and in-house. The Company conducts its business primarily within the US.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company applies the FASB’s guidance on revenue recognition, which requires the Company to recognize revenue in an amount that reflects the consideration to which the Company expects to be entitled in exchange for goods or services transferred to its customers. In most instances, the Company’s contract with a customer is the customer’s purchase order and the sales price to the customer is fixed. For certain customers, the Company may also enter into a sales agreement outlining a framework of terms and conditions applicable to future purchase orders received from that customer. Because the Company’s contracts with customers are typically for a single customer purchase order, the duration of the contract is usually less than one year. The Company’s performance obligations related to product sales are satisfied at a point in time, which may occur upon shipment of the product or receipt by the customer, depending on the terms of the arrangement. The Company’s performance obligations related to reclamation and RefrigerantSide® services are generally satisfied at a point in time when the service is performed. Accordingly revenues are recorded upon the shipment of the product, or in certain instances upon receipt by the customer, or the completion of the service.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In July 2016 the Company was awarded, as prime contractor, a five-year contract, including a five-year renewal option,which has been exercised through July 2026, by the United States Defense Logistics Agency (“DLA”) for the management, supply, and sale of refrigerants, compressed gases, cylinders and related services. The Company determined that the sale of refrigerants and the management services provided each have stand-alone value. Accordingly, the performance obligations related to the sale of refrigerants is satisfied at a point in time, mainly when the customer receives and obtains control of the product. The performance obligation related to management service revenue is satisfied over time and revenue is recognized on a straight-line basis over the term of the arrangement as the management services are provided. For the years ended December 31, 2023, 2022 and 2021 management services revenue were $2.4 million, $2.3 million, and $2.2 million respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Cost of sales is recorded based on the cost of products shipped or services performed and related direct operating costs of the Company’s facilities. In general, the Company performs shipping and handling services for its customers in connection with the delivery of refrigerant and other products. The Company elected to implement ASC 606-10-25-18B, whereby the Company accounts for such shipping and handling as activities to fulfill the promise to transfer the good. To the extent that the Company charges its customers shipping fees, such amounts are included as a component of revenue and the corresponding costs are included as a component of cost of sales.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company’s revenues are derived from Product and related sales and RefrigerantSide® Services revenues. The revenues for each of these lines are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:64.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:64.13%;border-bottom:1px solid #000000;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;">Years Ended December 31, </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:10.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:64.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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;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.15%;margin: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:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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;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.15%;margin: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:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:64.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;">Product and related 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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 281,954</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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 319,019</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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 187,799</p></td></tr><tr><td style="vertical-align:bottom;width:64.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">RefrigerantSide <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">®</sup> Services</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 7,071</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 6,206</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 4,949</p></td></tr><tr><td style="vertical-align:bottom;width:64.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;">Total</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 289,025</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 325,225</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 192,748</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Income Taxes</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is taxed at statutory corporate income tax rates after adjusting income reported for financial statement purposes for certain items. Current income tax expense reflects the tax results of revenues and expenses currently taxable or deductible. The Company utilizes the asset and liability method of accounting for deferred income taxes, which provides for the recognition of deferred tax assets or liabilities, based on enacted tax rates and laws, for the differences between the financial and income tax reporting bases of assets and liabilities. The tax benefit associated with the Company’s net operating loss carry forwards (“NOLs”) is recognized to the extent that the Company expects to realize future taxable income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">During the year ended December 31, 2022, the Company concluded that its deferred tax assets were more likely than not to become realizable. The Company fully reversed its existing valuation allowance of $15.1 million, with $11.6 million reversed during the first and second quarters of 2022, and the remaining $3.5 million through the third and fourth quarters of 2022. The conclusion that a valuation allowance was no longer needed was based on the achievement of three years of cumulative pre-tax income, the utilization of the Company’s $29.3 million federal NOLs, which comprised a majority of the Company’s deferred tax assets, combined with estimates of future years’ pre-tax income that were sufficient to realize the remaining deferred tax assets. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">For the year ended December 31, 2023 the Company had no federal NOLs, as the Company utilized all of its remaining federal NOLs during the year ended December 31, 2022. For the year ended December 31, 2023, the Company had state tax NOLs of approximately $1.8 million, expiring in various years. We review the likelihood that we will realize the benefit of our deferred tax assets on a quarterly basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company evaluates uncertain tax positions, if any, by determining if it is more likely than not to be sustained upon examination by the taxing authorities. For the years ended December 31, 2023 and December 31, 2022, the Company believes it had no uncertain tax positions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Income per Common and Equivalent Shares</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">If dilutive, common equivalent shares (common shares assuming exercise of options) utilizing the treasury stock method are considered in the presentation of diluted income per share. The reconciliation of shares used to determine net income per share is as follows (dollars in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:55.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin: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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:42.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin: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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:55.9%;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 </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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 52,247</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 103,801</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 32,259</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p 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:55.9%;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 number of shares – basic</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 45,385,433</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 44,990,104</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,765,443</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Shares underlying options</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,952,798</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,118,914</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,875,379</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;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 number of shares outstanding – diluted</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 47,338,231</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 47,109,018</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 46,640,822</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">During the years ended December 31, 2023, 2022 and 2021, certain options aggregating 17,172, 28,467 and 2,583,523 shares, respectively, have been excluded from the calculation of diluted shares, due to the fact that their effect would be anti-dilutive.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Estimates and Risks</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The preparation of financial statements in conformity with generally accepted accounting principles in the United States requires the use of estimates and assumptions that affect the amounts reported in these financial statements and footnotes. The Company considers these accounting estimates to be critical in the preparation of the accompanying consolidated financial statements. The Company uses information available at the time the estimates are made. However, these estimates could change materially if different information or assumptions were used. Additionally, these estimates may not ultimately reflect the actual amounts of the final transactions that occur. The Company utilizes both internal and external sources to evaluate potential current and future liabilities for various commitments and contingencies. In the event that the assumptions or conditions change in the future, the estimates could differ from the original estimates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Several of the Company’s accounting policies involve significant judgments, uncertainties, and estimates. The Company bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities. Actual results may differ from these estimates under different assumptions or conditions. To the extent that actual results differ from management’s judgments and estimates, there could be a material adverse effect on the Company. On a continuous basis, the Company evaluates its estimates, including, but not limited to, those estimates related to its allowance for doubtful accounts, inventory reserves, goodwill and commitments and contingencies. With respect to trade accounts receivable, the Company estimates the necessary allowance for doubtful accounts based on both historical and anticipated trends of payment history and the ability of the customer to fulfill its obligations. For inventory, the Company evaluates both current and anticipated sales prices of its products to determine if a write down of inventory to net realizable value is necessary. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company participates in an industry that is highly regulated, and changes in the regulations affecting its business could affect its operating results. Currently the Company purchases virgin hydrofluorocarbon (“HFC”) and hydrofluroolefin (“HFO”) refrigerants and reclaimable, primarily hydrochlorofluorocarbons (“HCFC”), HFC and chlorofluorocarbon (“CFC”), refrigerants from suppliers and its customers. To the extent that the Company is unable to source sufficient quantities of refrigerants or is unable to obtain refrigerants on commercially reasonable terms or experiences a decline in demand and/or price for refrigerants sold by the Company, the Company could realize reductions in revenue from refrigerant sales, which could have a material adverse effect on its operating results and its financial position. The process of sourcing refrigerants includes various procurement costs, such as freight, processing, insurance, and other costs, relating to the delivery of refrigerants. As a result of the recently noted global supply chain issues, the Company determined it could be exposed to incremental costs related to these refrigerant purchases. These costs represent the Company’s initial estimate that are possibly subject to finalization in future periods and are recorded in accrued expenses and other current liabilities on the consolidated balance sheet as of December 31, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is subject to various legal proceedings. The Company assesses the merit and potential liability associated with each of these proceedings. In addition, the Company estimates potential liability, if any, related to these matters. To the extent that these estimates are not accurate, or circumstances change in the future, the Company could realize liabilities, which could have a material adverse effect on its operating results and its financial position.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Impairment of Long-lived Assets</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company reviews long-lived assets for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of the assets to the future net cash flows expected to be generated by the asset. If such assets are considered to be impaired, the impairment to be recognized is measured by the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of are reported at the lower of the carrying amount or fair value less the cost to sell. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Capitalized Software Development Costs</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Capitalized internal-use software costs consist of costs to purchase and develop software. For software to be used solely to meet internal needs and for cloud-based applications used to deliver our services, we capitalize costs incurred during the application development stage and include such costs within property and equipment, net within our consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;">In June 2016, the FASB issued ASU No. 2016-13, Measurement of Credit Losses on Financial Instruments, which revises guidance for the accounting for credit losses on financial instruments within its scope, and in November 2018, issued ASU No. 2018-19 and in April 2019, issued ASU No. 2019-04 and in May 2019, issued ASU No. 2019-05, and in November 2019, issued ASU No. 2019-11, which each amended the standard. The new standard introduces an approach, based on expected losses, to estimate credit losses on certain types of financial instruments and modifies the impairment model for available-for-sale debt securities. The new approach to estimating credit losses (referred to as the current expected credit losses model) applies to most financial assets measured at amortized cost and certain other instruments, including trade and other receivables, loans, held-to-maturity debt securities, net investments in leases and off-balance-sheet credit exposures. This ASU is effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. Entities are required to apply the standard’s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. The Company adopted ASU No. 2016-13 on January 1, 2023. The adoption of ASU No. 2016-13 did not have a material impact on its results of operations or financial position.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In August 2020, the FASB issued ASU 2020-06, “Debt-Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging-Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity”, which is intended to simplify the accounting for convertible instruments by removing certain separation models in Subtopic 470-20, Debt-Debt with Conversion and Other Options, for convertible instruments. The pronouncement is effective for fiscal years, and for interim periods within those fiscal years, beginning after December 15, 2022, with early adoption permitted. The Company adopted ASU 2020-06 on January 1, 2023. The adoption of ASU 2020-06 did not have a material impact on its results of operations or financial position.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In December 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-09, “Income Taxes (Topic 740): Improvements to Income Tax Disclosures,” which requires public business entities to disclose additional information in specified categories with respect to the reconciliation of the effective tax rate to the statutory rate for federal, state, and foreign income taxes. It also requires greater detail about individual reconciling items in the rate reconciliation to the extent the impact of those items exceeds a specified threshold. In addition to new disclosures associated with the rate reconciliation, the ASU requires information pertaining to taxes paid (net of refunds received) to be disaggregated for federal, state, and foreign taxes and further disaggregated for specific jurisdictions to the extent the related amounts exceed a quantitative threshold. The ASU also describes items that need to be disaggregated based on their nature, which is determined by reference to the item’s fundamental or essential characteristics, such as the transaction or event that triggered the establishment of the reconciling item and the activity with which the reconciling item is associated. The ASU eliminates the historic requirement that entities disclose information concerning unrecognized tax benefits having a reasonable possibility of significantly increasing or decreasing in the 12 months following the reporting date. This ASU is effective for annual periods beginning after December 15, 2024. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. This ASU should be applied on a prospective basis; however, retrospective application is permitted. The Company is currently evaluating the impact that ASU 2023 – 09 will have on its consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280): Improvements to Reportable Segments,” which aims to improve financial reporting by requiring disclosure of incremental segment information on an annual and interim basis for all public entities to enable investors to develop more decision-useful financial analyses. Currently, Topic 280 requires that a public entity disclose certain information about its reportable segments. For example, a public entity is required to report a measure of segment profit or loss that the CODM uses to assess segment performance and make decisions about allocating resources. Topic 280 also requires other specified segment items and amounts, such as depreciation, amortization, and depletion expense, to be disclosed under certain circumstances. The amendments in this ASU do not change or remove those disclosure requirements and do not change how a public entity identifies its operating segments, aggregates those operating segments, or applies the quantitative thresholds to determine its reportable segments. This ASU is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company does not expect that the requirements of ASU 2023 – 07 will have a material impact on its consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Business</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Hudson Technologies, Inc. (“Hudson” or the “Company”), incorporated under the laws of New York on January 11, 1991, is a refrigerant services company providing innovative solutions to recurring problems within the refrigeration industry. Hudson has proven, reliable programs that meet customer refrigerant needs by providing environmentally sustainable solutions from initial sale of refrigerant gas through recovery, reclamation and reuse, peak operating performance of equipment through energy efficiency and emergency air conditioning and refrigeration system repair, to final refrigerant disposal and carbon credit trading.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company’s operations consist of one reportable segment. The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems, and include refrigerant and industrial gas sales, refrigerant management services consisting primarily of reclamation of refrigerants and RefrigerantSide® Services performed at a customer’s site. RefrigerantSide® Services consist of system decontamination to remove moisture, oils and other contaminants intended to restore systems to designed capacity. As a component of the Company’s products and services, the Company also participates in the generation of carbon offset projects. The Company operates principally through its wholly-owned subsidiary, Hudson Technologies Company. Unless the context requires otherwise, references to the “Company”, “Hudson”, “we”, “us”, “our”, or similar pronouns refer to Hudson Technologies, Inc. and its subsidiaries.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In preparing the accompanying consolidated financial statements, and in accordance with Accounting Standards Codification (“ASC”) 855-10 “Subsequent Events”, the Company’s management has evaluated subsequent events through the date that the financial statements were filed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">AIM Act</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The United States Environmental Protection Agency (“EPA”) issued several final rules establishing the framework to allocate allowances for virgin production and consumption of hydrofluorocarbon refrigerants (“HFCs”) that currently provide allowances through 2028. The EPA is responsible for the administration of the HFC phase down enacted by Congress under the AIM Act.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The AIM Act directs the EPA to address the reduction in virgin HFCs and provides authority to do so in three respects:</p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">phase down the production and consumption of listed HFCs,</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">2)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">manage these HFCs and their substitutes including reclamation of refrigerants, and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">3)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">facilitate the transition to next-generation technologies.</span></td></tr></table><div style="margin-top:12pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Congress required that the EPA consider ways to promote reclamation in all phases of its implementation of the AIM Act. The AIM Act introduced a stepdown of 10% from baseline levels in 2022 and 2023, and establishes a cumulative 40% reduction in the baseline for 2024. Hudson received allocation allowances for calendar years 2022 and 2023 equal to approximately 3 million Metric Tons Exchange Value Equivalents per year, or approximately 1% of the total HFC consumption, with allowances for future periods to be determined at a later date. Reclamation will be critical to maintaining necessary HFC supply levels to ensure an orderly phasedown. Reclamation is not subject to the allowance system or restricted from use.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">On October 6, 2023, the EPA announced the latest actions to phase down HFCs under the AIM Act:</p><table style="border-collapse:collapse;border:0;"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;">1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Finalization of the Technology Transition Rule -</span> The first new action is a final rule to accelerate the ongoing transition to more efficient and climate-safe technologies in new refrigeration, heating and cooling systems and other products by restricting the use of HFCs where alternatives are already available. The rule, which applies to both imported and domestically manufactured products, bans HFCs in certain equipment and sets a limit on the global warming potentials (GWPs) of the HFCs that can be used in each subsector, with compliance dates ranging from 2025 to 2028. </p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 36pt;">In December 2023, the EPA announced an interim final rule on this matter, which provides an additional year, until January 1, 2026, for the installation of new residential and light commercial air conditioning systems and heat pump systems that use components manufactured or imported prior to January 1, 2025. Importantly, to qualify for the extended compliance deadline, all components of a system using the higher Global Warming Potential (GWP) HFC must be manufactured or imported prior to January 1, 2025. </p><table style="border-collapse:collapse;border:0;"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;">2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Proposed Refrigerant Management Rule -</span> The second action is a proposed rule (subject to further comments) to better manage and reuse existing HFCs, including by reducing wasteful leaks from equipment and supporting HFC recycling and reclamation. The proposed rule, which is expected to be finalized during the third quarter of 2024, includes requirements for repairing leaky equipment, use of automatic leak detection systems on large refrigeration systems, use of reclaimed HFCs for certain applications, recovery of HFCs from cylinders before their disposal, and a container tracking system.</p></td></tr></table> 1 0.10 0.40 3000000 0.01 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Consolidation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The consolidated financial statements, which have been prepared in accordance with accounting principles generally accepted in the United States, represent all companies of which Hudson directly or indirectly has majority ownership or otherwise controls. Significant intercompany accounts and transactions have been eliminated. The Company’s consolidated financial statements include the accounts of wholly-owned subsidiaries Hudson Holdings, Inc. and Hudson Technologies Company. The Company does not present a statement of comprehensive income as its comprehensive income is the same as its net income.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Fair Value of Financial Instruments</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The carrying values of financial instruments including cash, trade accounts receivable and accounts payable approximate fair value at December 31, 2023 and December 31, 2022, because of the relatively short maturity of these instruments. The carrying value of debt approximates fair value, due to the variable rate nature of the debt, as of December 31, 2022. See Note 2 for further details.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Credit Risk</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Financial instruments, which potentially subject the Company to concentrations of credit risk, consist principally of temporary cash investments and trade accounts receivable. The Company maintains its temporary cash investments in highly-rated financial institutions and, at times, the balances exceed FDIC insurance coverage. The Company’s trade accounts receivable are primarily due from companies throughout the United States. The Company reviews each customer’s credit history before extending credit.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company establishes an allowance for credit losses. In accordance with the “expected credit loss” model, the carrying amount of accounts receivable is reduced by a valuation allowance that reflects the Company’s best estimate of the amounts that it does not expect to collect. In addition to reviewing delinquent accounts receivable, the Company considers many factors in estimating its reserve, including types of customers and their credit worthiness, experience and historical data adjusted for current conditions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The carrying value of the Company’s accounts receivable is reduced by the established allowance for credit losses. The allowance for doubtful accounts includes any accounts receivable balances that are determined to be uncollectible, along with a general reserve for the remaining accounts receivable balances. The Company adjusts its reserves based on factors that affect the collectability of the accounts receivable balances.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">For the year ended December 31, 2023, there was one customer accounting for greater than 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2023.  For the year ended December 31, 2022, there was no customer that accounted for 10% of the Company’s revenues but one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2022. For the year ended December 31, 2021, one customer accounted for 10% of the Company’s revenues and one customer accounted for over 10% of the outstanding accounts receivable at December 31, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The loss of a principal customer or a decline in the economic prospects of and/or a reduction in purchases of the Company’s products or services by any such customer could have a material adverse effect on the Company’s operating results and financial position.</p> 0.10 0.10 0.10 0.10 0.10 0.10 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Cash and Cash Equivalents</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Temporary investments with original maturities of ninety days or less are included in cash and cash equivalents.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Inventories</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Inventories, consisting primarily of refrigerant products available for sale, are stated at the lower of cost, on a first-in first-out basis, or net realizable value. Where the market price of inventory is less than the related cost, the Company may be required to write down its inventory through a lower of cost or net realizable value adjustment, the impact of which would be reflected in cost of sales on the Consolidated Income Statements. Any such adjustment would be based on management’s judgment regarding future demand and market conditions and analysis of historical experience.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Property, Plant and Equipment</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Property, plant and equipment are stated at cost, including internally manufactured equipment. The cost to complete equipment that is under construction is not considered to be material to the Company’s financial position. Provision for depreciation is recorded using the straight-line method over the useful lives of the respective assets. Leasehold improvements are amortized on a straight-line basis over the shorter of economic life or terms of the respective leases. Costs of maintenance and repairs are charged to expense when incurred.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Due to the specialized nature of the Company’s business, it is possible that the Company’s estimates of equipment useful life periods may change in the future.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Goodwill</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has made acquisitions that included a significant amount of goodwill and other intangible assets. The Company applies the purchase method of accounting for acquisitions, which among other things, requires the recognition of goodwill (which represents the excess of the purchase price of the acquisition over the fair value of the net assets acquired and identified intangible assets). The Company tests its goodwill for impairment annually on a qualitative or quantitative basis (the first day of the fourth quarter) and between annual tests if an event occurs or circumstances change that would more likely than not reduce the fair value of an asset below its carrying value. Goodwill is tested for impairment at the reporting unit level. When performing the annual impairment test, the Company has the option of first performing a qualitative assessment, which requires management to make assumptions affecting a reporting unit, to determine the existence of events and circumstances that would lead to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. If such a conclusion is reached, the Company is then required to perform a quantitative impairment assessment of goodwill. The Company has one reporting unit at December 31, 2023. Other intangible assets that meet certain criteria are amortized over their estimated useful lives.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:12pt 0pt 12pt 0pt;">An impairment charge is recorded based on the excess of a reporting unit’s carrying amount over its fair value. An impairment charge would be recognized when the carrying amount exceeds the estimated fair value of a reporting unit. These impairment evaluations use many assumptions and estimates in determining an impairment loss, including certain assumptions and estimates related to future earnings. If the Company does not achieve its earnings objectives, the assumptions and estimates underlying these impairment evaluations could be adversely affected, which could result in an asset impairment charge that would negatively impact operating results. During the fourth quarter of 2023, the Company completed its annual impairment test as of October 1 and determined in its qualitative assessment that it is more likely than not that the fair value of the reporting unit is greater than its carrying amount, resulting in no goodwill impairment. There can be no assurances that future sustained declines in macroeconomic or business conditions affecting our industry will not occur, which could result in goodwill impairment charges in future periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:12pt 0pt 12pt 0pt;">There were no goodwill impairment losses recognized in 2023, 2022 or 2021.</p> 0 0 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Leases</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company determines if an arrangement contains a lease at inception. An arrangement contains a lease if it implicitly or explicitly identifies an asset to use and conveys the right to control the use of the identified asset in exchange for consideration. As a lessee, the Company includes operating leases in operating lease right-of-use (“ROU”) assets, operating lease liabilities, and non-current operating lease liabilities in its consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Finance leases are included in property and equipment in the consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">ROU assets represent the Company’s right to use an underlying asset for the lease term and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized upon commencement of the lease based on the present value of the lease payments over the lease term. As most of the Company’s leases do not provide an implicit interest rate, the Company generally uses its incremental borrowing rate based on the estimated rate of interest for fully collateralized and fully amortizing borrowings over a similar term of the lease payments and commencement date to determine the present value of lease payments. When readily determinable, the Company uses the implicit rate. The Company’s lease terms include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Expenses associated with operating leases and finance leases are included in selling, general and administrative within the consolidated statement of income.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Cylinder Deposit Liability</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The cylinder deposit liability, which is included in Accrued expenses and other current liabilities on the Company’s Balance Sheet, represents the amount due to customers for the return of refillable cylinders. The Company charges its customers cylinder deposits upon the shipment of refrigerant gases that are contained in refillable cylinders. The amount charged to the customer by the Company approximates the cost of a new cylinder of the same size. Upon return of a cylinder, this liability is reduced. The cylinder deposit liability balance was $17.2 million and $13.6 million at December 31, 2023 and 2022, respectively. </p> 17200000 13600000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Revenues and Cost of Sales</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company’s products and services are primarily used in commercial air conditioning, industrial processing and refrigeration systems. Most of the Company’s revenues are realized from the sale of refrigerant and industrial gases and related products. The Company also generates revenue from refrigerant management services performed at a customer’s site and in-house. The Company conducts its business primarily within the US.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company applies the FASB’s guidance on revenue recognition, which requires the Company to recognize revenue in an amount that reflects the consideration to which the Company expects to be entitled in exchange for goods or services transferred to its customers. In most instances, the Company’s contract with a customer is the customer’s purchase order and the sales price to the customer is fixed. For certain customers, the Company may also enter into a sales agreement outlining a framework of terms and conditions applicable to future purchase orders received from that customer. Because the Company’s contracts with customers are typically for a single customer purchase order, the duration of the contract is usually less than one year. The Company’s performance obligations related to product sales are satisfied at a point in time, which may occur upon shipment of the product or receipt by the customer, depending on the terms of the arrangement. The Company’s performance obligations related to reclamation and RefrigerantSide® services are generally satisfied at a point in time when the service is performed. Accordingly revenues are recorded upon the shipment of the product, or in certain instances upon receipt by the customer, or the completion of the service.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In July 2016 the Company was awarded, as prime contractor, a five-year contract, including a five-year renewal option,which has been exercised through July 2026, by the United States Defense Logistics Agency (“DLA”) for the management, supply, and sale of refrigerants, compressed gases, cylinders and related services. The Company determined that the sale of refrigerants and the management services provided each have stand-alone value. Accordingly, the performance obligations related to the sale of refrigerants is satisfied at a point in time, mainly when the customer receives and obtains control of the product. The performance obligation related to management service revenue is satisfied over time and revenue is recognized on a straight-line basis over the term of the arrangement as the management services are provided. For the years ended December 31, 2023, 2022 and 2021 management services revenue were $2.4 million, $2.3 million, and $2.2 million respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Cost of sales is recorded based on the cost of products shipped or services performed and related direct operating costs of the Company’s facilities. In general, the Company performs shipping and handling services for its customers in connection with the delivery of refrigerant and other products. The Company elected to implement ASC 606-10-25-18B, whereby the Company accounts for such shipping and handling as activities to fulfill the promise to transfer the good. To the extent that the Company charges its customers shipping fees, such amounts are included as a component of revenue and the corresponding costs are included as a component of cost of sales.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company’s revenues are derived from Product and related sales and RefrigerantSide® Services revenues. The revenues for each of these lines are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:64.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:64.13%;border-bottom:1px solid #000000;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;">Years Ended December 31, </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:10.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:64.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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;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.15%;margin: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:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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;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.15%;margin: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:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:64.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;">Product and related 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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 281,954</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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 319,019</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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 187,799</p></td></tr><tr><td style="vertical-align:bottom;width:64.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">RefrigerantSide <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">®</sup> Services</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 7,071</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 6,206</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 4,949</p></td></tr><tr><td style="vertical-align:bottom;width:64.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;">Total</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 289,025</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 325,225</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 192,748</p></td></tr></table> P5Y P5Y 2400000 2300000 2200000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:64.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:8.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:64.13%;border-bottom:1px solid #000000;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;">Years Ended December 31, </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:10.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:64.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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;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.15%;margin: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:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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;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.15%;margin: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:8.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:64.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;">Product and related 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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 281,954</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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 319,019</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.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:8.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 187,799</p></td></tr><tr><td style="vertical-align:bottom;width:64.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">RefrigerantSide <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">®</sup> Services</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 7,071</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 6,206</p></td><td style="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.15%;border-bottom:1px 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.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 4,949</p></td></tr><tr><td style="vertical-align:bottom;width:64.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;">Total</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 289,025</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 325,225</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.94%;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 3.6pt 0.05pt 0pt;"> 192,748</p></td></tr></table> 281954000 319019000 187799000 7071000 6206000 4949000 289025000 325225000 192748000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Income Taxes</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is taxed at statutory corporate income tax rates after adjusting income reported for financial statement purposes for certain items. Current income tax expense reflects the tax results of revenues and expenses currently taxable or deductible. The Company utilizes the asset and liability method of accounting for deferred income taxes, which provides for the recognition of deferred tax assets or liabilities, based on enacted tax rates and laws, for the differences between the financial and income tax reporting bases of assets and liabilities. The tax benefit associated with the Company’s net operating loss carry forwards (“NOLs”) is recognized to the extent that the Company expects to realize future taxable income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">During the year ended December 31, 2022, the Company concluded that its deferred tax assets were more likely than not to become realizable. The Company fully reversed its existing valuation allowance of $15.1 million, with $11.6 million reversed during the first and second quarters of 2022, and the remaining $3.5 million through the third and fourth quarters of 2022. The conclusion that a valuation allowance was no longer needed was based on the achievement of three years of cumulative pre-tax income, the utilization of the Company’s $29.3 million federal NOLs, which comprised a majority of the Company’s deferred tax assets, combined with estimates of future years’ pre-tax income that were sufficient to realize the remaining deferred tax assets. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">For the year ended December 31, 2023 the Company had no federal NOLs, as the Company utilized all of its remaining federal NOLs during the year ended December 31, 2022. For the year ended December 31, 2023, the Company had state tax NOLs of approximately $1.8 million, expiring in various years. We review the likelihood that we will realize the benefit of our deferred tax assets on a quarterly basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company evaluates uncertain tax positions, if any, by determining if it is more likely than not to be sustained upon examination by the taxing authorities. For the years ended December 31, 2023 and December 31, 2022, the Company believes it had no uncertain tax positions.</p> 15100000 11600000 3500000 29300000 0 1800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Income per Common and Equivalent Shares</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">If dilutive, common equivalent shares (common shares assuming exercise of options) utilizing the treasury stock method are considered in the presentation of diluted income per share. The reconciliation of shares used to determine net income per share is as follows (dollars in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:55.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin: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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:42.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin: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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:55.9%;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 </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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 52,247</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 103,801</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 32,259</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p 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:55.9%;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 number of shares – basic</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 45,385,433</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 44,990,104</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,765,443</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Shares underlying options</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,952,798</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,118,914</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,875,379</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;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 number of shares outstanding – diluted</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 47,338,231</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 47,109,018</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 46,640,822</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">During the years ended December 31, 2023, 2022 and 2021, certain options aggregating 17,172, 28,467 and 2,583,523 shares, respectively, have been excluded from the calculation of diluted shares, due to the fact that their effect would be anti-dilutive.</p> The reconciliation of shares used to determine net income per share is as follows (dollars in thousands):<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:55.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin: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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:42.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years ended December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin: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;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:55.9%;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 </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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 52,247</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 103,801</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.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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 32,259</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p 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:55.9%;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 number of shares – basic</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 45,385,433</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 44,990,104</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.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:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,765,443</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Shares underlying options</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,952,798</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,118,914</p></td><td style="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.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px 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,875,379</p></td></tr><tr><td style="vertical-align:bottom;width:55.9%;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 number of shares outstanding – diluted</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 47,338,231</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 47,109,018</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.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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;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;"> 46,640,822</p></td></tr></table> 52247000 103801000 32259000 45385433 44990104 43765443 1952798 2118914 2875379 47338231 47109018 46640822 17172 28467 2583523 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Estimates and Risks</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The preparation of financial statements in conformity with generally accepted accounting principles in the United States requires the use of estimates and assumptions that affect the amounts reported in these financial statements and footnotes. The Company considers these accounting estimates to be critical in the preparation of the accompanying consolidated financial statements. The Company uses information available at the time the estimates are made. However, these estimates could change materially if different information or assumptions were used. Additionally, these estimates may not ultimately reflect the actual amounts of the final transactions that occur. The Company utilizes both internal and external sources to evaluate potential current and future liabilities for various commitments and contingencies. In the event that the assumptions or conditions change in the future, the estimates could differ from the original estimates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Several of the Company’s accounting policies involve significant judgments, uncertainties, and estimates. The Company bases its estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities. Actual results may differ from these estimates under different assumptions or conditions. To the extent that actual results differ from management’s judgments and estimates, there could be a material adverse effect on the Company. On a continuous basis, the Company evaluates its estimates, including, but not limited to, those estimates related to its allowance for doubtful accounts, inventory reserves, goodwill and commitments and contingencies. With respect to trade accounts receivable, the Company estimates the necessary allowance for doubtful accounts based on both historical and anticipated trends of payment history and the ability of the customer to fulfill its obligations. For inventory, the Company evaluates both current and anticipated sales prices of its products to determine if a write down of inventory to net realizable value is necessary. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company participates in an industry that is highly regulated, and changes in the regulations affecting its business could affect its operating results. Currently the Company purchases virgin hydrofluorocarbon (“HFC”) and hydrofluroolefin (“HFO”) refrigerants and reclaimable, primarily hydrochlorofluorocarbons (“HCFC”), HFC and chlorofluorocarbon (“CFC”), refrigerants from suppliers and its customers. To the extent that the Company is unable to source sufficient quantities of refrigerants or is unable to obtain refrigerants on commercially reasonable terms or experiences a decline in demand and/or price for refrigerants sold by the Company, the Company could realize reductions in revenue from refrigerant sales, which could have a material adverse effect on its operating results and its financial position. The process of sourcing refrigerants includes various procurement costs, such as freight, processing, insurance, and other costs, relating to the delivery of refrigerants. As a result of the recently noted global supply chain issues, the Company determined it could be exposed to incremental costs related to these refrigerant purchases. These costs represent the Company’s initial estimate that are possibly subject to finalization in future periods and are recorded in accrued expenses and other current liabilities on the consolidated balance sheet as of December 31, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is subject to various legal proceedings. The Company assesses the merit and potential liability associated with each of these proceedings. In addition, the Company estimates potential liability, if any, related to these matters. To the extent that these estimates are not accurate, or circumstances change in the future, the Company could realize liabilities, which could have a material adverse effect on its operating results and its financial position.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Impairment of Long-lived Assets</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company reviews long-lived assets for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not be recoverable. Recoverability of assets to be held and used is measured by a comparison of the carrying amount of the assets to the future net cash flows expected to be generated by the asset. If such assets are considered to be impaired, the impairment to be recognized is measured by the amount by which the carrying amount of the assets exceeds the fair value of the assets. Assets to be disposed of are reported at the lower of the carrying amount or fair value less the cost to sell. </p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Capitalized Software Development Costs</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Capitalized internal-use software costs consist of costs to purchase and develop software. For software to be used solely to meet internal needs and for cloud-based applications used to deliver our services, we capitalize costs incurred during the application development stage and include such costs within property and equipment, net within our consolidated balance sheets.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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;">In June 2016, the FASB issued ASU No. 2016-13, Measurement of Credit Losses on Financial Instruments, which revises guidance for the accounting for credit losses on financial instruments within its scope, and in November 2018, issued ASU No. 2018-19 and in April 2019, issued ASU No. 2019-04 and in May 2019, issued ASU No. 2019-05, and in November 2019, issued ASU No. 2019-11, which each amended the standard. The new standard introduces an approach, based on expected losses, to estimate credit losses on certain types of financial instruments and modifies the impairment model for available-for-sale debt securities. The new approach to estimating credit losses (referred to as the current expected credit losses model) applies to most financial assets measured at amortized cost and certain other instruments, including trade and other receivables, loans, held-to-maturity debt securities, net investments in leases and off-balance-sheet credit exposures. This ASU is effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. Entities are required to apply the standard’s provisions as a cumulative-effect adjustment to retained earnings as of the beginning of the first reporting period in which the guidance is adopted. The Company adopted ASU No. 2016-13 on January 1, 2023. The adoption of ASU No. 2016-13 did not have a material impact on its results of operations or financial position.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In August 2020, the FASB issued ASU 2020-06, “Debt-Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging-Contracts in Entity’s Own Equity (Subtopic 815-40): Accounting for Convertible Instruments and Contracts in an Entity’s Own Equity”, which is intended to simplify the accounting for convertible instruments by removing certain separation models in Subtopic 470-20, Debt-Debt with Conversion and Other Options, for convertible instruments. The pronouncement is effective for fiscal years, and for interim periods within those fiscal years, beginning after December 15, 2022, with early adoption permitted. The Company adopted ASU 2020-06 on January 1, 2023. The adoption of ASU 2020-06 did not have a material impact on its results of operations or financial position.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In December 2023, the Financial Accounting Standards Board (“FASB”) issued ASU 2023-09, “Income Taxes (Topic 740): Improvements to Income Tax Disclosures,” which requires public business entities to disclose additional information in specified categories with respect to the reconciliation of the effective tax rate to the statutory rate for federal, state, and foreign income taxes. It also requires greater detail about individual reconciling items in the rate reconciliation to the extent the impact of those items exceeds a specified threshold. In addition to new disclosures associated with the rate reconciliation, the ASU requires information pertaining to taxes paid (net of refunds received) to be disaggregated for federal, state, and foreign taxes and further disaggregated for specific jurisdictions to the extent the related amounts exceed a quantitative threshold. The ASU also describes items that need to be disaggregated based on their nature, which is determined by reference to the item’s fundamental or essential characteristics, such as the transaction or event that triggered the establishment of the reconciling item and the activity with which the reconciling item is associated. The ASU eliminates the historic requirement that entities disclose information concerning unrecognized tax benefits having a reasonable possibility of significantly increasing or decreasing in the 12 months following the reporting date. This ASU is effective for annual periods beginning after December 15, 2024. Early adoption is permitted for annual financial statements that have not yet been issued or made available for issuance. This ASU should be applied on a prospective basis; however, retrospective application is permitted. The Company is currently evaluating the impact that ASU 2023 – 09 will have on its consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280): Improvements to Reportable Segments,” which aims to improve financial reporting by requiring disclosure of incremental segment information on an annual and interim basis for all public entities to enable investors to develop more decision-useful financial analyses. Currently, Topic 280 requires that a public entity disclose certain information about its reportable segments. For example, a public entity is required to report a measure of segment profit or loss that the CODM uses to assess segment performance and make decisions about allocating resources. Topic 280 also requires other specified segment items and amounts, such as depreciation, amortization, and depletion expense, to be disclosed under certain circumstances. The amendments in this ASU do not change or remove those disclosure requirements and do not change how a public entity identifies its operating segments, aggregates those operating segments, or applies the quantitative thresholds to determine its reportable segments. This ASU is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Early adoption is permitted. The Company does not expect that the requirements of ASU 2023 – 07 will have a material impact on its consolidated financial statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 10pt 0pt;">Note 2- Fair Value</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">ASC Subtopic 820-10 defines fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The Company often utilizes certain assumptions that market participants would use in pricing the asset or liability, including assumptions about risk and/or the risks inherent in the inputs to the valuation technique. These inputs can be readily observable, market-corroborated, or generally unobservable inputs. The Company utilizes valuation techniques that maximize the use of observable inputs and minimize the use of unobservable inputs. Based upon observable inputs used in the valuation techniques, the Company is required to provide information according to the fair value hierarchy.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">The fair value hierarchy ranks the quality and reliability of the information used to determine fair values into three broad levels as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Level 1: Valuations for assets and liabilities traded in active markets from readily available pricing sources for market transactions involving identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Level 2: Valuations for assets and liabilities traded in less active dealer or broker markets. Valuations are obtained from third-party pricing services for identical or similar assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Level 3: Valuations for assets and liabilities include certain unobservable inputs in the assumptions and projections used in determining the fair value assigned to such assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In instances where the determination of the fair value measurement is based on inputs from different levels of the fair value hierarchy, the level in the fair value hierarchy within which the entire fair value measurement falls is based on the lowest level input that is significant to the fair value measurement in its entirety. The Company’s assessment of the significance of a particular input to the fair value measurement in its entirety requires judgment and considers factors specific to the asset or liability.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 10pt 0pt;">Note 3 - Trade accounts receivable – net</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The opening and closing balance of the company’s accounts receivable is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:62.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.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:62.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Beginning</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Increase</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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.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="font-size:8pt;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;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:62.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Balance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(Decrease),</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.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;">Ending Balance</b></p></td></tr><tr><td style="vertical-align:bottom;width:62.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">at January 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;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.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;">at December 31</b></p></td></tr><tr><td style="vertical-align:bottom;width:62.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,872</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,297</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;"> 25,169</p></td></tr><tr><td style="vertical-align:bottom;width:62.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,223</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,649</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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,872</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">At December 31, 2023 and 2022, trade accounts receivable are net of reserves for allowance for credit losses of $2.0 million and $1.9 million, respectively. The following table represents the activity occurring in the reserves for allowance for credit losses in 2023 and 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:44.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:2.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:1.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:10.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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:10.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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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:10.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:44.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Beginning</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><p style="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 additions</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Balance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">charged to</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Deductions</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Ending Balance</b></p></td></tr><tr><td style="vertical-align:bottom;width:44.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;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:11.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">at January 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;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:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;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:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">and Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;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:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">at December 31</b></p></td></tr><tr><td style="vertical-align:bottom;width:44.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;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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 0.05pt 0pt;"> 1,927</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 659</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;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;"> (592)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 1,994</p></td></tr><tr><td style="vertical-align:bottom;width:44.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;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.23%;margin: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,584</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (131)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;margin: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,927</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:10pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The opening and closing balance of the company’s accounts receivable is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:62.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.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:62.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Beginning</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Increase</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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.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="font-size:8pt;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;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:62.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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Balance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(Decrease),</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin: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:10.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;">Ending Balance</b></p></td></tr><tr><td style="vertical-align:bottom;width:62.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">at January 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;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.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;">at December 31</b></p></td></tr><tr><td style="vertical-align:bottom;width:62.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,872</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,297</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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;"> 25,169</p></td></tr><tr><td style="vertical-align:bottom;width:62.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-align:center;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,223</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,649</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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,872</p></td></tr></table> 20872000 -4297000 25169000 14223000 -6649000 20872000 2000000.0 1900000 The following table represents the activity occurring in the reserves for allowance for credit losses in 2023 and 2022.<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:44.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:2.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:1.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:10.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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:10.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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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:10.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:44.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Beginning</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><p style="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 additions</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Balance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">charged to</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Deductions</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin: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:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Ending Balance</b></p></td></tr><tr><td style="vertical-align:bottom;width:44.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;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:11.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">at January 1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;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:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;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:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">and Other</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;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:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">at December 31</b></p></td></tr><tr><td style="vertical-align:bottom;width:44.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;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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 0.05pt 0pt;"> 1,927</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 659</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;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;"> (592)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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;"> 1,994</p></td></tr><tr><td style="vertical-align:bottom;width:44.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;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.23%;margin: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,584</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (131)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.22%;margin: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,927</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:10pt;visibility:hidden;">​</span></p> 1927000 659000 -592000 1994000 1584000 474000 -131000 1927000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 10pt 0pt;">Note 4- Inventories</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Inventories consist of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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.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:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.72%;margin:0pt;padding:0pt;"><p style="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, </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:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><p style="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, </b></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;"><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;">2023</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;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;">2022</b></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;"><span style="font-style:italic;font-weight:bold;">(in thousands)</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: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;margin:0pt 0pt 0.05pt 0pt;"><span style="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: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.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="visibility:hidden;">​</span></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;">Refrigerants and cylinders</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;"> 159,654</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.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;"> 152,840</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;">Less: net realizable value adjustments</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%;border-bottom:1px 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.24%;border-bottom: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;"> (5,204)</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%;border-bottom:1px 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.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 0pt 0.05pt 0pt;"> (7,463)</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;">Total</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;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%;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,450</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;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.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 0.05pt 0pt;"> 145,377</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:10pt;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:10pt;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.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:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.72%;margin:0pt;padding:0pt;"><p style="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, </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:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><p style="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, </b></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;"><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;">2023</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;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;">2022</b></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;"><span style="font-style:italic;font-weight:bold;">(in thousands)</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: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;margin:0pt 0pt 0.05pt 0pt;"><span style="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: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.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="visibility:hidden;">​</span></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;">Refrigerants and cylinders</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;"> 159,654</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.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;"> 152,840</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;">Less: net realizable value adjustments</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%;border-bottom:1px 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.24%;border-bottom: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;"> (5,204)</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%;border-bottom:1px 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.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 0pt 0.05pt 0pt;"> (7,463)</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;">Total</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;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%;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,450</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;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.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 0.05pt 0pt;"> 145,377</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:10pt;visibility:hidden;">​</span></p> 159654000 152840000 5204000 7463000 154450000 145377000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 5 - Property, plant and equipment</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Elements of property, plant and equipment are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:65.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin: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.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;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: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:2.05%;margin: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:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;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.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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.05%;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: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;">Lives</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><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;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Property, plant and equipment</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,255</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 1,255</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Land improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 319</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 319</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">6-10 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,446</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 1,446</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">25-39 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Building improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 3,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 3,396</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">25-39 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Cylinders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,220</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 13,315</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin: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-30 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 29,397</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 27,258</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">3-10 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Equipment under capital lease</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 315</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 315</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">5-7 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 1,790</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 1,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">3-5 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Lab and computer equipment, software</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,233</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 3,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2-8 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Furniture &amp; fixtures</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 933</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 840</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">5-10 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 865</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 852</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">3-5 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Construction-in-Progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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 3pt 0.05pt 0pt;"> 2,844</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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 3pt 0.05pt 0pt;"> 3,533</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subtotal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 59,084</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 57,405</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: Accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> (39,709)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> (36,837)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 19,375</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 20,568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Depreciation expense for the years ended December 31, 2023, 2022 and 2021 was $3.0 million, $3.2 million and $3.4 million, respectively, of which $2.0 million, $2.0 million and $1.9 million, respectively, were included as cost of sales in the Company’s Consolidated Income Statements.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:65.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin: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.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;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: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:2.05%;margin: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:9.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Estimated</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;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.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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.05%;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: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;">Lives</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><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;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Property, plant and equipment</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><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;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,255</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 1,255</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Land improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 319</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 319</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">6-10 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,446</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 1,446</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">25-39 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Building improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 3,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 3,396</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">25-39 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Cylinders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,220</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 13,315</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin: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-30 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 29,397</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 27,258</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">3-10 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Equipment under capital lease</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 315</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 315</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">5-7 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 1,790</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 1,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">3-5 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Lab and computer equipment, software</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin: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,233</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 3,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">2-8 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Furniture &amp; fixtures</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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;"> 933</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 840</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.67%;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;">5-10 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 865</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 852</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">3-5 years</p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">- Construction-in-Progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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 3pt 0.05pt 0pt;"> 2,844</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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 3pt 0.05pt 0pt;"> 3,533</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subtotal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 59,084</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 57,405</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: Accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> (39,709)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> (36,837)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;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;"> 19,375</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 20,568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr></table> 1255000 1255000 319000 319000 P6Y P10Y 1446000 1446000 P25Y P39Y 3467000 3396000 P25Y P39Y 13220000 13315000 P15Y P30Y 29397000 27258000 P3Y P10Y 315000 315000 P5Y P7Y 1790000 1773000 P3Y P5Y 3233000 3103000 P2Y P8Y 933000 840000 P5Y P10Y 865000 852000 P3Y P5Y 2844000 3533000 59084000 57405000 39709000 36837000 19375000 20568000 3000000.0 3200000 3400000 2000000.0 2000000.0 1900000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 6 - Leases</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">The Company has various lease agreements with terms up to </span><span style="font-weight:normal;">11 years</span><span style="font-weight:normal;">, including leases of buildings and various equipment. Some leases include options to purchase, terminate or extend for one or more years. These options are included in the lease term when it is reasonably certain that the option will be exercised.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">At inception, the Company determines if an arrangement contains a lease and whether that lease meets the classification criteria of a finance or operating lease. Some of the Company’s lease arrangements contain lease components (e.g. minimum rent payments) and non-lease components (e.g. common area maintenance, charges, utilities and property taxes). The Company elected the package of practical expedients permitted under the transition guidance, which allows it to carry forward its historical lease classification, its assessment on whether a contract contains a lease, and its initial direct costs for any leases that existed prior to the adoption of the new standard. The Company also elected to combine lease and non-lease components and to keep leases with an initial term of 12 months or less off the balance sheet and recognize the associated lease payments in the consolidated income statements on a straight line basis over the lease term. The Company’s lease agreements do not contain any material residual value, guarantees or material restrictive covenants.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">Operating leases are included in Right of use asset, Accrued expenses and other current liabilities, and Long-term lease liabilities on the consolidated balance sheets. These assets and liabilities are recognized at the commencement date based on the present value of remaining lease payments over the lease term using the Company’s secured incremental borrowing rates or implicit rates, when readily determinable. Short-term operating leases, which have an initial term of 12 months or less, are not recorded on the balance sheet. Lease expense for operating leases is recognized on a straight-line basis over the lease term. Variable lease expense is recognized in the period in which the obligation for those payments is incurred.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">Operating lease expense of </span><span style="font-weight:normal;">$1.7</span><span style="font-weight:normal;"> million, </span><span style="font-weight:normal;">$2.6</span><span style="font-weight:normal;"> million and </span><span style="font-weight:normal;">$3.1</span><span style="font-weight:normal;"> million, for the years ended December 31, 2023, 2022 and 2021, respectively, is included in Selling, general and administrative expenses on the consolidated income statements.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">The following table presents information about the amount and timing of cash flows arising from the Company’s operating leases as of December 31, 2023.</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:82.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.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:1.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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></tr><tr><td style="vertical-align:bottom;width:82.87%;border-bottom:1px solid #000000;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;">Maturity of Lease Payments</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="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: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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:bottom;white-space:nowrap;width:1.78%;margin:0pt;padding:0pt;"><p style="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:13.18%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 1,914</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.78%;margin: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:13.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,663</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 1,500</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2027</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin: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:13.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,043</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;">-2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 656</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;">-Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.78%;border-bottom: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:13.18%;border-bottom:1px 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;"> 823</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;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 undiscounted operating lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 7,599</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;">Less imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.78%;border-bottom: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:13.18%;border-bottom: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;"> (911)</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Present value of operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;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:13.18%;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,688</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:10pt;visibility:hidden;background:#ffff00;">​</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;">Balance Sheet Classification</i></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.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%;border-bottom:1px solid #000000;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;">December 31, </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;">    </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;">2023</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;">    </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;">2022</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;"><span style="-sec-ix-hidden:Hidden_dJXs4O7ZxkaTLljTT6u3Mg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Current lease liabilities (recorded in Accrued expenses and other current liabilities)</span></span></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;"> 1,898</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.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;"> 1,663</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;">Long-term lease liabilities</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%;border-bottom:1px 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%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,790</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%;border-bottom:1px 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.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 0.05pt 0pt;"> 5,763</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;">Total operating lease liabilities</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;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%;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,688</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;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.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 0.05pt 0pt;"> 7,426</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:10pt;visibility:hidden;">​</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;">Other Information</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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:8.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:3.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;margin:0pt;padding:0pt;"><p style="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.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:3.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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: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;">Weighted-average remaining term for operating leases</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:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.92</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.39%;background:#cceeff;margin: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.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years</p></td></tr><tr><td style="vertical-align:bottom;width:74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted-average discount rate for operating leases</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:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.39%;margin: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.21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;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:10pt;visibility:hidden;">​</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;">Supplemental cash flow and non-cash information related to leases</i></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%;border-bottom:1px solid #000000;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;">December 31,</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;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: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;">2023</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;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: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;">2022</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;">Cash paid for amounts included in measurement of lease liabilities:</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;"> </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.24%;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.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:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;">  </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 12pt;">Operating cash flow from operating leases</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.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;"> 1,782</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:right;margin:0pt 3pt 0.05pt 0pt;"> 2,588</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;">Right -of-use assets obtained in exchange for new operating lease liabilities</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;"> 1,020</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.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;"> 2,659</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:10pt;visibility:hidden;">​</span></p> P11Y 1700000 2600000 3100000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">The following table presents information about the amount and timing of cash flows arising from the Company’s operating leases as of December 31, 2023.</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:82.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.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:1.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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></tr><tr><td style="vertical-align:bottom;width:82.87%;border-bottom:1px solid #000000;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;">Maturity of Lease Payments</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="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: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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:bottom;white-space:nowrap;width:1.78%;margin:0pt;padding:0pt;"><p style="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:13.18%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2024</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 1,914</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2025</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.78%;margin: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:13.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,663</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 1,500</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-2027</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;margin: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:13.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,043</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;">-2028</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 656</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;">-Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.78%;border-bottom: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:13.18%;border-bottom:1px 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;"> 823</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;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 undiscounted operating lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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;"> 7,599</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0.05pt 0pt;">Less imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.78%;border-bottom: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:13.18%;border-bottom: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;"> (911)</p></td></tr><tr><td style="vertical-align:bottom;width:82.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Present value of operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.78%;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:13.18%;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,688</p></td></tr></table> 1914000 1663000 1500000 1043000 656000 823000 7599000 911000 6688000 <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.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%;border-bottom:1px solid #000000;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;">December 31, </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;">    </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;">2023</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;">    </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;">2022</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;"><span style="-sec-ix-hidden:Hidden_dJXs4O7ZxkaTLljTT6u3Mg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Current lease liabilities (recorded in Accrued expenses and other current liabilities)</span></span></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;"> 1,898</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.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;"> 1,663</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;">Long-term lease liabilities</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%;border-bottom:1px 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%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,790</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%;border-bottom:1px 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.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 0.05pt 0pt;"> 5,763</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;">Total operating lease liabilities</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;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%;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,688</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;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.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 0.05pt 0pt;"> 7,426</p></td></tr></table> 1898000 1663000 4790000 5763000 6688000 7426000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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:8.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:3.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;margin:0pt;padding:0pt;"><p style="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.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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:3.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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: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;">Weighted-average remaining term for operating leases</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:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.92</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.39%;background:#cceeff;margin: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.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years</p></td></tr><tr><td style="vertical-align:bottom;width:74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted-average discount rate for operating leases</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:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.39%;margin: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.21</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.9%;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> P2Y11M1D P3Y7M6D 0.0827 0.0821 <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%;border-bottom:1px solid #000000;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;">December 31,</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;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: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;">2023</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;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: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;">2022</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;">Cash paid for amounts included in measurement of lease liabilities:</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;"> </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.24%;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.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:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;">  </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 12pt;">Operating cash flow from operating leases</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.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;"> 1,782</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:right;margin:0pt 3pt 0.05pt 0pt;"> 2,588</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;">Right -of-use assets obtained in exchange for new operating lease liabilities</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;"> 1,020</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.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;"> 2,659</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:10pt;visibility:hidden;">​</span></p> 1782000 2588000 1020000 2659000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 7 - Income taxes</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Income tax expense for the years ended December 31, 2023, 2022 and 2021 was $17.6 million, $13.4 million and $1.1 million, respectively. The income tax expense (benefit) for each of the years ended December 31, 2023, 2022 and 2021 were provided for federal and state income tax at statutory rates applied to the pre-tax income (loss) for each of the periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following summarizes the provision for income taxes:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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></tr><tr><td style="vertical-align:bottom;width:65.38%;border-bottom:1px solid #000000;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;">Years Ended December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;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;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin: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.29%;margin: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:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin: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.29%;margin: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:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin: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.29%;margin: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:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 10,319</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 11,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 453</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State and local</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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,940</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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;"> 350</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 13,259</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 14,830</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 803</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> <span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 3,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> (323)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 267</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State and local</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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;"> 647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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,126)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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;"> 70</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px 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.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,314</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px 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.18%;border-bottom: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,449)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px 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.18%;border-bottom:1px 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;"> 337</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expense for income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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.18%;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,381</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,140</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Reconciliation of the Company’s actual tax rate to the U.S. Federal statutory rate is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:67.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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:8.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.06%;border-bottom:1px solid #000000;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;">Years ended December 31, </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;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;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.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;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:6.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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.93%;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></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income tax rates</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:8.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Statutory U.S. federal rate</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- State income taxes, net of federal benefit</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;background:#cceeff;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Excess tax benefits related to stock compensation</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin: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)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- 162m limitation</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:8.04%;background:#cceeff;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_kGNJBJKHH0OFmNS18UbiHg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> —</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- PPP Benefit</p></td><td style="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:8.04%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin: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)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Change in valuation allowance</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;background:#cceeff;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;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;"> (13)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;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)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Other true-up</p></td><td style="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:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;border-bottom:1px 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;"><span style="-sec-ix-hidden:Hidden_zhlJ7mBVukiHXqCzOamP8Q;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> —</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;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;"> 25</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;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;"> 3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">For the year ended December 31, 2023, the Company had no federal NOLs carryforward. For the year ended December 31, 2023, the Company had state tax NOL carryforwards of approximately $1.8 million, expiring in various years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Deferred income tax represents the tax effect of the differences between the book and tax bases of assets and liabilities. The net deferred income tax assets (liabilities) consisted of the following at:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:74.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:74.07%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;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.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;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.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin: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.43%;margin: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: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-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin: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.43%;margin: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: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-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax assets (liabilities):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Reserve for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 497</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 500</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Inventory reserve</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> 687</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> 1,045</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> -Non qualified stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 529</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 383</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Deferred interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> 2,637</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 3.6pt 0.05pt 0pt;"> 82</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 3.6pt 0.05pt 0pt;"> 107</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;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 Deferred income tax assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 3.6pt 0.05pt 0pt;"> 1,795</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 3.6pt 0.05pt 0pt;"> 4,672</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin: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:74.07%;background:#cceeff;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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin: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:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"> (6,353)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"> (4,916)</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 0pt 0.05pt 0pt;"> (6,353)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 0pt 0.05pt 0pt;"> (4,916)</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;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 deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 0pt 0.05pt 0pt;"> (4,558)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 0pt 0.05pt 0pt;"> (244)</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">We review the likelihood that we will realize the benefit of our deferred tax assets, and therefore the need for valuation allowances, on a quarterly basis. In determining the requirement for a valuation allowance, the historical and projected financial results are considered, along with all other available positive and negative evidence.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company’s 2019 and prior federal tax years have been closed. The Company operates in many states throughout the United States and, as of December 31, 2023, the state statutes of limitations remain open for tax years subsequent to 2018. The Company recognizes interest and penalties, if any, relating to income taxes as a component of the provision for income taxes.</p> 17600000 13400000 1100000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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></tr><tr><td style="vertical-align:bottom;width:65.38%;border-bottom:1px solid #000000;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;">Years Ended December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;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.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;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;">(in thousands)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin: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.29%;margin: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:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin: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.29%;margin: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:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin: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.29%;margin: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:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 10,319</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 11,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 453</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State and local</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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,940</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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,835</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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;"> 350</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 13,259</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 14,830</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 803</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> <span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 3,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> (323)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;"> 267</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State and local</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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;"> 647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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,126)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.18%;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;"> 70</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px 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.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,314</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px 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.18%;border-bottom: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,449)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px 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.18%;border-bottom:1px 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;"> 337</p></td></tr><tr><td style="vertical-align:bottom;width:65.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expense for income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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.18%;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,381</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;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.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,140</p></td></tr></table> 10319000 11995000 453000 2940000 2835000 350000 13259000 14830000 803000 3667000 -323000 267000 647000 -1126000 70000 4314000 -1449000 337000 17573000 13381000 1140000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:67.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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:8.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.06%;border-bottom:1px solid #000000;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;">Years ended December 31, </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;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;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.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;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:6.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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.93%;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></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income tax rates</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:8.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Statutory U.S. federal rate</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- State income taxes, net of federal benefit</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;background:#cceeff;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Excess tax benefits related to stock compensation</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin: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)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- 162m limitation</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:8.04%;background:#cceeff;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_kGNJBJKHH0OFmNS18UbiHg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> —</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- PPP Benefit</p></td><td style="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:8.04%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;margin: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)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Change in valuation allowance</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;background:#cceeff;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;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;"> (13)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;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)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">- Other true-up</p></td><td style="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:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;border-bottom:1px 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;"><span style="-sec-ix-hidden:Hidden_zhlJ7mBVukiHXqCzOamP8Q;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> —</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.04%;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;"> 25</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.86%;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;"> 3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table> 0.21 0.21 0.21 0.04 0.04 0 -0.01 -0.01 -0.04 -0.01 -0.01 0 0 0.02 0 -0.13 -0.12 0 0.01 0.25 0.11 0.03 0 1800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:74.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:74.07%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;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.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;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.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin: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.43%;margin: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: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-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin: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.43%;margin: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: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-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax assets (liabilities):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Reserve for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 497</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 500</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Inventory reserve</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> 687</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> 1,045</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> -Non qualified stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 529</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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:right;margin:0pt 3.6pt 0.05pt 0pt;"> 383</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Deferred interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 3.6pt 0.05pt 0pt;"> 2,637</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Accrued expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 3.6pt 0.05pt 0pt;"> 82</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 3.6pt 0.05pt 0pt;"> 107</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;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 Deferred income tax assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 3.6pt 0.05pt 0pt;"> 1,795</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 3.6pt 0.05pt 0pt;"> 4,672</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin: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:74.07%;background:#cceeff;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.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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%;margin: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:74.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"> (6,353)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:right;margin:0pt 0pt 0.05pt 0pt;"> (4,916)</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 0pt 0.05pt 0pt;"> (6,353)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px 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.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 0pt 0.05pt 0pt;"> (4,916)</p></td></tr><tr><td style="vertical-align:bottom;width:74.07%;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 deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 0pt 0.05pt 0pt;"> (4,558)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;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.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 0pt 0.05pt 0pt;"> (244)</p></td></tr></table> 497000 500000 687000 1045000 529000 383000 2637000 82000 107000 1795000 4672000 -6353000 -4916000 6353000 4916000 4558000 244000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 8 – Goodwill and intangible assets</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Goodwill represents the excess of the purchase price over the fair value of the net assets acquired in business combinations accounted for under the purchase method of accounting.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">There were no goodwill impairment losses recognized for the years ended December 31, 2023, 2022 and 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Based on the results of the impairment assessments of goodwill and intangible assets performed, management concluded that the fair value of the Company’s goodwill exceeds the carrying value and that there are no impairment indicators related to intangible assets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">At December 31, 2023 and December 31, 2022 the Company had $47.8 million of goodwill.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company’s other intangible assets consist of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:30.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.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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.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:7.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.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.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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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.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:7.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.37%;margin:0pt;padding:0pt;"><p style="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.68%;margin: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:8.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;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:28.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="8" 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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.37%;margin:0pt;padding:0pt;"><p style="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.68%;margin: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: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;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.05%;margin:0pt;padding:0pt;"><p style="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.68%;margin: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.17%;margin: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: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;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="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.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin: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: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;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:30.37%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;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;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.05%;margin:0pt;padding:0pt;"><p style="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;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;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;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="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;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;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;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:30.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td 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;">(in years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.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;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:30.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;">Intangible assets with determinable lives</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;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.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Covenant not to compete</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin: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 – 10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 870</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 798</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.07%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 870</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 710</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 160</p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3 – 12</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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,151</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,409</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 14,491</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,069</p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Above market leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px 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.02%;border-bottom:1px 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;"> 567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px 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%;border-bottom:1px 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;"> 277</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;border-bottom:1px 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.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 290</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;border-bottom:1px 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.03%;border-bottom:1px 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;"> 567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;border-bottom:1px 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%;border-bottom:1px 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;"> 232</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;border-bottom:1px 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.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 335</p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;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 identifiable intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;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.02%;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;"> 32,997</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;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;"> 18,226</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;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.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,771</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;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.03%;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;"> 32,997</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;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;"> 15,433</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;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.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,564</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The amortization of intangible assets for the years ended December 31, 2023, 2022 and 2021, were $2.8 million. Future estimated amortization expense is as follows: 2024 - $2.8 million, 2025 - $2.5 million, 2026- $2.5 million, 2027- $2.5 million, 2028-$2.5 million and thereafter - $1.9 million.</p> 0 0 0 47800000 47800000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:30.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.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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.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:7.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.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.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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.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.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:7.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.37%;margin:0pt;padding:0pt;"><p style="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.68%;margin: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:8.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;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:28.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="8" 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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:30.37%;margin:0pt;padding:0pt;"><p style="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.68%;margin: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: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;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.05%;margin:0pt;padding:0pt;"><p style="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.68%;margin: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.17%;margin: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: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;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="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.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin: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: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;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:30.37%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;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;">Period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.05%;margin:0pt;padding:0pt;"><p style="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;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;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;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="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;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;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;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:30.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td 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;">(in years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.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;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </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;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:30.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;">Intangible assets with determinable lives</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;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.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Covenant not to compete</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin: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 – 10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 870</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 798</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.07%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 870</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 710</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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:7.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 160</p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3 – 12</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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,151</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,409</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;"> 14,491</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,069</p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Above market leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;border-bottom:1px 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.02%;border-bottom:1px 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;"> 567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px 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%;border-bottom:1px 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;"> 277</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;border-bottom:1px 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.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 290</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;border-bottom:1px 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.03%;border-bottom:1px 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;"> 567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;border-bottom:1px 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%;border-bottom:1px 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;"> 232</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;border-bottom:1px 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.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 335</p></td></tr><tr><td style="vertical-align:bottom;width:30.37%;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 identifiable intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.02%;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.02%;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;"> 32,997</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;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;"> 18,226</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;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.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,771</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;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.03%;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;"> 32,997</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.17%;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;"> 15,433</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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.03%;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.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,564</p></td></tr></table> P6Y P10Y 870000 798000 72000 870000 710000 160000 P3Y P12Y 31560000 17151000 14409000 31560000 14491000 17069000 P13Y 567000 277000 290000 567000 232000 335000 32997000 18226000 14771000 32997000 15433000 17564000 2800000 2800000 2800000 2800000 2500000 2500000 2500000 2500000 1900000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 9 – Accrued expenses and other current liabilities</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt;"><span style="font-weight:normal;">Elements of Accrued expenses and other current liabilities are as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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 0pt 0.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.9%;border-bottom:1px solid #000000;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;">December 31</b><span style="font-style:italic;font-weight:bold;">,</span></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;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:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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;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: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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></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 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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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 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="font-size:8pt;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:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Accrued expenses</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 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.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 0.05pt 0pt;"> 12,256</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 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.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;"> 11,696</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cylinder deposits</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 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.23%;margin: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,225</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 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:right;margin:0pt 3pt 0.05pt 0pt;"> 13,638</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><span style="-sec-ix-hidden:Hidden_A7Ou7H_Vz0Kyvy2zhmphBg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Lease obligations</span></span></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 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.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 0.05pt 0pt;"> 1,893</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 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.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;"> 1,669</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Other current liabilities</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> 163</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 0pt 0.05pt 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 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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 905</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;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</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> 31,537</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> 27,908</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:10pt;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:10pt;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:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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 0pt 0.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.9%;border-bottom:1px solid #000000;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;">December 31</b><span style="font-style:italic;font-weight:bold;">,</span></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;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:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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;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: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;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></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 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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </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 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="font-size:8pt;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:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Accrued expenses</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 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.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 0.05pt 0pt;"> 12,256</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 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.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;"> 11,696</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cylinder deposits</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 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.23%;margin: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,225</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 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:right;margin:0pt 3pt 0.05pt 0pt;"> 13,638</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><span style="-sec-ix-hidden:Hidden_A7Ou7H_Vz0Kyvy2zhmphBg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Lease obligations</span></span></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 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.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 0.05pt 0pt;"> 1,893</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 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.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;"> 1,669</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Other current liabilities</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> 163</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 0pt 0.05pt 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 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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 905</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;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</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> 31,537</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> 27,908</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:10pt;visibility:hidden;">​</span></p> 12256000 11696000 17225000 13638000 1893000 1669000 163000 905000 31537000 27908000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 10 - Short-term and long-term debt</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Elements of short-term and long-term debt are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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 0pt 0.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.9%;border-bottom:1px solid #000000;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;">December 31, </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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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 0pt 0.05pt 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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></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 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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></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 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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Short-term &amp; long-term debt</span></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 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: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 0pt 0.05pt 0pt;">  </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 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: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 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><i style="font-style:italic;">Short-term debt:</i></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 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:9.23%;margin: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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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.22%;margin: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:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Revolving credit line and other debt</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 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.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 0.05pt 0pt;"> —</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 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.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;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Term loan facility - current</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 0pt 0.05pt 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0.05pt 0pt;"> —</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 0pt 0.05pt 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0.05pt 0pt;"> 4,250</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subtotal</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 0pt 0.05pt 0pt;"><span style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;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.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: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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;"> 4,250</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><i style="font-style:italic;">Long-term debt:</i></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 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.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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: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:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Term loan facility- net of current portion of long-term debt</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 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.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 0.05pt 0pt;"> —</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 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.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;"> 27,563</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - FILO term loan</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 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.23%;margin: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.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: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:right;margin:0pt 3pt 0.05pt 0pt;"> 15,000</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Less: deferred financing costs on term loan</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 0pt 0.05pt 0pt;"><span style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;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.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: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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;"> (3,578)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subtotal</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> —</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 0pt 0.05pt 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 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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,985</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total short-term &amp; long-term debt</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 0pt 0.05pt 0pt;"><span style="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.23%;border-bottom: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;"> —</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 0pt 0.05pt 0pt;"><span style="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.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,235</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;text-align:justify;margin:0pt 0pt 12pt 0pt;">Revolving Credit Facility</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">On March 2, 2022, Hudson Technologies Company (“HTC”) and Hudson Holdings, Inc. (“Holdings”), as borrowers (collectively, the “Borrowers”), and Hudson Technologies, Inc (the “Company”) as a guarantor, entered into an Amended and Restated Credit Agreement (the “Amended Wells Fargo Facility”) with Wells Fargo Bank, National Association, as administrative agent and lender (“Agent” or “Wells Fargo”) and such other lenders as have or may thereafter become a party to the Amended Wells Fargo Facility. The Amended Wells Fargo facility amended and restated the prior Wells Fargo Facility entered into on December 19, 2019.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Under the terms of the Amended Wells Fargo Facility, the Borrowers: (i) immediately borrowed $15 million in the form of a “first in last out” term loan (the “FILO Tranche”) and (ii) may borrow from time to time, up to $75 million at any time consisting of revolving loans (the “Revolving Loans”) in a maximum amount up to the lesser of $75 million and a borrowing base that is calculated based on the outstanding amount of the Borrowers’ eligible receivables and eligible inventory, as described in the Amended Wells Fargo Facility. The Amended Wells Fargo Facility also contains a sublimit of $9 million for swing line loans and $2 million for letters of credit. The Company currently has a $0.9 million letter of credit outstanding. The FILO Tranche was repaid in full in July 2023 and may not be reborrowed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Amounts borrowed under the Amended Wells Fargo Facility may be used for working capital needs, certain permitted acquisitions, and to reimburse drawings under letters of credit.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Interest under the Amended Wells Fargo Facility is payable in arrears on the first day of each month. Interest charges with respect to Revolving Loans are computed on the actual principal amount of Revolving Loans outstanding at a rate per annum equal to (A) with respect to Base Rate loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) between 1.25% and 1.75% depending on average monthly undrawn availability and (B) with respect to SOFR loans, the sum of the applicable SOFR rate plus between 2.36% and 2.86% depending on average quarterly undrawn availability. Interest charges with respect to the FILO Tranche were computed on the actual principal amount of FILO Tranche loans outstanding at a rate per annum equal to (A) with respect to Base Rate FILO Tranche loans, the sum of (i) a rate per annum equal to the higher of (1) 1.0%, (2) the federal funds rate plus 0.5%, (3) one month term SOFR plus 1.0%, and (4) the prime commercial lending rate of Wells Fargo, plus (ii) 6.5% and (B) with respect to SOFR FILO Tranche loans, the sum of the applicable SOFR rate plus 7.50%. The Amended Wells Fargo Facility also includes a monthly unused line fee ranging from 0.35% to 0.75% per annum determined based upon the level of average Revolving Loans outstanding during the immediately preceding month measured against the total Revolving Loans that may be borrowed under the Amended Wells Fargo Facility.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In connection with the closing of the Amended Wells Fargo Facility, the Company also entered into a First Amendment to Guaranty and Security Agreement, dated as of March 2, 2022 (the “Amended Revolver Guaranty and Security Agreement”), pursuant to which the Company and certain subsidiaries are continuing to unconditionally guarantee the payment and performance of all obligations owing by Borrowers to Wells Fargo, as Agent for the benefit of the revolving lenders. Pursuant to the Amended Revolver Guaranty and Security Agreement, Borrowers, the Company and certain other subsidiaries are continuing to grant to the Agent, for the benefit of the Wells Fargo Facility lenders, a security interest in substantially all of their respective assets, including receivables, equipment, general intangibles (including intellectual property), inventory, subsidiary stock, real property, and certain other assets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Amended Wells Fargo Facility contains a financial covenant requiring the Company to maintain at all times minimum liquidity (defined as availability under the Amended Wells Fargo Facility plus unrestricted cash) of at least $5 million, of which at least $3 million must be derived from availability. The Amended Wells Fargo Facility also contains a springing covenant, which takes effect only upon a failure to maintain undrawn availability of at least $11.25 million or upon an election by the Borrowers to increase the inventory component of the borrowing base, requiring the Company to maintain a Fixed Charge Coverage Ratio (FCCR) of not less than 1.00 to 1.00, as of the end of each trailing period of <span style="-sec-ix-hidden:Hidden_81bTZgg6ykmkeWoNWwkZeg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">twelve</span></span> consecutive months commencing with the month prior to the triggering of the covenant. The FCCR (as defined in the Wells Fargo Facility) is the ratio of (a) EBITDA for such period, minus unfinanced capital expenditures made during such period, to (b) the aggregate amount of (i) interest expense required to be paid (other than interest paid-in-kind, amortization of financing fees, and other non-cash interest expense) during such period, (ii) scheduled principal payments (but excluding principal payments relating to outstanding Revolving Loans under the Amended Wells Fargo Facility), (iii) all net federal, state, and local income taxes required to be paid during such period (provided, that any tax refunds received shall be applied to the period in which the cash outlay for such taxes was made), (iv) all restricted payments paid (as defined in the Amended Wells Fargo Facility) during such period, and (v) to the extent not otherwise deducted from EBITDA for such period, all payments required to be made during such period in respect of any funding deficiency or funding shortfall with respect to any pension plan. The FCCR covenant ceases after the Borrowers have been in compliance therewith for <span style="-sec-ix-hidden:Hidden_K0OHpXOzjkqgHUVhDayrvQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">two</span></span> consecutive months.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Amended Wells Fargo Facility also contains customary non-financial covenants relating to the Company and the Borrowers, including limitations on Borrowers’ ability to pay dividends on common stock or preferred stock, and also includes certain events of default, including payment defaults, breaches of representations and warranties, covenant defaults, cross-defaults to other obligations, events of bankruptcy and insolvency, certain ERISA events, judgments in excess of specified amounts, impairments to guarantees and a change of control.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company evaluated the Amended Wells Fargo Facility in accordance with the provisions of ASC 470 to determine if the amendment was a modification or an extinguishment of debt and concluded that the amendment was a modification of the original revolving credit facility for accounting purposes. As a result, the Company capitalized an additional $0.9 million of deferred financing costs in connection with the amendment, which, along with the $0.2 million of remaining deferred financing costs of the original revolving facility, is being amortized over the five year term of the Amended Wells Fargo Facility.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The commitments under the Amended Wells Fargo Facility will expire and the full outstanding principal amount of the loans, together with accrued and unpaid interest, are due and payable in full on March 2, 2027, unless the commitments are terminated and the outstanding principal amount of the loans are accelerated sooner following an event of default or in the event of certain other cross-defaults.</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;">Termination of 2022 Term Loan Facility</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">On March 2, 2022, Hudson Technologies Company (“HTC”), an indirect subsidiary of Hudson Technologies, Inc. (the “Company”), and the Company’s subsidiary Hudson Holdings, Inc., as borrowers (collectively, the “Borrowers”), and the Company, as guarantor, became obligated under a Credit Agreement (the “Term Loan Facility”) with TCW Asset Management Company LLC, as administrative agent (“Term Loan Agent”) and the lender parties thereto (the “Term Loan Lenders”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Under the terms of the Term Loan Facility, the Borrowers immediately borrowed $85 million pursuant to a term loan (the “Term Loan”), which had a maturity date in March 2027. Amounts borrowed under the Term Loan Facility were used by the Borrowers to repay the outstanding principal amount and related fees and expenses under the Prior Term Loan Facility (as defined below) and for other corporate purposes. The Company paid approximately $4.3 million of term loan deferred financing costs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">During the third quarter of 2023, the Company repaid in full the remaining $32.5 million principal balance outstanding under its Term Loan Facility and the FILO Tranche. In conjunction with this payoff, the Company recorded $3.4 million of interest which included a non-cash write off of $3.1 million deferred financing costs and $0.3 million of other expense and fees.</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;">Termination of Prior Term Loan Facility</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In conjunction with entry into the new Term Loan Facility as described above, on March 2, 2022 the Company’s then-existing term loans, as amended (the “Prior Term Loan Facility”), which had a principal balance of approximately $63.9 million after payment of a $16.0 million excess cash flow amount thereunder, were repaid in full, together with associated required lender fees and expenses of $3.3 million, and the Prior Term Loan Facility was terminated. The termination of the Prior Term Loan Facility constituted an extinguishment of debt, which resulted in the Company recording an additional $4.6 million of interest expense during the first quarter of 2022, which included the aforementioned $3.3 million of prior lender fees and expenses and $1.3 million of pre-existing deferred financing costs from the Prior Term Loan Facility.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company was in compliance with all covenants under the Amended Wells Fargo Facility as of December 31, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company’s ability to comply with these covenants in future quarters may be affected by events beyond the Company’s control, including general economic conditions, weather conditions, regulations and refrigerant pricing. Therefore, the Company cannot make any assurance that it will continue to be in compliance during future periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company believes that it will be able to satisfy its working capital requirements for the foreseeable future from anticipated cash flows from operations and available funds under the Amended Wells Fargo Facility. Any unanticipated expenses, including, but not limited to, an increase in the cost of refrigerants purchased by the Company, an increase in operating expenses or failure to achieve expected revenues from the Company’s RefrigerantSide® Services and/or refrigerant sales or additional expansion or acquisition costs that may arise in the future would adversely affect the Company’s future capital needs. There can be no assurance that the Company’s proposed or future plans will be successful, and as such, the Company may require additional capital sooner than anticipated, which capital may not be available on acceptable terms, or at all.</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;">CARES Act Loan</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">On April 23, 2020 the Company received a loan in the amount of $2.475 million from Meridian Bank under the Paycheck Protection Program (“PPP”) pursuant to the CARES Act. The loan had a term of two years, was unsecured, and bore interest at a fixed rate of one percent per annum, with the first nine months of principal and interest deferred. As a result of the COVID-19 pandemic, in applying for the loan the Company made a good faith assertion based upon the degree of uncertainty introduced to the capital markets and the industries affecting the Company’s customers and the Company’s dependency to curtail expenses to fund ongoing operations. The PPP loan proceeds were used in part to help offset payroll costs as stipulated in the legislation. All or a portion of the PPP loan could be forgiven by the U.S. Small Business Administration (“SBA”) upon application by the Company and upon documentation of expenditures in accordance with the SBA requirements. Under the CARES Act, loan forgiveness is available for the sum of documented payroll costs and other covered areas, such as rent payments, mortgage interest and utilities, as applicable. During the third quarter of 2021, the Company received forgiveness of the loan from the SBA, resulting in $2.475 million of Other income recorded in the Company’s Consolidated Income Statements.</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:10pt;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:10pt;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:73.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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 0pt 0.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.9%;border-bottom:1px solid #000000;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;">December 31, </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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</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 0pt 0.05pt 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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-style:italic;font-weight:bold;">(in thousands)</span></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 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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></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 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;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Short-term &amp; long-term debt</span></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 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: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 0pt 0.05pt 0pt;">  </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 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: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 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><i style="font-style:italic;">Short-term debt:</i></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 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:9.23%;margin: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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width: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.22%;margin: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:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Revolving credit line and other debt</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 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.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 0.05pt 0pt;"> —</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 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.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;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Term loan facility - current</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 0pt 0.05pt 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0.05pt 0pt;"> —</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 0pt 0.05pt 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 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></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 0.05pt 0pt;"> 4,250</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subtotal</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 0pt 0.05pt 0pt;"><span style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;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.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: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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;"> 4,250</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><i style="font-style:italic;">Long-term debt:</i></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 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.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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: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:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Term loan facility- net of current portion of long-term debt</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 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.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 0.05pt 0pt;"> —</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 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.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;"> 27,563</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - FILO term loan</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 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.23%;margin: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.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: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:right;margin:0pt 3pt 0.05pt 0pt;"> 15,000</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> - Less: deferred financing costs on term loan</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 0pt 0.05pt 0pt;"><span style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.23%;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.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: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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;"> (3,578)</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Subtotal</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 0pt 0.05pt 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 0pt 0.05pt 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 0.05pt 0pt;"> —</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 0pt 0.05pt 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 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:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,985</p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:73.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total short-term &amp; long-term debt</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 0pt 0.05pt 0pt;"><span style="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.23%;border-bottom: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;"> —</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 0pt 0.05pt 0pt;"><span style="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.22%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,235</p></td></tr></table> 4250000 4250000 27563000 15000000 3578000 38985000 43235000 15000000 75000000 75000000 9000000 2000000 900000 0.010 0.005 0.010 0.0125 0.0175 0.0236 0.0286 0.010 0.005 0.010 0.065 0.0750 0.0035 0.0075 5000000 3000000 11250000 1.00 1.00 900000 200000 P5Y 85000000 4300000 32500000 3400000 3100000 300000 63900000 16000000.0 3300000 4600000 3300000 1300000 2475000 P2Y 0.01 P9M 2475000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 11 - Commitments and contingencies</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;text-align:justify;margin:0pt 0pt 12pt 0pt;">Rents and operating leases</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company utilizes leased facilities and operates equipment under non-cancelable operating leases through July 2030. Below is a table of key properties:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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.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:9.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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:15.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></tr><tr><td style="vertical-align:bottom;width:70.64%;margin: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.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 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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align: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:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Lease</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin: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.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Annual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Expiration</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;border-bottom:1px solid #000000;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;">Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Rent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Baton Rouge, Louisiana</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 30,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_yfd0mDnqDkOH_jT8HyTg_g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">5/2024</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Champaign, Illinois</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 609,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_I_1EfFwuHUak2DrAEbJEMA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">12/2024</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Champaign, Illinois (2<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">nd</sup> location)</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 349,000</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:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_fdhDIlBzo0GHSKHM2LuWfg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">9/2026</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Charlotte, North Carolina</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 38,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_tzVpxI_H-0SS_hJwsVwzzQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">5/2025</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Escondido, California</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 238,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_j1fn-k4NdE2JtGiOhSeK9A;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">6/2027</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long Beach, California</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 28,800</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_zS4MwnfHwEO0BwVvirGnHg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">2/2024*</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ontario, California</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 174,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_iqOrUDtgwUKKu_JozX-MoA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">12/2024</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Riverside, California</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 27,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Month to Month</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Rantoul, Illinois</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 36,000</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:15.31%;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;">Month to Month</p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Smyrna, Georgia</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 492,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_lnyxk1ybRUOlr4Mr6rIcHQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">7/2030</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Stony Point, New York</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 118,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_XIGAALBB7keC1Ah3tJEKww;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">6/2026</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Woodcliff Lake, New Jersey</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 236,000</p></td><td style="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:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_tIwPGLPxYUyl8vB6RIL6cw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">8/2027</span></span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;">*</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;text-align:justify;">Lease was renewed on March 1, 2024.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company rents properties and various equipment under operating leases. Operating lease expense for the years ended December 31, 2023, 2022 and 2021 totaled approximately $1.7 million, $2.6 million and $3.1 million. In addition to the properties above, the Company does at times utilize public warehouse space on a month to month basis. The Company typically enters into short-term leases for the facilities and wherever possible extends the expiration date of such leases.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company utilizes leased facilities and operates equipment under non-cancelable operating leases through July 2030. Below is a table of key properties:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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.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:9.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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:15.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></tr><tr><td style="vertical-align:bottom;width:70.64%;margin: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.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 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;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align: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:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Lease</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin: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.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Annual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Expiration</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;border-bottom:1px solid #000000;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;">Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Rent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Baton Rouge, Louisiana</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 30,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_yfd0mDnqDkOH_jT8HyTg_g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">5/2024</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Champaign, Illinois</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 609,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_I_1EfFwuHUak2DrAEbJEMA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">12/2024</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Champaign, Illinois (2<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">nd</sup> location)</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 349,000</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:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_fdhDIlBzo0GHSKHM2LuWfg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">9/2026</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Charlotte, North Carolina</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 38,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_tzVpxI_H-0SS_hJwsVwzzQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">5/2025</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Escondido, California</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 238,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_j1fn-k4NdE2JtGiOhSeK9A;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">6/2027</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long Beach, California</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 28,800</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_zS4MwnfHwEO0BwVvirGnHg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">2/2024*</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ontario, California</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 174,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_iqOrUDtgwUKKu_JozX-MoA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">12/2024</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Riverside, California</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 27,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Month to Month</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Rantoul, Illinois</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 36,000</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:15.31%;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;">Month to Month</p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Smyrna, Georgia</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 492,000</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_lnyxk1ybRUOlr4Mr6rIcHQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">7/2030</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Stony Point, New York</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.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:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 118,000</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:15.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_XIGAALBB7keC1Ah3tJEKww;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">6/2026</span></span></p></td></tr><tr><td style="vertical-align:bottom;width:70.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Woodcliff Lake, New Jersey</p></td><td style="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.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:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0.05pt 0pt;"> 236,000</p></td><td style="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:15.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_tIwPGLPxYUyl8vB6RIL6cw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">8/2027</span></span></p></td></tr></table> 30000 609000 349000 38000 238000 28800 174000 27000 Month to Month 36000 Month to Month 492000 118000 236000 1700000 2600000 3100000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 12 - Share-Based Compensation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Share-based compensation represents the cost related to share-based awards, typically stock options or stock grants, granted to employees, non-employees, officers and directors. Share-based compensation is measured at grant date, based on the estimated aggregate fair value of the award on the grant date, and such amount is charged to compensation expense on a straight-line basis over the requisite service period. For the years ended December 31, 2023, 2022 and 2021, the share-based compensation expense of $2.3 million, $0.9 million and $0.5 million, respectively, is reflected in Selling, general and administrative expenses in the consolidated Income Statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Share-based awards have historically been made as stock options, and recently also as stock grants, issued pursuant to the terms of the Company’s stock option and stock incentive plans, (collectively, the “Plans”), described below. The Plans may be administered by the Board of Directors or the Compensation Committee of the Board or by another committee appointed by the Board from among its members as provided in the Plans. Presently, the Plans are administered by the Company’s Compensation Committee of the Board of Directors. As of December 31, 2023 there were 4,341,463 shares of the Company’s common stock available under the Plans for issuance for future stock option grants or other stock based awards.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Stock option awards, which allow the recipient to purchase shares of the Company’s common stock at a fixed price, are typically granted at an exercise price equal to the Company’s stock price at the date of grant. Typically, the Company’s stock option awards have vested from immediately to two years from the grant date and have had a contractual term ranging from <span style="-sec-ix-hidden:Hidden_3SqrG4m_WEOzJ-xhFN5_0g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span> to ten years. Incentive Stock Options (“ISOs”) granted under the Plans may not be granted at a price less than the fair market value of the common stock on the date of grant (or 110% of fair market value in the case of persons holding 10% or more of the voting stock of the Company). Nonqualified options granted under the Plans may not be granted at a price less than the fair market value of the common stock. Options granted under the Plans expire not more than ten years from the date of grant (five years in the case of ISOs granted to persons holding 10% or more of the voting stock of the Company).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective September 17, 2014, the Company adopted its 2014 Stock Incentive Plan (“2014 Plan”) pursuant to which 3,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. Incentive Stock Options (ISOs) may be granted under the 2014 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2014 Plan is sooner terminated, the ability to grant options or other awards under the 2014 Plan will expire on September 17, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective June 7, 2018, the Company adopted its 2018 Stock Incentive Plan (“2018 Plan”) pursuant to which 4,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. ISOs may be granted under the 2018 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2018 Plan is sooner terminated, the ability to grant options or other awards under the 2018 Plan will expire on June 7, 2028.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective June 11, 2020, the Company adopted its 2020 Stock Incentive Plan (“2020 Plan”) pursuant to which 3,000,000 shares of common stock were reserved for issuance (i) upon the exercise of options, designated as either ISOs under the Code or nonqualified options, or (ii) as stock, deferred stock or other stock-based awards. ISOs may be granted under the 2020 Plan to employees and officers of the Company. Non-qualified options, stock, deferred stock or other stock-based awards may be granted to consultants, directors (whether or not they are employees), employees or officers of the Company. Stock appreciation rights may also be issued in tandem with stock options. Unless the 2020 Plan is sooner terminated, the ability to grant options or other awards under the 2020 Plan will expire on June 11, 2030.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">All stock options have been granted to employees and non-employees at exercise prices equal to or in excess of the market value on the date of the grant.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company determines the fair value of share-based awards at the grant date by using the Black-Scholes option-pricing model, and has utilized the “simplified” method, as prescribed by the SEC’s Staff Accounting Bulletin (“SAB”) No.110, Share-Based Payment, to compute expected lives of share based awards. The Company has opted to use the simplified method for stock options because management believes that the Company does not have sufficient historical exercise data to provide a reasonable basis upon which to estimate the expected term. The Company records forfeitures and cancellations as they occur. The following are the weighted-average assumptions:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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.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.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.35%;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;">Year ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="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:13.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:3.09%;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:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin:0pt;padding:0pt;"><p style="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.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:50.35%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:13.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin: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:13.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Assumptions</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;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:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;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.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:11.78%;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.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></tr><tr><td style="vertical-align:bottom;width:50.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:50.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;">Risk free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;background:#cceeff;margin: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.69%-4.89</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.84%-4.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">0.29%-0.85</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:50.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected volatility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">71.73%-94</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">91%-94</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">90%-101</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:50.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;">Expected lives</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;background:#cceeff;margin: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.5-<span style="-sec-ix-hidden:Hidden_fhnpo0HsOU-emxuehpB6Xg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">2.0</span></span> years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.5-<span style="-sec-ix-hidden:Hidden_gLHmJXFetUykwJM3hUDR_g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">2.75</span></span> years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">2.5-5 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The expected stock price volatility is based on the implied volatilities from traded options on our stock, historical volatility of our stock and other factors.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A summary of the activity for the Company’s Plans for the indicated periods is presented below:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:73.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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:11.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.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.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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></tr><tr><td style="vertical-align:bottom;width:73.64%;margin: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.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 style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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: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:11.26%;margin:0pt;padding:0pt;"><p style="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:73.64%;margin: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.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:73.64%;border-bottom:1px solid #000000;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;">Stock Options and Stock Appreciation Rights</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">Exercise Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2020</b></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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"><b style="font-weight:bold;"> 5,329,515</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1.06</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Cancelled</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (133,257)</p></td><td style="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.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;margin: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.02</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Exercised</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;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;"> (3,076,489)</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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin: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.16</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-Granted (1)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px 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;"> 484,254</p></td><td style="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.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;border-bottom:1px 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.82</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2021</b></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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"><b style="font-weight:bold;"> 2,604,023</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1.03</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Cancelled</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin: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,781)</p></td><td style="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.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;margin: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.75</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Exercised</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;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;"> (583,273)</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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin: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.15</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-Granted (2)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px 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;"> 381,181</p></td><td style="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.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4.33</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2022</b></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:11.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;"><b style="font-weight:bold;"> 2,390,150</b></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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1.51</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Cancelled</p></td><td style="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:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (48,268)</p></td><td style="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.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;margin: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.67</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Exercised</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:11.38%;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;"> (296,973)</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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin: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.68</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-Granted (3)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px 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;"> 602,526</p></td><td style="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.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;border-bottom:1px 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.02</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2023</b></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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;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;"><b style="font-weight:bold;"> 2,647,435</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;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;"><b style="font-weight:bold;"> 3.31</b></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:10pt;visibility:hidden;">​</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-left:0pt;margin-top:0pt;text-align:justify;text-indent:0pt;"><span style="display:inline-block;min-width:18pt;white-space:nowrap;">(1)</span>Options to purchase 463,754 shares were granted in 2021, all of which were vested immediately in 2021. In addition, 20,500 stock appreciation rights were granted in December 2021 with a <span style="-sec-ix-hidden:Hidden_D4tOJQqsCUW03YVH2sp1SA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">six</span></span>- month vesting period.</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-left:0pt;margin-top:0pt;text-align:justify;text-indent:0pt;"><span style="display:inline-block;min-width:18pt;white-space:nowrap;">(2)</span>Options to purchase 381,181 shares were granted in 2022, of which options to purchase 40,588 shares vested immediately in 2022 and the remainder vested 50% immediately and 50% one year after the date of the grants.</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;text-align:justify;text-indent:0pt;"><span style="display:inline-block;min-width:18pt;white-space:nowrap;">(3)</span>Options to purchase 584,826 shares were granted in 2023, of which options to purchase 337,727 shares vested immediately in 2023 and the remainder vested 50% immediately and 50% one year after the date of the grants. In addition, 17,700 stock appreciation rights were granted in January 2023 with a <span style="-sec-ix-hidden:Hidden_VmXq-hfbREyvPhzmB9yKAQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">six</span></span>- month vesting period.</div><div style="margin-top:12pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following is the weighted average contractual life in years and the weighted average exercise price at December 31, 2023 and 2022 of:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:63.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:9.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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 style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align: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:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</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;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="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><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:9.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life (Years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">Exercise Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:63.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options outstanding and vested</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,400,336</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> 4.47</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.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;background:#cceeff;margin: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.60</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:10pt;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:63.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:9.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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 style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align: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:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</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;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="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><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 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: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:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life(Years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">Exercise Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:63.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options outstanding and vested</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,218,799</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> 5.39</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.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;background:#cceeff;margin: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.33</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:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The intrinsic values of options outstanding at December 31, 2023 and 2022 are $26.9 million and $20.6 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The intrinsic value of options unvested at December 31, 2023 and 2022 are $0.8 million and $1.1 million, respectively. As of December 31, 2023 there was $0.9 million unrecognized share based compensation expense related to non-vested options.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The intrinsic values of options vested and exercised during the years ended December 31, 2023, 2022 and 2021 were as follows<b style="font-weight:bold;">:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-weight:bold;margin-bottom:10pt;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:59.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.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.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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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.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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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.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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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:11.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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:59.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Intrinsic value of options vested</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.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:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,886,080</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.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:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,249,506</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.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:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,481,858</p></td></tr><tr><td style="vertical-align:bottom;width:59.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Intrinsic value of options exercised</p></td><td style="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.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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,565,056</p></td><td style="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.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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,051,422</p></td><td style="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.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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,088,578</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:10pt;visibility:hidden;">​</span></p> 2300000 900000 500000 4341463 P2Y P10Y 1.10 3000000 4000000 3000000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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.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.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.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:3.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.35%;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;">Year ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="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:13.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:3.09%;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:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin:0pt;padding:0pt;"><p style="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.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:50.35%;border-bottom:1px solid #000000;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;">December 31, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:13.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin: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:13.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Assumptions</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;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:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;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.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:11.78%;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.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></tr><tr><td style="vertical-align:bottom;width:50.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:50.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;">Risk free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;background:#cceeff;margin: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.69%-4.89</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.84%-4.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">0.29%-0.85</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:50.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected volatility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">71.73%-94</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">91%-94</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">90%-101</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:50.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;">Expected lives</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.96%;background:#cceeff;margin: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.5-<span style="-sec-ix-hidden:Hidden_fhnpo0HsOU-emxuehpB6Xg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">2.0</span></span> years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.5-<span style="-sec-ix-hidden:Hidden_gLHmJXFetUykwJM3hUDR_g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">2.75</span></span> years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">2.5-5 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 0 0 0 0.0369 0.0489 0.0184 0.0427 0.0029 0.0085 0.7173 0.94 0.91 0.94 0.90 1.01 P1Y6M P1Y6M P2Y6M P5Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:73.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.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:11.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.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.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.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></tr><tr><td style="vertical-align:bottom;width:73.64%;margin: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.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 style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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: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:11.26%;margin:0pt;padding:0pt;"><p style="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:73.64%;margin: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.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:73.64%;border-bottom:1px solid #000000;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;">Stock Options and Stock Appreciation Rights</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">Exercise Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2020</b></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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"><b style="font-weight:bold;"> 5,329,515</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1.06</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Cancelled</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (133,257)</p></td><td style="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.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;margin: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.02</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Exercised</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;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;"> (3,076,489)</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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin: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.16</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-Granted (1)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px 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;"> 484,254</p></td><td style="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.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;border-bottom:1px 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.82</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2021</b></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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.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;"><b style="font-weight:bold;"> 2,604,023</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1.03</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Cancelled</p></td><td style="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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;margin: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,781)</p></td><td style="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.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;margin: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.75</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Exercised</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;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;"> (583,273)</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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin: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.15</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-Granted (2)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px 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;"> 381,181</p></td><td style="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.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4.33</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2022</b></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:11.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;"><b style="font-weight:bold;"> 2,390,150</b></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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><b style="font-weight:bold;"> 1.51</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Cancelled</p></td><td style="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:11.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (48,268)</p></td><td style="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.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;margin: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.67</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">-Exercised</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:11.38%;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;"> (296,973)</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.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;background:#cceeff;margin: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.68</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="font-size:10pt;">-Granted (3)</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px 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;"> 602,526</p></td><td style="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.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;border-bottom:1px 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.02</p></td></tr><tr><td style="vertical-align:bottom;width:73.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Outstanding at December 31, 2023</b></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;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.38%;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;"><b style="font-weight:bold;"> 2,647,435</b></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="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">$</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.69%;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;"><b style="font-weight:bold;"> 3.31</b></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:10pt;visibility:hidden;">​</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-left:0pt;margin-top:0pt;text-align:justify;text-indent:0pt;"><span style="display:inline-block;min-width:18pt;white-space:nowrap;">(1)</span>Options to purchase 463,754 shares were granted in 2021, all of which were vested immediately in 2021. In addition, 20,500 stock appreciation rights were granted in December 2021 with a <span style="-sec-ix-hidden:Hidden_D4tOJQqsCUW03YVH2sp1SA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">six</span></span>- month vesting period.</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-left:0pt;margin-top:0pt;text-align:justify;text-indent:0pt;"><span style="display:inline-block;min-width:18pt;white-space:nowrap;">(2)</span>Options to purchase 381,181 shares were granted in 2022, of which options to purchase 40,588 shares vested immediately in 2022 and the remainder vested 50% immediately and 50% one year after the date of the grants.</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;text-align:justify;text-indent:0pt;"><span style="display:inline-block;min-width:18pt;white-space:nowrap;">(3)</span>Options to purchase 584,826 shares were granted in 2023, of which options to purchase 337,727 shares vested immediately in 2023 and the remainder vested 50% immediately and 50% one year after the date of the grants. In addition, 17,700 stock appreciation rights were granted in January 2023 with a <span style="-sec-ix-hidden:Hidden_VmXq-hfbREyvPhzmB9yKAQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">six</span></span>- month vesting period.</div><div style="margin-top:12pt;"></div> 5329515 1.06 133257 2.02 3076489 1.16 484254 1.82 2604023 1.03 11781 3.75 583273 1.15 381181 4.33 2390150 1.51 48268 5.67 296973 2.68 602526 10.02 2647435 3.31 463754 20500 381181 40588 0.50 0.50 P1Y 584826 337727 0.50 0.50 P1Y 17700 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following is the weighted average contractual life in years and the weighted average exercise price at December 31, 2023 and 2022 of:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:10pt;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:63.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:9.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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 style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align: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:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</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;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="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><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:9.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life (Years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">Exercise Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:63.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options outstanding and vested</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,400,336</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> 4.47</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.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;background:#cceeff;margin: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.60</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:10pt;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:63.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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:9.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width: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.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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 style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align: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:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</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;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><p style="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></tr><tr><td style="vertical-align:bottom;width:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="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><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;margin: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;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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Number of</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><p style="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:63.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 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: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:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life(Years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">Exercise Price</b></p></td></tr><tr><td style="vertical-align:bottom;width:63.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options outstanding and vested</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,218,799</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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> 5.39</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.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.71%;background:#cceeff;margin: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.33</p></td></tr></table> 2400336 P4Y5M19D 2.60 2218799 P5Y4M20D 1.33 26900000 20600000 800000 1100000 900000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The intrinsic values of options vested and exercised during the years ended December 31, 2023, 2022 and 2021 were as follows<b style="font-weight:bold;">:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-weight:bold;margin-bottom:10pt;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:59.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.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.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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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.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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><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.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:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="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:11.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;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.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:59.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Intrinsic value of options vested</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.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:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,886,080</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.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:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,249,506</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.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:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,481,858</p></td></tr><tr><td style="vertical-align:bottom;width:59.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt 0pt 0.05pt 0pt;">Intrinsic value of options exercised</p></td><td style="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.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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,565,056</p></td><td style="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.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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,051,422</p></td><td style="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.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:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,088,578</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:10pt;visibility:hidden;">​</span></p> 2886080 1249506 1481858 2565056 4051422 7088578 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Note 13 – Benefit Plan</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">The Company maintains a 401(k)-benefit plan for its employees, which generally allows participants to make contributions via salary deductions up to allowable Internal Revenue Service limits on a tax-deferred basis. Such deductions may be matched in part by discretionary contributions by the Company.  The matching contributions for 2023, 2022 and 2021 were </span><span style="font-weight:normal;">$561,852</span><span style="font-weight:normal;">, </span><span style="font-weight:normal;">$472,002</span><span style="font-weight:normal;">, and </span><span style="font-weight:normal;">$281,586</span><span style="font-weight:normal;">, respectively.</span></p> 561852 472002 281586