0001999371-24-004537.txt : 20240408 0001999371-24-004537.hdr.sgml : 20240408 20240405202242 ACCESSION NUMBER: 0001999371-24-004537 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 86 CONFORMED PERIOD OF REPORT: 20231231 FILED AS OF DATE: 20240408 DATE AS OF CHANGE: 20240405 FILER: COMPANY DATA: COMPANY CONFORMED NAME: CPI AEROSTRUCTURES INC CENTRAL INDEX KEY: 0000889348 STANDARD INDUSTRIAL CLASSIFICATION: AIRCRAFT PART & AUXILIARY EQUIPMENT, NEC [3728] ORGANIZATION NAME: 04 Manufacturing IRS NUMBER: 112520310 STATE OF INCORPORATION: NY FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 001-11398 FILM NUMBER: 24827872 BUSINESS ADDRESS: STREET 1: 200A EXECUTIVE DR CITY: EDGEWOOD STATE: NY ZIP: 11717 BUSINESS PHONE: 5165865200 MAIL ADDRESS: STREET 1: 91 HEARTLAND BLVD CITY: EDGEWOOD STATE: NY ZIP: 11717 10-K 1 cpi-10k_123123.htm ANNUAL REPORT
false --12-31 2023 FY true false 0000889348 0000889348 2023-01-01 2023-12-31 0000889348 2023-06-30 0000889348 2024-04-04 0000889348 2023-12-31 0000889348 2022-12-31 0000889348 2022-01-01 2022-12-31 0000889348 us-gaap:CommonStockMember 2021-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0000889348 us-gaap:RetainedEarningsMember 2021-12-31 0000889348 2021-12-31 0000889348 us-gaap:CommonStockMember 2022-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000889348 us-gaap:RetainedEarningsMember 2022-12-31 0000889348 us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-12-31 0000889348 us-gaap:RetainedEarningsMember 2022-01-01 2022-12-31 0000889348 us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-12-31 0000889348 us-gaap:RetainedEarningsMember 2023-01-01 2023-12-31 0000889348 us-gaap:CommonStockMember 2023-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0000889348 us-gaap:RetainedEarningsMember 2023-12-31 0000889348 cvu:GovernmentSubcontractsMember 2023-01-01 2023-12-31 0000889348 cvu:GovernmentSubcontractsMember 2022-01-01 2022-12-31 0000889348 cvu:PrimeGovernmentContractsMember 2023-01-01 2023-12-31 0000889348 cvu:PrimeGovernmentContractsMember 2022-01-01 2022-12-31 0000889348 cvu:CommercialContractsMember 2023-01-01 2023-12-31 0000889348 cvu:CommercialContractsMember 2022-01-01 2022-12-31 0000889348 us-gaap:TransferredOverTimeMember 2023-01-01 2023-12-31 0000889348 us-gaap:TransferredOverTimeMember 2022-01-01 2022-12-31 0000889348 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-12-31 0000889348 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-12-31 0000889348 cvu:FavorableAdjustmentMember 2023-01-01 2023-12-31 0000889348 cvu:FavorableAdjustmentMember 2022-01-01 2022-12-31 0000889348 cvu:UnfavorableAdjustmentMember 2023-01-01 2023-12-31 0000889348 cvu:UnfavorableAdjustmentMember 2022-01-01 2022-12-31 0000889348 us-gaap:MachineryAndEquipmentMember 2023-12-31 0000889348 us-gaap:MachineryAndEquipmentMember 2022-12-31 0000889348 us-gaap:MachineryAndEquipmentMember srt:MinimumMember 2023-12-31 0000889348 us-gaap:MachineryAndEquipmentMember srt:MaximumMember 2023-12-31 0000889348 us-gaap:ComputerEquipmentMember 2023-12-31 0000889348 us-gaap:ComputerEquipmentMember 2022-12-31 0000889348 us-gaap:FurnitureAndFixturesMember 2023-12-31 0000889348 us-gaap:FurnitureAndFixturesMember 2022-12-31 0000889348 us-gaap:VehiclesMember 2023-12-31 0000889348 us-gaap:VehiclesMember 2022-12-31 0000889348 us-gaap:LeaseholdImprovementsMember 2023-12-31 0000889348 us-gaap:LeaseholdImprovementsMember 2022-12-31 0000889348 us-gaap:PropertyPlantAndEquipmentMember 2023-01-01 2023-12-31 0000889348 us-gaap:PropertyPlantAndEquipmentMember 2022-01-01 2022-12-31 0000889348 cvu:WeldingMetallurgyIncMember 2018-12-30 0000889348 us-gaap:RevolvingCreditFacilityMember 2016-03-24 0000889348 cvu:TermLoanMember 2016-03-24 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember us-gaap:PrimeRateMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateOneMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateTwoMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateThreeMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateFourMember 2022-04-11 2022-04-12 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember srt:MaximumMember 2022-08-19 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2022-08-18 2022-08-19 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2022-11-09 2022-11-10 0000889348 cvu:TermLoanMember cvu:BankUnitedMember 2022-11-09 2022-11-10 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2023-03-21 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember cvu:PeriodOneMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember cvu:PeriodTwoMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember cvu:PeriodThreeMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember cvu:PeriodFourMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember cvu:PeriodFiveMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2023-03-21 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember cvu:FirstInstallmentMember 2023-03-21 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember cvu:SecondInstallmentMember 2023-03-21 2023-03-23 0000889348 cvu:BankUnitedMember us-gaap:DebtInstrumentRedemptionPeriodOneMember 2023-12-31 0000889348 cvu:BankUnitedMember us-gaap:DebtInstrumentRedemptionPeriodTwoMember 2023-12-31 0000889348 cvu:BankUnitedMember us-gaap:DebtInstrumentRedemptionPeriodThreeMember 2023-12-31 0000889348 cvu:BankUnitedMember 2023-12-31 0000889348 cvu:BankUnitedMember srt:MinimumMember 2023-01-01 2023-12-31 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-19 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember us-gaap:SubsequentEventMember cvu:PeriodOneMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember us-gaap:SubsequentEventMember cvu:PeriodTwoMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember us-gaap:SubsequentEventMember cvu:PeriodThreeMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember us-gaap:SubsequentEventMember cvu:PeriodFourMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember us-gaap:SubsequentEventMember cvu:PeriodFiveMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember us-gaap:SubsequentEventMember cvu:PeriodSixMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember us-gaap:SubsequentEventMember cvu:PeriodSevenMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2023-12-31 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2022-12-31 0000889348 cvu:TermLoanMember cvu:BankUnitedMember 2021-10-27 2021-10-28 0000889348 cvu:BankUnitedMember 2023-01-01 2023-12-31 0000889348 cvu:BankUnitedMember 2022-12-31 0000889348 cvu:BankUnitedMember cvu:RevolvingLoanAndTermLoanMember us-gaap:PrimeRateMember 2023-01-01 2023-12-31 0000889348 us-gaap:PrimeRateMember 2023-12-31 0000889348 cvu:BankUnitedMember cvu:RevolvingLoanAndTermLoanMember 2023-12-31 0000889348 cvu:TermLoanMember 2022-12-31 0000889348 srt:ScenarioPreviouslyReportedMember 2022-12-31 0000889348 srt:RestatementAdjustmentMember 2022-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember 2023-12-31 0000889348 us-gaap:StateAndLocalJurisdictionMember 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2018Member 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2018Member 2023-01-01 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2017Member 2023-01-01 2023-12-31 0000889348 us-gaap:DomesticCountryMember 2023-01-01 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2017Member 2023-12-31 0000889348 us-gaap:StateAndLocalJurisdictionMember 2023-01-01 2023-12-31 0000889348 us-gaap:CostOfSalesMember 2023-01-01 2023-12-31 0000889348 us-gaap:CostOfSalesMember 2022-01-01 2022-12-31 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-12-31 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2022-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-12-31 0000889348 us-gaap:PerformanceSharesMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2023-01-01 2023-12-31 0000889348 us-gaap:PerformanceSharesMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2023-01-01 2023-12-31 0000889348 us-gaap:PerformanceSharesMember 2023-01-01 2023-12-31 0000889348 us-gaap:PerformanceSharesMember 2023-12-31 0000889348 cvu:PerformanceEquityPlan2009Member 2009-12-31 0000889348 cvu:PerformanceEquityPlan2009Member 2023-12-31 0000889348 cvu:LTIP2016Member 2016-12-31 0000889348 cvu:LTIP2016Member us-gaap:EmployeeStockOptionMember 2023-12-31 0000889348 cvu:LTIP2016Member 2020-10-01 2020-12-31 0000889348 cvu:LTIP2016Member 2020-12-31 0000889348 cvu:LTIP2016Member 2023-04-01 2023-06-30 0000889348 cvu:LTIP2016Member 2023-06-30 0000889348 cvu:LTIP2016Member 2023-12-31 0000889348 us-gaap:RestrictedStockMember 2022-12-31 0000889348 us-gaap:RestrictedStockMember 2023-01-01 2023-12-31 0000889348 us-gaap:RestrictedStockMember 2023-12-31 0000889348 us-gaap:PerformanceSharesMember 2022-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2023-01-01 2023-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2023-01-01 2023-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2023-01-01 2023-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2023-01-01 2023-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2022-01-01 2022-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2022-01-01 2022-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2022-01-01 2022-12-31 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2022-01-01 2022-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2023-01-01 2023-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2023-01-01 2023-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2023-01-01 2023-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2023-01-01 2023-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2022-01-01 2022-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2022-01-01 2022-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2022-01-01 2022-12-31 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2022-01-01 2022-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2023-01-01 2023-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2023-01-01 2023-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2023-01-01 2023-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2023-01-01 2023-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2022-01-01 2022-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2022-01-01 2022-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2022-01-01 2022-12-31 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2022-01-01 2022-12-31 0000889348 2023-05-16 2023-05-17 0000889348 2021-05-19 2021-05-20 iso4217:USD xbrli:shares iso4217:USD xbrli:shares xbrli:pure

 

 

UNITED STATES  

SECURITIES AND EXCHANGE COMMISSION  

Washington, D.C. 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

 

Commission file number 1-11398

 

CPI AEROSTRUCTURES, INC.  

(Exact name of registrant as specified in its charter)

 

 

New York 11-2520310
(State or other jurisdiction of  (I.R.S. Employer
incorporation or organization) Identification No.)

 

91 Heartland Blvd., Edgewood, New York 11717

 (Address of principal executive offices)

 

 (631) 586-5200

(Registrant’s telephone number, including area code) 

 

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, $.001 par value CVU NYSE American

 

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 Section 15(d) of the 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 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 12-b-2 of the Exchange Act).  

Yes  ☐     No  ☒

 

As of June 30, 2023 (the last business day of the registrant’s most recently completed second fiscal quarter), the aggregate market value of the registrant’s common stock (based on its reported last sale price on NYSE American on June 30, 2023 of $3.89) held by non-affiliates of the registrant was $46,445,647.

 

As of April 4, 2024, the registrant had 12,854,428 shares of common stock, $.001 par value, outstanding.

 

Documents Incorporated by Reference:

 

Portions of the CPI Aerostructures, Inc. Proxy Statement to be filed with the Securities and Exchange Commission within 120 days after the year covered by this Annual Report on Form 10-K with respect to the registrant’s 2024 Annual Meeting of Stockholders are incorporated by reference into Part III hereof.

 

 

  

 

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES  

 

FORM 10-K  

ANNUAL REPORT 

  

FOR THE FISCAL YEAR ENDED DECEMBER 31, 2023 

 

TABLE OF CONTENTS

 

FORWARD-LOOKING STATEMENTS 3
PART I   3
  Item 1. BUSINESS 3
  Item 1A. RISK FACTORS 12
  Item 1B UNRESOLVED STAFF COMMENTS 19
  Item 1C CYBERSECURITY 19
  Item 2. PROPERTIES 20
  Item 3. LEGAL PROCEEDINGS 20
  Item 4. MINE SAFETY DISCLOSURES 20
PART II   20
  Item 5. MARKET FOR REGISTRANT’S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES 20
  Item 6. [RESERVED] 21
  Item 7. MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS 21
  Item 7A. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK  25
  Item 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA 25
  Item 9. CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE 25
  Item 9A CONTROLS AND PROCEDURES 25
  Item 9B. OTHER INFORMATION 26
  Item 9C DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS 26
PART III   26
  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   26
  Item 15. EXHIBITS AND FINANCIAL STATEMENT SCHEDULES 26
  Item 16. FORM 10-K SUMMARY 28
    INDEX TO FINANCIAL STATEMENTS F-1

 

2

 

 

FORWARD LOOKING STATEMENTS

 

This Annual Report on Form 10-K contains forward-looking statements within the meaning of the Private Securities Litigation Reform Act of 1995. When used in this Annual Report on Form 10-K and in future filings by us with the Securities and Exchange Commission (“SEC”), the words or phrases “believe”, “intend”, “plan”, “will”, “will likely result”, “we expect”, “could”, “will continue”, “anticipated”, “estimated” or similar expressions are intended to identify forward-looking statements. In addition, any statements that refer to projections, forecasts or other characterizations of future events or circumstances, including any underlying assumptions, are forward-looking statements. These statements are not guarantees of future performance and are subject to risks and uncertainties. There can be no assurance that future developments will be those that have been anticipated. We may not actually achieve the plans, intentions or expectations disclosed in our forward-looking statements. Further, such statements are subject to certain risks and uncertainties that could cause actual results to differ materially from historical earnings and those presently anticipated or projected. Numerous factors, including the risk factors described in “Item 1A: Risk Factors” in this Annual Report on Form 10-K, could cause our actual results to differ materially from those expressed in our forward-looking statements. We assume no obligation to revise or update any forward looking statements for any reason except as required by law.

 

The forward-looking statements contained in this Form 10-K speak only as of the date of its filing. Except where required by applicable law, we expressly disclaim a duty to provide updates to forward-looking statements after the date of this Form 10-K to reflect subsequent events, changed circumstances, changes in expectations, or the estimates and assumptions associated with them. The forward-looking statements in this Form 10-K are intended to be subject to the safe harbor protection provided by the federal securities laws.

 

You should read the financial information set forth below in conjunction with our consolidated financial statements and notes thereto.

 

EXPLANATORY NOTE

 

During our review of the Company’s (defined below) deferred income tax positions as of December 31, 2023, we determined that, due to the inadequate review, assessment of and reporting of the Company’s temporary differences between book and taxable income, the Company’s December 31, 2022 deferred tax assets and deferred tax liabilities balances as previously reported by the Company in Note 11 “Income Taxes” of the Company’s financial statements which were included within the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2022, require restatement. The restatement of these balances has no impact to the Company’s previously reported net deferred tax asset on its December 31, 2022 balance sheet and no impact to the Company’s previously reported net income, earnings per share or cash flow for the twelve months ended December 31, 2022. The restatement of the aforementioned balances, as well as additional details regarding the restatement adjustments, appears in Note 11 “Income Taxes” of the Company’s financial statements included within this Annual Report on Form 10-K.

 

Company management has determined that a material weakness exists in the Company’s internal controls relating to the review, assessment of and reporting of the Company’s temporary differences between book and taxable income and has included disclosure of this material weakness in Management’s Annual Report on Internal Control over Financial Reporting included in Part II Item 9A in this Annual Report on Form 10-K. Except as described above and as amended in this Annual Report on From 10-K, we have not amended and do not intend to amend any of our previously filed Annual Reports on Form 10-K or Quarterly Reports on Form 10-Q. 

 

PART I

 

Item 1.BUSINESS

 

General

 

CPI Aerostructures, Inc., including its wholly owned subsidiary Welding Metallurgy, Inc. (“WMI”) and Compac Development Corporation, a wholly owned subsidiary of WMI (collectively, “CPI Aero”, the “Company”, “us”, or “we”) is a manufacturer of structural assemblies, integrated systems, and kitted components for the domestic and international aerospace and defense (“A&D”) markets. Our products are generally used by customers in the production of fixed wing aircraft, helicopters, electronic warfare (“EW”) systems, intelligence, surveillance, and reconnaissance (“ISR”) systems, missiles, and other sophisticated A&D products. We are primarily a Tier 1 supplier to Original Equipment Manufacturers (“OEMs”). We are also a Tier 2 supplier to larger Tier 1 manufacturers and a prime contractor to the United States (“U.S.”) Department of Defense (“DOD”), primarily the U.S. Air Force (“USAF”). Our products are used by OEMs within both commercial aerospace and national security markets. In addition to our assembly operations, we provide manufacturing engineering, program management, supply chain management, kitting, and maintenance repair and overhaul (“MRO”) services.

 

CPI Aero has over 43 years of experience as a contractor. Our team possesses extensive technical expertise, program and supply chain management, and integration capabilities. Our competitive advantage lies in our ability to offer large contractor capabilities with the flexibility and responsiveness of a small company, while staying competitive in cost and delivering superior quality products.

 

We maintain a website located at www.cpiaero.com. Our corporate filings, including our Annual Reports on Form 10-K, our Quarterly Reports on Form 10-Q, our Current Reports on Form 8-K, our proxy statements and reports filed by our officers and directors under Section 16(a) of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), and any amendments to those filings, are available, free of charge, on our website as soon as reasonably practicable after we electronically file such material with the SEC. The contents of our website are not incorporated in or otherwise to be regarded as a part of this Annual Report on
Form 10-K.

 

History

 

Conceived and started as a technical consulting firm on January 11, 1980, within a few years, Composite Products International Inc. (“CPI”) was manufacturing aircraft structural components for U.S. military aircraft under contract to the U.S. Government. By the late 1980s, CPI was also providing structural components for civil aircraft in the commercial market.

 

In the 1990s, CPI became a publicly traded company and changed its name to CPI Aerostructures, Inc. (“CPI Aero”). The Company continued to grow, both in size and in its business. U.S. Government contracts served as the mainstay of CPI Aero’s business, and the Company continued to grow its presence in the commercial market as well. Commitment to customer satisfaction and pride in a job well done propelled CPI Aero to the forefront as a reputable and hardworking supplier to OEMs.

 

On September 5, 2000, CPI Aero shares were listed on the American Stock Exchange (now known as NYSE American). We also started to focus on diversifying our business model to pursue more commercial contracts. In 2007, the Company won three major contracts and experienced great growth and expansion.

 

3

 

 

In 2018, CPI Aero acquired Welding Metallurgy Inc. This allowed for a small but strategically important amount of vertical integration in complex fusion welding and large diameter tube bending capability. The acquisition included Miller Stuart and Compac Development Corp., two other business lines that added fabrication of electrical cables, harnesses and enclosures to the Company’s capabilities.

 

Today, CPI Aero continues to engage in traditional high quality structural assembly manufacturing while incorporating the latest in technology to improve quality and streamline production. Our success is rooted in our core company values, the dedication and skill of our employees, and our commitment to providing our customers the full-service solution they require.

 

Products and Services

 

We offer design, engineering, manufacture, build, MRO services, and supply chain and kitting services capabilities to the A&D industry as follows:

 

Aerostructures: New Production and Repair/Overhaul of Fielded Wing Structures and other Control Surfaces, Rudder Island, Engine Inlets/Nacelles, Engine Exhaust Manifolds, Aircraft Doors and Windows, Aircraft Steps and Racks, and other Aircraft Secondary Structures

Aerosystems: Airborne Pod Structures and Integration of Internal Systems, Radar Housing Structures, Panel Assemblies, Mechanical Door Locking Systems, and Canopy Lifting Systems

Large Diameter Tube Bending: Complex Ducts and Tubes in Steel, Aluminum, Titanium, and Nickel Alloys

Complex Specialty Welding: Fusion Welded Fluid Tanks and Resistance Welding (Spot and Seam)

Electrical Cables, Harness, and Enclosures: Wire Harnesses, Power Control Systems, Fuel Management Systems, Power Distribution Systems, Fully Integrated Electrical Control Systems, and enclosures

 

Engineering Services and Capabilities

 

As a build-to-print structural component manufacturer, CPI Aero’s engineering focus is on executing customer contracts through product realization, and to support collaborative design development using design for manufacturing and assembly (“DFMA”), geometric dimensioning & tolerancing (“GD&T”), and tooling concept support. Although not vertically integrated, CPI Aero has a deep well of experience on various types of detail part manufacturing that allows us to provide detailed design for manufacturing input during the design refinement process.

 

We have significant experience working in a full model-based definition environment, both CATIA and NX, due to our long sustainment support on older airframes. CPI Aero also possesses the capability to work with traditional blueprints, mylars and loft. The Company has executed several projects where older engineering data sets were “rehabilitated” to fully model-based datasets per customers’ requests.

 

CPI Aero is capable and has experience in designing many types of assembly type tools up to and including large floor mounted, articulated tooling at high levels of precision. We are also capable of designing various types of tooling that can be 3D printed for rapid response. Understanding our customers’ product performance needs and combining product GD&T layout and final tooling definitions and requirements helps us maximize product realization success.

 

Overall, CPI Aero’s engineering team is dedicated to providing our customers an experience where our activities are an extension of their business and complement their engineering goals.

 

Business Strategy

 

CPI Aero is committed to achieving revenue, gross profit margin, and earnings growth through the successful implementation of our business development strategy. CPI Aero’s future strategic direction is tied to aerostructures, aerosystems, supply chain, and kitting services, and a deeper market penetration of formerly acquired businesses in welding, tube bending, wire harnesses, and electronics. To accomplish this strategy, we are focused on executing on our current customer programs while pursuing new aerospace build-to-print opportunities - in both new production and MRO statements of work.

 

We believe that there has been a shift in the market for more build-to-print contracts by OEMs versus the recent past trend of design and build contracts. This trend fits in well with CPI Aero’s strengths. In addition, we expect to identify and close contracts for which we can provide more value added content to our customer (like integrating sub-assemblies into higher level Aerostructures and Aerosystems statements of work) and we intend to pursue statements of work that require proportionately higher CPI Aero value added content.

 

Another tenet of the CPI Aero business development strategy is portfolio reshaping of our existing business by identifying and closing long-term agreements or multi-year contracts, which provides an opportunity to firm-up supplier agreements and secure supplier capacity.

 

The final element of CPI Aero’s business development strategy is to build upon the Company’s existing customer relationships and to develop relationships with new customers. We intend to increase customer engagements by deploying our business development personnel to solidify existing customer relationships which have been established by performance excellence, transparency and trust over many years and multiple programs. We have also added additional resources to our business development function to cultivate new relationships with new customers.

 

4

 

 

We will make sure each customer has the best possible buying experience, by ensuring we are a best value partner through the delivery of high quality products delivered on time. The CPI Aero team will always work in a collaborative way to meet customers’ needs and solve their problems.

 

The Market

 

We have positioned the Company to take advantage of opportunities in the military aerospace market to a broad customer base, thereby reducing the impact of direct government contracting limitations. Our success as a subcontractor to defense prime contractors has provided us with opportunities to also act as a subcontractor to prime contractors in the production of commercial aircraft structures.

 

Over time, our Company has expanded in both capabilities and size, as evidenced by our growth in our operational, global supply chain management, program management, and engineering capabilities, as well as the growth in our manufacturing shop floor size and equipment base. These expansions have provided us the ability to supply larger and more complex Aerostructures and Aerosystems products in support of our government-based programs as well as to pursue opportunities within the commercial and business jet markets. Our capabilities have also allowed us to obtain MRO, kitting, tube bending, welding, and electronics related contracts.

 

Competition

 

We face competition in our role as both a prime contractor to the U.S. Government and as a Tier 1 or Tier 2 subcontractor to military and commercial aircraft manufacturers. With respect to Aerostructures products, we often compete against much larger Tier 1 suppliers, such as Triumph Group, Spirit Aerosystems, Kaman Aerospace, GKN Aerospace, Ducommun, and LMI Aerospace. We believe that we can compete effectively with these larger companies by delivering products with the same level of quality and performance at a better value for our customer. With respect to Aerosystems products, such as our portfolio of EW and ISR integrated pod structures, we find more limited competition and are not aware of competition from any of the Aerostructures companies mentioned above. In these cases, we typically compete with the internal manufacturing arm of our customers. We believe our unique skills related to integrated pod structures combined with a very efficient and generally much lower cost structure create a competitive advantage for bidding on Aerosystems contracts.

 

For certain unrestricted contracts for the U.S. Government, we may compete against well-established prime contractors, including Northrop Grumman, Lockheed Martin, and Boeing. All of these competitors possess significantly larger infrastructures, greater resources and the capabilities to respond to much larger contracts. We believe that our competitive advantage lies in our ability to offer large contractor capabilities with the flexibility and responsiveness of a small company, while staying competitive in cost and delivering superior quality products. While larger prime contractors compete for significant modification awards, they generally do not compete for awards in smaller modifications, spares and replacement parts, even for aircraft for which they are the original manufacturer. In certain instances, the large prime contractors often subcontract much of the work they win to their Tier 1 suppliers so we also may act as a subcontractor to them in these situations. Furthermore, in some cases these prime contractors are not permitted to bid, for example when the U.S. Government designates a contract as a Small Business Set-Aside. In these restricted contracts for the U.S. Government, CPI Aero typically competes against numerous small business competitors. We believe we compete effectively against the smaller competitors because of our 40 years of experience and expertise in responding to requests for proposals for government contracts.

 

Our Customers

 

Approximately $6.0 million and $6.1 million of our revenue for the years ended December 31, 2023 and 2022, respectively, were from customers outside the U.S. All other revenue for the years ended December 31, 2023 and 2022 has been attributable to customers within the U.S. We have no assets outside the U.S.

 

We have positioned our Company to take advantage of opportunities in the military aerospace market to a broad customer base, which we believe will reduce the potential impact of industry consolidation. Our success as a subcontractor to defense prime contractors has provided us with opportunities to also act as a subcontractor to prime contractors in the production of commercial aircraft structures, which we believe will also reduce our exposure to defense industry consolidation, government spending decisions, and other defense industry risks.

 

Our OEM customers in the defense sector include leading prime defense contractors such as:

 

 ●Lockheed Martin Corporation - we provide products used in the production of Lockheed Martin Corporation’s (“Lockheed Martin”) F-35 Joint Strike Fighter and an international variant of the F-16 Fighting Falcon. We also provide structural assemblies to Sikorsky, a Lockheed Martin company (“Sikorsky”), for many of their military helicopter platforms including the UH-60 BLACK HAWK©, CH-53E and CH-53K, and a special purpose helicopter;

 

5

 

 

RTX Corporation, formerly Raytheon Technologies – we provide products to two business divisions of RTX Corporation: Raytheon (Next Generation Jammer – Mid-Band pod, Advanced Tactical Pods, Intelligence, Surveillance and Airborne Reconnaissance Pods, Missile Wings and Components, and Radar Racks) and Collins Aerospace (RF Enclosures);

 

 ●The Boeing Company - we provide critical wing structure for The Boeing Company’s (“Boeing”) A-10 re-wing program and welded structures for the CH-47 Chinook helicopter; and

 

 ●Northrop Grumman Corporation – we provide structural components and kits for the Northrop Grumman Corporation (“NGC”) E-2D Advanced Hawkeye, various integrated radar and laser pod structures, welded tubes, and welded fluid tanks for a classified program.

 

81% and 82% of our revenue in 2023 and 2022, respectively, was generated by subcontracts with defense prime contractors.

 

Our OEM customers in the civil aviation market include:

 

 ●Embraer S.A. Executive Jets – we provide engine inlet assemblies for Embraer S.A.’s (“Embraer”) Phenom 300 business jet.

 

5% and 7% of our revenue in 2023 and 2022, respectively, was generated by commercial contract sales.

 

CPI Aero also is a prime contractor to the DOD, primarily through contracts directly with the USAF and the Defense Logistics Agency (“DLA”), providing supply chain management, assembly & integration, and kitting services for the F-16 and T-38 programs. 14% and 10% of our revenue in 2023 and 2022, respectively, were generated by direct government sales.

 

Significant Contracts

 

Our most significant contracts are described below:

 

Military Aircraft – Subcontracts with Prime Contractors

 

E-2D Advanced Hawkeye: The NGC E-2D Advanced Hawkeye is an all-weather, carrier-based tactical Airborne Early Warning aircraft. The twin turboprop aircraft was designed and developed in the 1950s by the Grumman Aircraft Company for the U.S. Navy. The U.S. Navy aircraft has been progressively updated with the latest variant, the E-2D, first flying in 2007. In 2008, we received an initial $7.9 million order from NGC to provide structural kits used in the production of Outer Wing Panels (“OWP”) of the E-2D. We initially valued the long-term agreement at approximately $98 million over an eight-year period, with the potential to be in excess of $195 million over the life of the aircraft program. In February of 2019, we announced a new multi-year award valued at up to approximately $47.5 million. In June 2020, we announced that we had received firm orders valued in excess of $43 million and $5 million in long-lead funding in anticipation of purchase orders for OWP structural components and kits. In 2021, we received additional orders valued at approximately $11 million. Since 2008, the cumulative orders we have received on this program through December 31, 2023 exceed $209 million. We anticipate shipping against these orders into 2025.

 

In addition, in 2015 we won an award to supply structural components and kits for the Wet Outer Wing Panel (“WOWP”) on the E-2D Advanced Hawkeye airborne early warning and control (“AEW&C”) aircraft that will be manufactured for the Japan Air Self Defense Force (“JASDF”). We are responsible for component source selection, supply chain management, delivery of kits, and providing manufacturing engineering services to NGC during the integration of the components into the WOWP E-2D. In late 2019, CPI Aero received additional WOWP kit requirements increasing the total value of this program for the JASDF to be in excess of $20 million. CPI completed deliveries in support of this contract in 2023.

 

In February 2020, the Company’s subsidiary WMI received approximately $4 million in purchase orders from NGC to produce numerous welded structures and tubes for the E-2D Advanced Hawkeye. Under the terms of the purchase orders, WMI manufactured more than 140 different items in support of the production of at least 25 E-2D aircraft. CPI received follow-on orders for additional quantities of welded products in 2023 and anticipates additional orders in 2024.

 

ALQ-249 Next Generation Jammer – Mid-Band Pod (“NGJ-MB”): The Raytheon NGJ-MB pod is an external jamming pod that will disrupt and degrade enemy aircraft and ground radar and communication systems, and will replace the ALQ-99 system on the U.S. Navy’s EA-6B Growler carrier-based electronic warfare aircraft. The U.S. Navy plans to install these pods on 139 EA-18G Growlers during the production phase. There are two pods per aircraft. There are also 11 EA-18Gs operated by the Royal Australian Air Force. Raytheon received a $1 billion sole source contract from the U.S. Navy in April 2016, and CPI Aero has a contract with Raytheon to assemble the pod structural housing and air management system (“AMS”) and integrate customer furnished equipment. In 2019, Raytheon authorized CPI Aero to begin production of pod structures and AMS components for the System Demonstration and Test Article (“SDTA”) phase of the NGJ-MB program. All SDTA pods and AMS components orders received were valued in excess of $60 million and completed delivery as of December 31, 2022.

 

6

 

 

On November 16, 2021 the Company announced it was authorized by Raytheon to start the production phase of the program. The Company was awarded low rate production (“LRIP”) I and II orders valued at approximately $18.5 million. LRIP III, for which the Company was awarded an order of approximately $14.0 million in October 2022, and later definitized at $32.5 million. In November 2023, RTX issued a Memorandum for Record for Lot4 with an anticipated Program Value of $32 million and an initial funding limit of $16 million. We believe that the total value of the NGJ-MB program through production will be in excess of $210 million through 2030.

 

A-10 Thunderbolt II “Warthog”: The Boeing A-10 Thunderbolt II, also known as the Warthog, is a twin-engine aircraft that provides close-air support of ground forces and employs a wide variety of conventional munitions including general-purpose bombs. This simple, effective and survivable single-seat aircraft can be used against all ground targets, including tanks and other armored vehicles. On August 21, 2019, Boeing announced that it had received an Indefinite Delivery/Indefinite Quantity (“IDIQ”) contract award from the USAF with a maximum contract value of $999 million to manage the production of up to 112 new wing sets and spares kits for A-10 aircraft, and the USAF ordered 27 wing sets from Boeing immediately at contract award. In 2019, CPI Aero announced the receipt of an IDIQ contract with a maximum ceiling value of $48 million from Boeing for structural assemblies for the A-10. Under the terms of the IDIQ contract, CPI Aero will manufacture major structural subassemblies of the A-10 aircraft’s wing. The Company also announced that it had received initial purchase orders under the IDIQ contract valued at approximately $6 million for the production of four shipsets of assemblies and associated program start-up costs. In May 2020, CPI Aero announced the receipt of additional purchase orders totaling approximately $14 million from Boeing. In March of 2022, CPI Aero announced the receipt of additional purchase orders totaling approximately $3.2 million, bringing the total purchase orders received to $23.4 million.

 

F-35 Lightning II: The Lockheed Martin F-35 Lightning II is a family of single-seat, single-engine, all-weather stealth multirole fighter aircraft that provides unmatched multi-role capability, survivability, and connectivity with data sharing capabilities essential for joint all-domain operations. Current DOD plans call for acquiring a total of 2,456 F-35s. U.S. allies are expected to purchase hundreds of additional F-35s, with eight nations participating as cost-sharing partners in the program with the United States, and six other nations allied with the U.S. purchasing the F-35 via foreign military sales agreements with the DOD. In 2015, CPI Aero was awarded a multi-year contract to supply four different lock assemblies for the arresting gear door on the F-35C Carrier Take Off and Landing variant. CPI Aero made its first delivery under that contract in May 2017. In 2018, the Company received a new long-term agreement valued at approximately $8 million for lock assemblies to be delivered between 2020 and 2024. In November 2017, CPI Aero was awarded an additional $15.8 million multi-year contract to manufacture canopy activation drive shaft assemblies for the F-35A, F-35B, and F-35C variants.

 

UH-60 “BLACK HAWK”: The Sikorsky UH-60 BLACK HAWK helicopter is the leader in multi-mission rotary wing aircraft. Among the mission configurations it serves are troop transport, medical evacuation, electronic warfare, attack, assault support, and special operations. More than 4,000 BLACK HAWK helicopters are in use today, operating in 29 countries. CPI Aero manufactures several different structural assemblies, including welded structure for the BLACK HAWK. The majority of CPI Aero’s contracts for the BLACK HAWK are as a Tier 1 supplier to Sikorsky. The Company also is a Tier 2 supplier to GKN Aerospace for products ultimately used on the BLACK HAWK. In 2017, CPI Aero received an approximately $21 million long-term agreement through 2022 for the production of fuel panel assemblies, work it has performed for Sikorsky since 2010. Also in 2017, the Company received an $8 million long-term agreement through 2022 to manufacture machine gunner window assemblies for the BLACK HAWK, continuing work it has performed since 2010. A third five-year long-term agreement was awarded in January 2022, also for gunner window assemblies, estimated at $13.6 million with a period of performance from 2023-2027. Also, since October 2018, CPI Aero has received multiple purchase orders totaling $22 million for hover infrared suppression system (“HIRSS”) module assemblies for use as spares on older variants of the BLACK HAWK. The HIRSS is a defensive countermeasures system that is integral to the survival of the BLACK HAWK by reducing the opportunity for an infrared-seeking threat system to acquire, lock onto, track, and destroy the aircraft. Finally, in May 2021, the Company announced receiving a multi-year contract valued at up to $17.2 million for the repair and overhaul of outboard stabilator assemblies in support of the Sikorsky MH-60 SEAHAWK.

 

F-16V Fighting Falcon: The Lockheed Martin F-16 is the world’s most successful, combat-proven multirole fighter. Approximately 3,000 operational F-16s are in service today in 25 countries. The F-16V is a new variant, sold exclusively to international air forces and is the most technologically advanced fourth generation fighter in the world. In 2019, the Company announced it had been awarded a multi-year contract by Lockheed Martin to manufacture rudder island and drag chute canister (“RI/DCC”) assemblies for the F-16V. The RI/DCC is a large structural sub-assembly that is installed on the tail section of the aircraft. Deliveries began in 2021 and will continue through 2024. In June 2020, the Company announced that it had been awarded an order from Lockheed Martin as part of the previously announced multi-year contract to manufacture RI/DCC assemblies for new production F-16 Block 70/72 aircraft, in March 2021 the Company announced that it had received an additional order for these assemblies for $9.2 million and in November 2022, the Company announced another follow-on order for these assemblies for $4 million. On August 28, 2023 CPI announced the receipt of a 2nd Multiyear long-term agreement with not-to-exceed funding of $34.4M. The total value of the RI/DCC program, including both multi-year contracts is approximately $59.3 million.

 

CH-53K King Stallion: The CH-53K is a heavy-lift helicopter being developed by Sikorsky for the U.S. Marine Corps. We manufacture composite electronics racks as a Tier 2 supplier to Spirit AeroSystems, Inc., the manufacturer of the CH-53K cockpit and cabin. Through December 31, 2023, we had received orders valued at more than $2.7 million from Spirit AeroSystems, Inc.

 

7

 

 

In addition, the Company also manufactures welded tubes for the CH-53K as a Tier 1 supplier to Sikorsky. In August 2023, CPI received a Long-term Agreement with a ceiling price of $17.4 million and a funding limit of $7.3 million. These tubes will be required for the multi-year on this program. A component of this statement of work also includes CPI Aero intellectual property.

 

Undisclosed Pod Structure: In 2019, the Company received an initial purchase order from Raytheon to manufacture pod structures for an undisclosed application. The value of the order was approximately $2.3 million for manufacturing engineering services, development of assembly tooling, and the production of the prototypes. The undisclosed pod structure is currently under development. In October 2021, the Company announced that Raytheon awarded the Company an approximately $6.1 million contract modification that changes the scope of work the Company would perform and increases the quantity of pods to be produced. The program value as of December 31, 2023 was $8.4 million.

 

Undisclosed Vehicle: In 2018, the Company started production of a welded tank for NGC for an undisclosed application on an undisclosed platform. The total value of orders received as of December 31, 2023 is $3.2 million.

 

B-52 Radar Rack: In late 2021, the Company received an initial purchase order from Raytheon to manufacture radar rack structures for the B-52 Radar Modernization Program. The value of the order was approximately $4.0 million for manufacturing engineering services, development of assembly tooling, and the production of the initial units. The non-recurring and tooling phase of the program was completed and the initial 11 racks will be delivered in 2024.

 

Military Aircraft – Prime Contracts with U.S. Government

 

T-38 Pacer Classic III, Phase 2: For more than 50 years, the NGC T-38 has been the principal supersonic jet trainer used by the USAF. The T-38C Pacer Classic III Fuselage Structural Modification Kit Integration program (“PC III”) and the Talon Repair Inspection and Maintenance (“TRIM”) program are expected to increase the structural service life of the T-38 beyond 2030. In 2015, CPI Aero was awarded Phase 2 of PC III and has received purchase orders valued at approximately $2.0 million from the USAF to provide structural modification kits for the PC III aircraft structural modification program.

 

T-38 Pacer Classic III, Phase 3 and TRIM: In July 2019, the Company announced a new $65.7 million IDIQ contract from the USAF for the final phase of PC III as well as TRIM. The TRIM program is a separate USAF structural modification effort that will extend the structural service life of T-38A and T-38 model types, as well as T-38C models that were not modified during PC III. Through December 31, 2020, the Company had received orders valued at approximately $15.3 million for the PC III, Phase 3 and TRIM programs, and in 2021, the Company announced it had received three separate orders for additional requirements valued at approximately $16.2 million. Through December 2023, CPI has received funded orders under this long term agreement totaling $48.3 million.

 

Commercial Aircraft – Subcontracts with Prime Contractors

 

Embraer Phenom 300: The Phenom 300 is a twin-engine, executive jet produced by Brazilian aircraft company Embraer that can carry between six and ten passengers and a crew of two. We have been producing engine inlet assemblies for Embraer under a long-term agreement we entered into in 2012. In January 2024, we celebrated the delivery of the 800th Shipset of Inlets. In 2023, we received funded orders totaling $4.4 million.

 

8

 

Backlog

 

We produce custom assemblies pursuant to long-term contracts and customer purchase orders. Funded backlog consists of aggregate funded values under such contracts and purchase orders, excluding the portion previously included in operating revenues pursuant to Accounting Standards Codification Topic 606 (“ASC 606”). Unfunded backlog is the estimated amount of future orders under the expected duration of the program. Substantially all of our unfunded backlog is subject to termination at will and rescheduling, without significant penalty. Funds are often appropriated for programs or contracts on a yearly or quarterly basis, even though the contract may call for performance that is expected to take a number of years. Therefore, our funded backlog does not include the full value of our contracts.

 

The total backlog at December 31, 2023 is $513,351,000.

 

Our total backlog as of December 31, 2023 and 2022 was as follows: 

 

 Backlog 
(Total)
  December 31,
2023
   December 31,
2022
 
Funded  $118,218,000   $122,148,000 
Unfunded   395,133,000    392,352,000 
Total  $513,351,000   $514,500,000 

 

Approximately 97% and 98% of the total amount of our backlog at December 31, 2023 and 2022 was attributable to government contracts. Our backlog attributable to government contracts at December 31, 2023 and 2022 was as follows:

 

Backlog
(Government)
  December 31,
2023
   December 31,
2022
 
Funded  $115,681,000   $119,133,000 
Unfunded   383,574,000    384,652,000 
Total  $499,255,000   $503,785,000 

 

Our backlog attributable to commercial contracts at December 31, 2023 and 2022 was as follows:

 

Backlog
(Commercial)
  December 31,
2023
   December 31,
2022
 
Funded  $2,537,000   $3,015,000 
Unfunded   11,559,000    7,700,000 
Total  $14,096,000   $10,715,000 

 

Material and Parts

 

We subcontract production of substantially all parts incorporated into our products to third-party manufacturers under firm fixed price orders. Our decision to purchase certain components generally is based upon whether the components are available to meet required specifications at a cost and with a delivery schedule consistent with customer requirements. From time to time, we are required to purchase custom made parts from sole suppliers and manufacturers in order to meet specific customer requirements.

 

We obtain our raw materials from several commercial sources. Although certain items are only available from limited sources of supply, we believe that the loss of any single supplier would not have a material adverse effect on our business.

 

9

 

 

Government Regulation

 

Environmental Regulation

 

We are subject to regulations administered by the U.S. Environmental Protection Agency, the U.S. Occupational Safety and Health Administration, various state, county, and local agencies acting in cooperation with federal and state authorities. Among other things, these regulatory bodies impose restrictions to control air, soil, and water pollution, to protect against occupational exposure to chemicals, including health and safety risks, and to require notification or reporting of the storage, use, and release of certain hazardous chemicals and substances. The extensive regulatory framework imposes compliance burdens and risks on us. Governmental authorities have the power to enforce compliance with these regulations and to obtain injunctions or impose civil and criminal fines in the case of violations.

 

The Comprehensive Environmental Response, Compensation and Liability Act of 1980 (“CERCLA”) imposes strict, joint and several liability on the present and former owners and operators of facilities that release hazardous substances into the environment. The Resource Conservation and Recovery Act of 1976 (“RCRA”) regulates the generation, transportation, treatment, storage, and disposal of hazardous waste. In New York State, the handling, storage, and disposal of hazardous substances are governed by the Environmental Conservation Law, which contains the New York counterparts of CERCLA and RCRA. In addition, the Occupational Safety and Health Act, which requires employers to provide a place of employment that is free from recognized and preventable hazards that are likely to cause serious physical harm to employees, obligates employers to provide notice to employees regarding the presence of hazardous chemicals and to train employees in the use of such substances. 

 

Our operations require the use of a limited amount of chemicals and other materials for painting and cleaning, including solvents and thinners, which are classified under applicable laws as hazardous chemicals and substances. We follow all federal, state and local rules and regulations regarding the disposal of these chemicals and associated waste. We have obtained a permit from the Town of Islip, New York, Building Division in order to maintain a paint booth containing flammable liquids.

 

Federal Aviation Administration Regulation

 

We are subject to regulation by the Federal Aviation Administration (“FAA”) under the provisions of the Federal Aviation Act of 1958, as amended. The FAA prescribes standards and licensing requirements for aircraft and aircraft components. We are subject to inspections by the FAA and may be subjected to fines and other penalties (including orders to cease production) for noncompliance with FAA regulations. Our failure to comply with applicable regulations could result in the termination of or our disqualification from some of our contracts, which could have a material adverse effect on our operations.

 

Government Contract Compliance

 

Our government contracts and sub-contracts are subject to the procurement rules and regulations of the U.S. Government. Many of the contract terms are dictated by these rules and regulations. Specifically, cost-based pricing is determined under the Federal Acquisition Regulation (“FAR”), which provide guidance on the types of costs that are allowable in establishing prices for goods and services under U.S. Government contracts. For example, costs such as those related to charitable contributions, advertising, interest expense, and public relations are unallowable, and therefore not recoverable through sales. During and after the fulfillment of a government contract, we may be audited in respect of the direct and allocated indirect costs attributed thereto. These audits may result in adjustments to our contract costs. Additionally, we may be subject to U.S. Government inquiries and investigations because of our participation in government procurement. Any inquiry or investigation can result in fines or limitations on our ability to continue to bid for government contracts and fulfill existing contracts. We believe that we are in compliance with all federal, state, and local laws and regulations governing our operations and have obtained all material licenses and permits required for the operation of our business.

 

The U.S. Government generally has the ability to terminate our contracts, in whole or in part, without prior notice, for convenience or for default based on performance. If a U.S. Government contract were to be terminated for convenience, we generally would be protected by provisions covering reimbursement for costs incurred on the contract and profit on those costs, but not the anticipated profit that would have been earned had the contract been completed. In the unusual circumstance where a U.S. Government contract does not have such termination protection, we attempt to mitigate the termination risk through other means. Termination resulting from our default may expose us to liability and could have a material adverse effect on our ability to compete for other contracts. The U.S. Government also has the ability to stop work under a contract for a limited period of time for its convenience. In the event of a stop work order, we generally would be protected by provisions covering reimbursement for costs incurred on the contract to date and for costs associated with the temporary stoppage of work on the contract. However, such temporary stoppages and delays could introduce inefficiencies for which we may not be able to negotiate full recovery from the U.S. Government, and could ultimately result in termination for convenience or reduced future orders on certain contracts. Additionally, we may be required to continue to perform for some period of time on certain of our U.S. Government contracts, even if the U.S. Government is unable to make timely payments.

 

Insurance

 

We maintain a $2.0 million general liability insurance policy, a $100 million products liability insurance policy, and a $5.0 million umbrella liability insurance policy. Additionally, we maintain $10.0 million of director and officers’ liability insurance. We believe this coverage is adequate for claims that have been and may be brought against us, and for the types of products presently marketed because of the strict inspection standards imposed on us by our customers before they take possession of our products. Additionally, the FAR generally provide that we will not be held liable for any loss of or damage to property of the U.S. Government that occurs after the U.S. Government accepts delivery of our products and that results from any defects or deficiencies in our products unless the liability results from willful misconduct or lack of good faith on the part of our managerial personnel.

 

10

 

 

Proprietary Information

 

None of our current assembly processes or products is protected by patents. We rely on proprietary know-how and information and employ various methods to protect the processes, concepts, ideas, and documentation associated with our products. These methods, however, may not afford complete protection and there can be no assurance that others will not independently develop such processes, concepts, ideas, and documentation.

 

CPI Aero® is a registered trademark of the Company.

 

Human Capital Management

 

Our ability to attract, develop and retain top talent across all of our business functions, and particularly in highly technical areas, has a significant impact on organizational success. Accordingly, our human capital management strategy places a significant focus on both attracting a diverse, highly skilled workforce and engaging and developing talent from within by creating a work environment that promotes inclusion and equitability. By providing our valued employees the opportunity to enhance their skillsets, develop their careers and pursue excellence through numerous training and development opportunities, we consistently emphasize the importance of innovation and continuous improvement throughout our organization. We continue to pursue opportunities that enable us to build our talent pipeline, particularly for skilled labor, including running an apprentice training program several times over the course of the year and forging relationships with local high school and trade schools.

 

We attract and compensate our employees by offering a competitive total rewards package which includes benefits, resources, and programs that support health, physical, mental, and financial wellness. The benefits package we offer, coupled with employee recognition opportunities and employee engagement activities help create a comprehensive employee experience. We periodically benchmark our benefits programs and associated costs to remain competitive.

 

As of December 31, 2023, we had 203 full-time employees as compared to 208 full-time employees as of December 31, 2022. On an as-needed basis, we employ temporary personnel with specialized disciplines to fill staffing gaps. We do not have any employees represented by a union, and we believe that our relations with our employees are good. We provide our team members with ongoing opportunities to share thoughts and perspectives on company and employment-related matters through surveys, all-hands meetings, and management open door policies. Our management, with oversight from the Compensation and Human Resources Committee of our board of directors, monitors the hiring, retention, and management of our employees and regularly conducts succession planning to ensure that we continue to cultivate the pipeline of talent needed to operate our business.

 

Diversity and Inclusion

 

We value diversity and inclusion in our workforce as we understand that diversity of background, thought, and experience leads to greater innovation and improved business results. We are committed to increasing and retaining diversity at all levels of our workforce, and focus on diversity and inclusion throughout our recruitment, hiring, and onboarding processes. Over the last year, we have increased diversity on our board of directors to 29% up from 17% in 2022. Our executive management team is comprised of 40% diverse employees.

 

Across our total employee population and based on employees who self-identify, as of December 31, 2023, approximately 21% of our workforce are female, 34% are multicultural and 5% are veterans.

 

Safety

 

Ensuring the safety and well-being of our employees is a top priority. The goal of our safety program is to increase safety knowledge and awareness throughout the organization to ensure occupational health, reduce risk, and prevent incidents. We regularly benchmark our safety performance, self-audit our safety compliance, and provide our employees with safety-related training. We conduct an investigation, including root cause analysis and corrective action, any time a safety incident or a near miss occurs.

 

Our Safety Committee is comprised of employees from various disciplines throughout the organization who meet on a regular basis to execute continuous improvement strategies, develop methods to increase ownership of safety throughout the organization, establish new safety initiatives, and assess safety performance.

 

11

 

 

We monitor the effectiveness of our safety program by comparing recordable incidents and incident severity year over year. We measure the number of safety incidents with the total recordable incident rate (“TRIR”) metric and the severity of incidents with the days away restricted and transferred (“DART”) metric. The table below represents our result from the two most recent calendar years:

 

Safety Metric 2023 2022
TRIR 2.9 2.6
DART 1.0 1.3

 

TRIR = total number of recordable cases x 200,000 / total hours worked

 

DART = number of cases with days away from work x 200,000 / total hours worked by all employees

 

Community Involvement

 

Having a positive impact on the community around us is one of our most important values. We donate to local charitable organizations, such as United Way of Long Island, through both monetary contributions, as well as “drives” to collect and deliver employee donated food and school supplies. We actively engage and educate local high school students from surrounding districts about the manufacturing and engineering industry and career trajectory. This includes, hosting educational experiences and shop tours with high school and trade school classes. Members of our leadership team participate on the boards of the local aviation college and trade associations that support and advance the interests of the local community.

 

Item 1A.RISK FACTORS

 

In addition to other risks and uncertainties described in this Annual Report on Form 10-K, the following material risk factors should be carefully considered in evaluating our business because such factors may have a significant impact on our business, operating results, liquidity, and financial condition. As a result of the risk factors set forth below, actual results did and could continue to differ materially from those projected in any forward-looking statements.

 

Risks Related to Our Business

 

We depend on government contracts for a significant portion of our revenues.

 

We are a supplier, either directly or as a subcontractor, to the U.S. Government and its agencies. We depend on government contracts for a significant portion of our business. If we are suspended or barred from contracting with the U.S. Government, if our reputation or relationship with individual federal agencies were impaired, or if the U.S. Government otherwise ceased doing business with us or significantly decreased the amount of business it does with us, our business, prospects, financial condition, and operating results would be materially adversely affected.

 

We face risks relating to government contracts.

 

The funding of U.S. Government programs is subject to congressional budget authorization and appropriation processes. For many programs, the U.S. Congress appropriates funds on a fiscal year basis even though a program may extend over several fiscal years. Consequently, programs are often only partially funded initially and additional funds are committed only as Congress makes further appropriations. Appropriations are driven by numerous factors, including geopolitical events, macroeconomic conditions, the ability of the U.S. Government to enact relevant legislation, such as appropriations bills and continuing resolutions, the threat or existence of a government shutdown and potential downgrades of the United States’ credit rating, and risks relating to the upcoming U.S. presidential election. We cannot predict the extent to which total funding and/or funding for individual programs will be included, increased or reduced in budgets approved by Congress or be included in the scope of separate supplemental appropriations. In the event that appropriations for any of our programs becomes unavailable, or is reduced or delayed, our contract or subcontract under such program may be terminated or adjusted by the U.S. Government, which could have a material adverse effect on our future sales under such program, and on our financial position, results of operations and cash flows.

 

We also cannot predict the impact of potential changes in priorities due to military transformation and planning and/or the nature of war-related activity on existing, follow-on, or replacement programs. A shift of government priorities to programs in which we do not participate and/or reductions in funding for or the termination of programs in which we do participate, unless offset by other programs and opportunities, could have a material adverse effect on our financial position, results of operations, and cash flows.

 

In addition, the U.S. Government generally has the ability to terminate contracts, completely or in part, without prior notice, for convenience or for default based on performance. In the event of termination for the U.S. Government’s convenience, contractors are generally protected by provisions covering reimbursement for costs incurred on the contracts and profit on those costs but not the anticipated profit that would have been earned had the contract been completed. Termination by the U.S. Government of a contract for convenience could also result in the cancellation of future work on that program. Termination by the U.S. Government of a contract due to our default could require us to pay for re-procurement costs in excess of the original contract price, net of the value of work accepted from the original contract. Termination of a contract due to our default may expose us to liability and could have a material adverse effect on our ability to compete for contracts. Additionally, we are a subcontractor on some U.S. Government contracts. In these arrangements, the U.S. Government could terminate the prime contract for convenience or otherwise, without regard to our performance as a subcontractor. We can give no assurance that we would be awarded new U.S. Government contracts to offset the revenues lost as a result of the termination of any of our U.S. Government contracts.

 

12

 

 

We have risks associated with competing in the bidding process for contracts.

 

We obtain many of our contracts through a competitive bidding process. In the bidding process, we face the following risks:

 

 ●we must bid on programs in advance of their completion, which may result in unforeseen technological difficulties or cost overruns;

 

 ●we must devote substantial time and effort to prepare bids and proposals for competitively awarded contracts that may not be awarded to us; and

 

 ●awarded contracts may not generate sales sufficient to result in profitability.

 

Further consolidation in the aerospace industry could adversely affect our business and financial results.

 

The A&D industry has experienced significant consolidation, including among our customers, competitors, and suppliers. While we believe we have positioned our Company to take advantage of opportunities to market to a broad customer base, which we believe will reduce the potential impact of industry consolidation, there can be no assurance that industry consolidation will not impact our business. Consolidation among our customers may result in delays in the awarding of new contracts and losses of existing business. Consolidation among our competitors may result in larger competitors with greater resources and market share, which could adversely affect our ability to compete successfully. Consolidation among our suppliers may result in fewer sources of supply and increased costs to us.

 

We depend upon a select base of large prime defense contractors for the majority of our revenue, which subjects us to unique risks which may adversely affect us.

 

We currently generate a majority of our revenues by producing products for numerous programs under contracts with three prime defense contractors to the U.S. Government. These significant customers – Lockheed Martin, Raytheon and NGC – constituted approximately 30%, 26% and 12%, respectively of our 2023 revenue. Our revenues from these customers are diversified over several different A&D products, programs, and subsidiaries within these customers, however, any significant change in production rates by any of these customers would have a material effect on our results of operations and cash flows. There is no assurance that our current significant customers will continue to buy products from us at current levels, that we will retain any or all our existing significant customers, or that we will be able to form new relationships with other customers upon the loss of one or more of our existing significant customers.

 

We are subject to strict governmental regulations relating to the environment, which could result in fines and remediation expenses in the event of non-compliance.

 

We are required to comply with extensive and frequently changing environmental regulations at the federal, state, and local levels. Among other things, these regulatory bodies impose restrictions to control air, soil, and water pollution, to protect against occupational exposure to chemicals, including health and safety risks, and to require notification or reporting of the storage, use, and release of certain hazardous substances into the environment. This extensive regulatory framework imposes significant compliance burdens and risks on us. In addition, these regulations may impose liability for the cost of removal or remediation of certain hazardous substances released on or in our facilities without regard to whether we knew of, or caused, the release of such substances. Furthermore, we are required to provide a place of employment that is free from recognized and preventable hazards that are likely to cause serious physical harm to employees, provide notice to employees regarding the presence of hazardous chemicals and to train employees in the use of such substances. Our operations require the use of a limited amount of chemicals and other materials for painting and cleaning that are classified under applicable laws as hazardous chemicals and substances. If we are found not to comply with any of these rules, regulations, or permits, we may be subject to fines, remediation expenses, and the obligation to change our business practice, any of which could result in substantial costs that would adversely affect our business operations and financial condition.

 

We may be subject to fines and disqualification for non-compliance with Federal Aviation Administration (“FAA”) regulations.

 

We are subject to regulation by the FAA under the provisions of the Federal Aviation Act of 1958, as amended. The FAA prescribes standards and licensing requirements for aircraft and aircraft components. We are subject to inspections by the FAA and may be subjected to fines and other penalties (including orders to cease production) for noncompliance with FAA regulations. Our failure to comply with applicable regulations could result in the termination of or our disqualification from some of our contracts, which could have a material adverse effect on our operations and financial condition.

 

If our subcontractors or suppliers fail to perform their contractual obligations, our contract performance, and our ability to obtain future business and our profitability could be materially and adversely impacted.

 

Most of our contracts involve subcontracts with other companies upon which we rely to perform a portion of the services that we must provide to our customers. There is a risk that we may have disputes with our subcontractors, including disputes regarding the quality and timeliness of work performed by the subcontractor, customer concerns about the subcontract, our failure to extend existing task orders or issue new task orders under a subcontract, our hiring of personnel of a subcontractor, or disputes concerning payment. A failure by one or more of our subcontractors to satisfactorily provide on a timely basis the agreed-upon supplies or perform the agreed-upon services may materially and adversely affect our ability to fulfill our obligations as the prime contractor. Subcontractor performance deficiencies could result in a customer eliminating our ability to progress bill or terminate our contract for default. A prohibition on progress billing may have an adverse effect upon our cash flow and profitability and a default termination could expose us to liability and have a material adverse effect on our ability to compete for future contracts and orders. In addition, a delay in our ability to obtain components and equipment parts from our suppliers may affect our ability to meet our customers’ needs and may have a material adverse effect upon our profitability.

 

13

 

 

Due to fixed contract pricing, increasing contract costs exposes us to reduced profitability and the potential loss of future business.

 

Operating margin is adversely affected when contract costs that cannot be billed to customers are incurred. This cost growth can occur if estimates to complete a contract increase due to technical challenges or if initial estimates used for calculating the contract price were incorrect. The cost estimation process requires significant judgment and expertise. Reasons for cost growth may include unavailability and productivity of labor, the nature and complexity of the work to be performed, the effect of change orders, the availability and cost of materials, the effect of any delays in performance, availability, and timing of funding from the customer, natural disasters, pandemics, and the inability to recover any claims included in the estimates to complete. A significant increase in cost estimates on one or more programs could have a material adverse effect on our financial position or results of operations.

 

We use estimates when accounting for contracts. Changes in estimates may affect our profitability and our overall financial position.

 

We primarily recognize revenue from our contracts over the contractual period pursuant to ASC 606. Pursuant to ASC 606, revenue and gross profit are recognized as work is performed based on the relationship between actual costs incurred and total estimated costs at the completion of the contract. Recognized revenues that will not be billed under the terms of the contract until a later date are recorded on our consolidated balance sheet as an asset captioned “Contract assets.” Contracts where billings to date have exceeded recognized revenues are recorded on our consolidated balance sheet as a liability captioned “Contract liabilities.” Changes to the original estimates may be required during the term of the contract. Estimates are reviewed quarterly and the effect of any change in the estimated gross margin percentage for a contract is reflected in the consolidated financial statements for the period the change becomes known. ASC 606 requires the use of considerable estimates in determining revenues and profits and in assigning the amounts to accounting periods. As a result, there can be a significant disparity between earnings (both for accounting and taxes) as reported and actual cash received by us during any reporting period.

 

We continually evaluate all the issues related to the assumptions, risks and uncertainties inherent with the application of ASC 606; however, there is no assurance that our estimates will be accurate. If our estimates are not accurate or a contract is terminated, we will be forced to adjust revenue in later periods. Furthermore, even if our estimates are accurate, we may have a shortfall in our cash flow and we may need to borrow money to pay for costs until the reported earnings materialize to actual cash receipts.

 

If the contracts associated with our backlog were terminated, our financial condition and results of operations would be adversely affected.

 

The maximum contract value specified under each contract that we enter is not necessarily indicative of the revenues that we will realize under that contract. Because we may not receive the full amount we expect under a contract, we may not accurately estimate our backlog because the earnings of revenues on programs included in backlog may never occur or may change. Cancellations of pending contracts or terminations or reductions of contracts in progress could have a material adverse effect on our business, prospects, financial condition, or results of operations.

 

We may be unable to attract and retain personnel who are key to our operations.

 

Our success, among other things, is dependent on our ability to attract and retain highly qualified senior officers and employees at all levels. Competition for key personnel is intense. Our ability to attract and retain senior officers and experienced, top rate employees is dependent on several factors, including prevailing market conditions and compensation and benefit packages offered by companies competing for the same talent and our reputation in the industry. If our reputation is adversely affected, we may be unable to recruit, hire, and retain talented personnel. The inability to hire and retain these people may adversely affect our production operations and other aspects of our business.

 

We are subject to intense competition for the skilled technicians necessary to manufacture our products.

 

We are subject to intense competition for the services of skilled technicians necessary to manufacture our products. The demand for these individuals may increase as other manufacturers seek to bring to the U.S. manufacturing processes currently outsourced overseas. If the U.S. economy continues to undergo a period of inflation, our labor costs may increase which could have a material adverse effect on our business, financial condition, and results of operations.

 

14

 

 

We are subject to the cyclical nature of the commercial aerospace industry, and any future downturn in the commercial aerospace industry or general economic conditions, including inflation could adversely impact the demand for our products.

 

Our business may be affected by certain characteristics and trends of the commercial aerospace industry or general economic conditions that affect our customers, such as the current inflationary and high interest rate environment in the U.S. and the resultant impacts on the supply chain, the labor market and the general economy, as well as fluctuations in the aerospace industry’s business cycle, varying fuel and labor costs, intense price competition and regulatory scrutiny, certain trends, including a possible decrease in aviation activity and a decrease in outsourcing by aircraft manufacturers, or the failure of projected market growth to materialize or continue. If these characteristics and trends adversely affect customers in the commercial aerospace industry, they may reduce the overall demand for our products.

 

Our working capital requirements may negatively affect our liquidity and capital resources.

 

Our working capital requirements can vary significantly, depending in part on the timing of new program awards and the payment terms with our customers and suppliers. If our working capital needs exceed our cash flows from operations, we would look to our cash balances and availability for borrowings under our credit facility to satisfy those needs, as well as potential sources of additional capital, which may not be available on satisfactory terms and in adequate amounts, if at all. See “Risks Related to Our Indebtedness and Liquidity” below.

 

We incur risks associated with new programs.

 

New programs with new technologies typically carry risks associated with design changes, development of new production tools, increased capital and funding commitments, ability to meet customer specifications, delivery schedules and unique contractual requirements, supplier performance, ability of the customer to meet its contractual obligations to us, and our ability to accurately estimate costs associated with such programs. In addition, any new program may not generate sufficient demand or may experience technological problems or significant delays in the regulatory or other certification or manufacturing and delivery schedule. If we were unable to perform our obligations under new programs to the customer’s satisfaction, if we were unable to manufacture products at our estimated costs, or if a new program in which we had made a significant investment was terminated or experienced weak demand, delays, or technological problems, then our business, financial condition and results of operations could be materially adversely affected. This risk includes the potential for default, quality problems, or inability to meet specifications, as well as our inability to negotiate final pricing for program changes and could result in low margin or forward loss contracts, and the risk of having to write-off contract assets if they were deemed to be unrecoverable. In addition, beginning new work on existing programs also carries risk associated with the transfer of technology, knowledge, and tooling.

 

To perform on new programs, we may be required to expend up-front costs which may not have been negotiated in our selling price. Additionally, we may have made margin assumptions related to those costs, that in the case of significant program delays and/or program cancellations, or if we are not successful in negotiating favorable margin on scope changes, could cause us to experience margin degradation which may be material, for costs that are not recoverable. Such charges and the loss of up-front costs could have a material adverse impact on our liquidity.

 

We are presently classified as a small business and the loss of our small business status may adversely affect our ability to compete for government contracts.

 

We are presently classified as a small business under the North American Industry Classification Systems (“NAICS”) industry and product specific codes that are regulated in the U.S. by the Small Business Administration (“SBA”). We are not considered a small business under all NAICS codes. While we do not presently derive a substantial portion of our business from contracts that are set aside for small businesses, we are able to bid on small business set-aside contracts as well as contracts that are open to non-small business entities. As the NAICS codes are periodically revised, it is possible that we may lose our status as a small business. The loss of small business status would adversely affect our eligibility for special small business programs and limit our ability to collaborate with other business entities which are seeking to team with small business entities as may be required under a specific contract.

 

Cyber security attacks, internal system or service failures and technological changes, including the use of machine learning and generative artificial intelligence, may adversely impact our business and operations.

 

Any system or service disruptions, including those caused by projects to improve our information technology systems, if not anticipated and appropriately mitigated, could disrupt our business, and impair our ability to effectively provide products and related services to our customers and could have a material adverse effect on our business. We could also be subject to systems failures, including network, software, or hardware failures, whether caused by us, third-party service providers, intruders or hackers, computer viruses, natural disasters, power shortages, or terrorist attacks. Cyber security threats are evolving and include, but are not limited to, malicious software, phishing, and other unauthorized attempts to gain access to sensitive, confidential, or otherwise protected information related to us or our products, customers, or suppliers, or other acts that could lead to disruptions in our business. Because the techniques used by cyber-attackers to access or sabotage networks change frequently and may not be recognized until launched against a target, we may be unable to anticipate these tactics. Any such failures to prevent or mitigate cyber-attacks could cause loss of data and interruptions or delays in our business, cause us to incur remediation costs, or subject us to claims and damage our reputation. In addition, the failure or disruption of our communications or utilities could cause us to interrupt or suspend our operations or otherwise adversely affect our business. Although we utilize various procedures and controls to monitor and mitigate the risk of these threats, including contracting with an outside cyber security firm to provide constant monitoring of our systems, and training our employees to recognize attacks, there can be no assurance that these procedures and controls will be sufficient. Our property and business interruption insurance may be inadequate to compensate us for all losses that may occur because of any system or operational failure or disruption which could adversely affect our business, results of operations, and financial condition. Moreover, expenditures incurred in implementing cyber security and other procedures and controls could adversely affect our results of operations and financial condition.

 

15

 

 

Our ability to utilize our tax benefits could be substantially limited if we fail to generate sufficient income or if we experience an “ownership change”. 

 

As of December 31, 2023, we had approximately $74.7 million of gross net operating losses (“NOLs”) for federal tax purposes and approximately $17.3 million of post-apportionment NOLs for state tax purposes. As a result of the Tax Cuts and Jobs Act of 2017 and the Coronavirus Aid, Relief, and Economic Security Act of 2020, NOLs arising before January 1, 2018, and NOLs arising after January 1, 2018, are subject to different rules. Our pre-2018 NOLs totaled approximately $60.3 million; these NOLs will expire in varying amounts from 2034 through 2039, if not utilized, and can offset 100% of future taxable income for regular tax purposes. Our NOLs arising in 2018, 2019 and 2020 can generally be carried back five years, carried forward indefinitely and can offset 100% of taxable income for tax years before January 1, 2021 and up to 80% of taxable income for tax years after December 31, 2020. Any NOLs arising on or after January 1, 2021, cannot be carried back, can generally be carried forward indefinitely and can offset up to 80% of future taxable income.

 

Our ability to fully recognize the benefits from our NOLs is dependent upon our ability to generate sufficient income prior to their expiration. In addition, our NOL carryforwards may be limited if we experience an ownership change as defined by Section 382 of the Internal Revenue Code (“Section 382”). In general, an ownership change under Section 382 occurs if 5% shareholders increase their collective ownership of the aggregate amount of our outstanding shares by more than 50 percentage points over a relevant lookback period. The Company completed a Section 382 analysis for the year ended December 31, 2022, and believes that no ownership change occurred during the relevant lookback period through December 31, 2023 that would limit our ability to use our NOLs.

 

Product liability claims in excess of insurance could adversely affect our financial results and financial condition.

 

We face potential liability for property damage, personal injury, or death as a result of the failure of products designed or manufactured by us. Although we currently maintain product liability insurance (including aircraft product liability insurance), any material product liability not covered by insurance could have a material adverse effect on our financial condition, results of operations, and cash flows.

 

Increased scrutiny from investors, lenders, regulators and other market participants regarding our environmental, social, governance, sustainability or climate responsibilities could expose us to additional costs and adversely impact our liquidity, results of operations, reputation, employee retention, and stock price.

 

There is an increasing focus from certain investors, customers, and other key stakeholders concerning corporate responsibility, specifically related to environmental, social, and governance (“ESG”) factors. Some investors may use ESG criteria to guide their investment strategies and, in some cases, may choose not to invest in us if they believe our policies relating to corporate responsibilities are inadequate.

 

The ESG factors by which companies’ corporate responsibility practices are assessed may change. This could result in greater expectations of us and cause us to undertake costly initiatives to satisfy such new criteria. If we are unable to satisfy the new corporate responsibility criteria, investors may view our policies related to corporate responsibility as inadequate. We risk damage to our reputation in the event our corporate responsibility procedures or goals do not meet the standards or goals set by various constituencies. In addition, if our competitors’ corporate responsibility performance is perceived to be greater than ours, potential or current investors may elect to invest in our competitors instead. Further, in the event we communicate certain initiatives or goals related to ESG, we could fail, or be perceived to have failed, in our achievement of such initiatives or goals. If we fail to satisfy the expectations of investors and other key stakeholders, or our initiatives are not executed as planned, our reputation, employee retention, and willingness of our customers and suppliers to do business with us, financial results, and stock price could be materially and adversely affected.

 

Risks Related to Our Indebtedness and Liquidity

 

We obtained amendments to and received waivers of and consents to non-compliance with certain covenants under our credit facility with BankUnited and there can be no assurance that we will not fall out of compliance with our covenants in the future.

 

The Company was not in compliance with certain financial covenants under our credit facility (the “BankUnited Facility” or the “Credit Agreement”) with BankUnited, N.A. (“BankUnited”) for the quarter ended March 31, 2022, and financial statement submission covenants for the quarters ended March 31, 2022 and June 30, 2022 and obtained amendments to and received waivers of and consents to the non-compliance, as described in more detail in Note 8 to our consolidated financial statements included in Part II Item 8 of this Annual Report on Form 10-K. There can be no assurance that we will be in compliance with our covenants in the future or that BankUnited will grant further waivers if we fall out of compliance or consents to future non-compliance. If we fall out of compliance with our banking covenants, BankUnited may declare a default under the BankUnited Facility and, among other remedies, could declare the full amount of the BankUnited Facility immediately due and payable and could foreclose against our collateral. If this were to occur, we may be unable to secure outside financing, if needed, to fund ongoing operations and for other capital needs. Any sources of financing that may be available to us could also be at higher costs and require us to satisfy more restrictive covenants, which could limit or restrict our operations, cash flows, and earnings. We cannot ensure that additional financing would be available to us or be sufficient or available on satisfactory terms.

 

16

 

 

Our capital requirements, liquidity and financial condition raise significant risks as to our ability to continue as a going concern.

 

Our working capital requirements can vary significantly, depending in part on the timing of the conclusion of mature programs and new program awards and the payment terms with our customers and suppliers. There is currently no availability for borrowings under the BankUnited Facility and the Company finances its operations from internally generated cash flow. Notes 8 and 9 to our consolidated financial statements included in Part II - Item 8 of this Annual Report on Form 10-K includes a discussion regarding the BankUnited Facility and recent amendments thereto.

 

Our consolidated financial statements have been prepared assuming we will continue to operate as a going concern, which contemplates the realization of assets and the satisfaction of liabilities in the normal course of business. If we become unable to continue as a going concern, we may have to liquidate our assets and the values we receive for our assets in liquidation or dissolution could be significantly lower than the values reflected in our consolidated financial statements. It is management’s estimation that there will likely not be any individual conditions or combination of events that will occur in the coming year which would cause the Company to be unable to continue as a going concern.

 

Our cost of borrowing under the Credit Agreement is based on the Prime Rate of interest per annum published in the Money Rates section of The Wall Street Journal (the “Prime Rate”) plus the margin charged by our lender, and increases in the Prime Rate negatively impact our profitability.

 

Interest rates under our Credit Agreement are based on the Prime Rate, and as a result, we have exposure to interest rate risk. Certain central banks, such as the U.S. Federal Reserve, effected multiple interest rate increases in 2022 and 2023. Increases in interest rates increase our cost of borrowing and/or potentially make it more difficult to refinance our existing indebtedness.

 

We have identified material weaknesses in our internal control over financial reporting over a number of years which adversely affected our ability to report our financial condition and results of operations in a timely and accurate manner. The material weaknesses led to multiple restatements of our consolidated financial statements. The material weaknesses and restatements have resulted in our failure to meet SEC reporting obligations, affected and may continue to affect investor confidence, our stock price and our ability to raise capital in the future, and have resulted and may continue to result in stockholder litigation.

We have reported material weaknesses in internal control over financial reporting and did not maintain effective disclosure controls and procedures for reporting periods from 2018 through September 2023. The material weaknesses led to our restatement of our consolidated financial statements for the nine months ended September 30, 2018 and the years ended December 31, 2018, 2019 and 2020. Although these material weaknesses have been remediated as of December 31, 2023, these material weaknesses and restatements have affected investor confidence, our stock price, and resulted in the past in our failure to meet various SEC reporting requirements and stockholder litigation.

As described in Item 9A of this Annual Report on Form 10-K, we identified a material weakness in our internal control over financial reporting of income taxes, which led to the restatement within Note 11 “Income Taxes” of the financial statements within this Annual Report on Form 10-K the Company’s December 31, 2022 deferred tax assets and deferred tax liabilities balances. The Company is in the process of remediating this material weakness.

If a future failure in internal control should occur, it may cause us to fail to meet SEC reporting obligations, negatively affect the accuracy of our financial statements and disclosures, investor and customer confidence, our ability to raise capital in the future and result in events of default under our banking agreement, any of which could have a negative effect on the price of our common stock, subject us to regulatory investigations and penalties and additional stockholder litigation, and have a material adverse impact on our business and financial condition.

17

 

 

Risks Related to Global Events

 

The ongoing war between Russia and Ukraine, and the retaliatory measures imposed by the U.S., United Kingdom, European Union and other countries and the responses of Russia to such measures have caused significant disruptions to domestic and foreign economies.

 

The invasion of Ukraine by the Russian Federation had an immediate impact on the global economy resulting in higher prices for oil and other commodities. The U.S., United Kingdom, European Union, and other countries responded to Russia’s invasion of Ukraine by imposing various economic sanctions and bans. Russia has responded with its own retaliatory measures. These measures have impacted the availability and price of certain raw materials and transportation costs. The invasion and retaliatory measures also disrupted economic markets. The global impact of these measures is continually evolving and cannot be predicted with certainty and there is no assurance that Russia’s invasion of Ukraine and responses thereto will not further disrupt the global economy and supply chain. Further, there is no assurance that even when the invasion of Ukraine ceases, that nations will not continue to impose sanctions and bans on other nations.

 

While these events have not interrupted our operations or materially impacted our ability to obtain raw materials, these or future developments resulting from the invasion of Ukraine such as a cyberattack on the U.S., us or our suppliers, could make it difficult for or increase the cost of certain raw materials and transportation costs, or make it difficult to access debt and equity capital on attractive terms, if at all, and impact our ability to fund business activities and repay debt on a timely basis.

 

Russia’s invasion of Ukraine may alter countries’ willingness to rely on others as the source of certain products and material.

 

Historically, prime contractors and OEMs in the U.S. A&D industry have relied upon suppliers outside the U.S. for products and raw materials. Russia’s invasion of Ukraine and the economic disruption resulting from retaliatory measures may cause many of these companies to rethink these strategies and seek sources of supply within the U.S. To the extent they do so, it could disrupt domestic markets for raw materials and supplies, and the market for the skilled laborers we need to manufacture our products.

 

We cannot forecast with any certainty whether the disruptions caused by the Russian invasion of Ukraine, restrictions imposed by various governments in response thereto and resulting changes in business practices, may materially impact our business and our consolidated financial position, results of operations, and cash flows.

 

18

 

 

The conflict between Israel and Hamas, rising tensions between China and Taiwan, the ongoing war between Russia and Ukraine, and terrorist acts and acts of war may seriously harm our business, results of operations and financial condition.

 

U.S. and global responses to actual or potential military conflicts such as Russia’s invasion of Ukraine, terrorism, perceived nuclear, biological, and chemical threats and other global political crises increase uncertainties with respect to the U.S. and other business and financial markets. Several factors associated, directly or indirectly, with actual or potential military conflicts, terrorism, perceived nuclear, biological, and chemical and cyber threats, and other global political crises and responses thereto, may adversely affect the mix of products purchased by defense departments in the U.S. or other countries to platforms not serviced by us. A shift in defense budgets to product lines we do not produce could have a material adverse effect on our business, financial condition and results of operations.

 

Item 1B.UNRESOLVED STAFF COMMENTS

 

Not applicable.

 

Item 1C.CYBERSECURITY

 

Cybersecurity risk management is an important part of our overall risk management efforts. We maintain a cybersecurity program that is comprised of policies, procedures, controls and plans whose objective is to help us prevent and effectively respond to cybersecurity threats or incidents. Through our cybersecurity risk management process, we continuously monitor cybersecurity vulnerabilities and potential attack vectors to company systems. We maintain various measures to safeguard against cybersecurity threats such as monitoring systems, security controls, policy enforcement, data encryption, employee training, tools and services from third-party providers and management oversight to assess, identify and mitigate risks from cybersecurity threats. We conduct regular testing of these controls and systems including vulnerability scanning, penetration testing and simulating the execution of parts of our disaster recovery plan. All employees are required to pass a mandatory cybersecurity training course on an annual basis and we regularly conduct phishing simulations to train our employees on how to recognize phishing attempts.

 

We have implemented cybersecurity frameworks, policies and practices which incorporate industry-standards and contractual requirements. We also contractually flow cybersecurity regulatory requirements to our subcontractors as required by the Defense Federal Acquisition Regulation Supplement and other government agency specific requirements. These contractual flow downs include the requirement that our subcontractors implement certain information security controls. Additionally, we gather information and review the SOC-2 reports of certain third-parties who integrate with our systems, such as our payroll processor, managed solutions provider and software as a service providers on an annual basis to identify and manage risk. We continuously evaluate and seek to improve and mature our cybersecurity processes. We apply lessons learned from our defense and monitoring efforts to help prevent future attacks and utilize data analytics to detect anomalies and search for cyber threats. Additionally, our Internal Audit function regularly assesses our program effectiveness through audits of systems and processes to help maintain compliance with policies.

 

Cybersecurity threats of all types, such as attacks from computer hackers, cyber criminals, nation-state actors, social engineering and other malicious internet-based activities, continue to increase. We believe that our current preventative actions and response planning provide adequate measures of protection against cybersecurity risks. While we have implemented measures to safeguard our information technology systems, the evolving nature of cybersecurity attacks and vulnerabilities means that these protections may not always be effective. In 2023, we did not identify any cybersecurity threats that have materially affected or are reasonably likely to materially affect our business strategy, results of operations, or financial condition. However, despite our efforts, we cannot eliminate all risks from cybersecurity threats, or provide assurances that we have not experienced undetected cybersecurity incidents. For additional information about these risks, see Part I, Item 1A, “Risk Factors” in this Annual Report on Form 10-K.

 

Governance

 

Our board of directors has oversight of our strategic and business risk management and oversees management’s execution of our cybersecurity risk management program. The board receives regular updates from management on our cybersecurity risks. In addition, management updates the board as necessary, regarding any material cybersecurity incidents, as well as incidents with lesser impact potential. Management is responsible for identifying, assessing, and managing cybersecurity risks on an ongoing basis, establishing processes to ensure that such potential cybersecurity risk exposures are monitored, putting in place appropriate mitigation measures, maintaining cybersecurity policies and procedures, and providing regular reports to our board of directors. In the event of an incident, we intend to follow our incident response plan, which outlines the steps to be followed from incident detection to mitigation, recovery and notification, including notifying functional areas (e.g. legal), as well as senior leadership and the board, as appropriate.

 

Our Vice President of Human Resources & Administration (“VP HR&A”) leads our cybersecurity program and is responsible for our overall information security strategy, policy, security engineering, operations and cyber threat detection and response. The VP HR&A manages a team of information technology professionals with broad experience, including in cybersecurity threat assessments and detection, mitigation technologies, incident response, insider threats and regulatory compliance.

 

19

 

 

Our cybersecurity program is regularly assessed through management self-evaluation and ongoing monitoring procedures to evaluate our program effectiveness, including assessments associated with internal controls over financial reporting as well as vulnerability management through active discovery and testing to validate patching and configuration.

 

Item 2.PROPERTIES

 

CPI Aero’s executive offices and production facility is situated in an approximately 171,000 square foot building located at 91 Heartland Blvd., Edgewood, New York 11717. We use approximately 131,000 square feet of this building for manufacturing space and 40,000 square feet for offices and laboratories for engineering and design work. CPI Aero occupies this facility under a lease that expires on April 30, 2026. 

 

Item 3.LEGAL PROCEEDINGS 

 

This information is set forth in Note 16 to our Consolidated Financial Statements, which is hereby incorporated by reference.

 

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

 

Our shares of common stock are listed on the NYSE American exchange under the symbol “CVU”. On March 28, 2024, there were 171 holders of record of our shares of common stock. We believe there are substantially more beneficial holders of our common stock.

 

Dividend Policy

 

To date, we have not paid any dividends on our common stock. Any payment of dividends in the future is within the discretion of our board of directors (subject to the limitation on dividends contained in the BankUnited Facility, as described more fully in Part II, Item 7, Management’s Discussion and Analysis of Financial Condition and Results of Operations) and will depend on our earnings, if any, our capital requirements and financial condition and other relevant factors. Our board of directors does not intend to declare any cash or other dividends in the foreseeable future, but intends instead to retain earnings, if any, for use in our business operations.

 

Recent Sales of Unregistered Securities

 

There have been no sales of unregistered equity securities for the three months ended December 31, 2023. There have been no repurchases of our outstanding common stock during the three months ended December 31, 2023. 

 

Securities Authorized for Issuance under Equity Compensation Plans

 

The following table sets forth certain information at December 31, 2023 with respect to our equity compensation plans that provide for the issuance of options, warrants or rights to purchase our securities:

 

Plan Category  Number of Securities to
be Issued upon Exercise of
Outstanding Options,
Warrants and Rights
   Weighted-Average
Exercise Price of
Outstanding Options,
Warrants and Rights
   Number of Securities
Remaining Available for
Future Issuance under
Equity Compensation
Plans (excluding
securities reflected in the
first column)
 
Equity Compensation Plans Approved by
Security Holders
   —     $—      621,419 
Equity Compensation Plans Not Approved by
Security Holders
   —      —      —   
Total   —     $—      621,419 

 

Long-term equity incentives are an important component of compensation and are designed to align the interests of our executive officers and directors who receive long-term equity awards with the Company’s long-term performance and to increase shareholder value. The Company has awarded long-term incentive compensation pursuant to two plans:

 

2016 Long-Term Incentive Plan. The 2016 Long-Term Incentive Plan, as amended, authorizes the grant of 2,200,000 shares of our common stock, which may be granted in the form of stock options, stock appreciation rights, restricted stock, deferred stock, stock reload options, and other stock-based awards, to employees, officers, directors, and consultants of the Company. As of December 31, 2023, we have granted 1,580,945 shares under this plan and 619,055 shares remained available for grant under this plan.

 

20

 

 

Performance Equity Plan 2009. The Performance Equity Plan 2009 authorizes the grant of 500,000 stock options, stock appreciation rights, restricted stock, deferred stock, stock reload options, and other stock-based awards. As of December 31, 2023, we have granted 497,636 shares under this plan and 2,364 shares remained available for grant.

 

Item 6.[RESERVED]

 

Not applicable.

 

Item 7.MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

 

The following discussion and analysis of our financial condition and results of operations should be read together with our consolidated financial statements and related notes appearing elsewhere in this Annual Report on Form 10-K. Some of the information contained in this discussion and analysis includes forward-looking statements involving risks and uncertainties and should be read together with the “Risk Factors” section of this Annual Report on Form 10-K. Such risks and uncertainties could cause actual results to differ materially from the results described in or implied by the forward-looking statements contained in the following discussion and analysis.

 

Recent Developments

 

On February 20, 2024, the Company entered into a Thirteenth Amendment to the Credit Agreement (the “Thirteenth Amendment”). Under the Thirteenth Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Company’s existing revolving line of credit to August 31, 2025; and (b) setting the aggregate maximum principal amount of all revolving line of credit loans to $19,800,000 from January 1, 2024 through March 31, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, $17,640,000 from October 1, 2024 through December 31, 2024, $16,920,000 from January 1, 2025 through March 31, 2025, $16,200,000 from April 1, 2025 through June 30, 2025 and $15,480,000 thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period.

 

Business Operations

 

We are engaged in the contract production of structural aircraft parts for fixed wing aircraft and helicopters in both the commercial and defense markets. We also have a strong and growing presence in the aerosystems sector of the market, with our production of various reconnaissance pod structures and fuel panel systems. Within the global aerostructure and aerosystem supply chain, we are either a Tier 1 supplier to aircraft OEMs or a Tier 2 subcontractor to major Tier 1 manufacturers. We also are a prime contractor to the U.S. DOD, primarily the USAF. In conjunction with our assembly operations, we provide engineering, program management, supply chain management and kitting, and MRO services. 

 

Critical Accounting Estimates

 

The preparation of financial statements in conformity with US GAAP requires management to make estimates and assumptions that affect the reported amounts of certain assets and liabilities, revenues and expenses, and disclosure of contingencies during the reporting period. Significant estimates and assumptions include revenue recognition, the valuation of deferred income taxes, and the valuation of inventory. Actual results could differ from those estimates.

 

We believe that the following discussion addresses our critical accounting policies which require management’s most difficult, subjective and complex judgments, often as a result of the need to make estimates about the effect of matters that are inherently uncertain. For more discussion of these and other significant accounting policies, refer to Part II, Item 8, Note 1 “Principal Business Activity and Summary of Significant Accounting Policies” in our notes to our consolidated financial statements included elsewhere in this Annual Report on Form 10-K.

 

Revenue Recognition

 

In accordance with ASC 606, the Company recognizes revenue when it transfers control of a promised good or service to a customer in an amount that reflects the consideration it expects to be entitled to in exchange for the good or service. The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. Under the over time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred and an estimate of costs to complete and resulting total estimated costs at completion. See Part II, Item 8, Note 1 “Principal Business Activity and Summary of Significant Accounting Policies” in the notes to the consolidated financial statements included in this Form 10-K for additional information regarding the Company’s revenue recognition policy. 

 

21

 

 

Deferred Income Taxes – Valuation Allowance

 

On a quarterly basis, we assess the likelihood that we will be able to recover our deferred tax assets against future sources of taxable income and reduce the carrying amounts of deferred tax assets by recording a valuation allowance if, based on the available evidence, it is more likely than not (defined as a likelihood of more than 50%) that all or a portion of such assets will not be realized.

 

Assessing the realizability of deferred tax assets requires the determination of whether it is more likely than not that some portion or all the deferred tax assets will not be realized. In assessing the need for a valuation allowance, the Company considers all available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, loss carryback and tax-planning strategies. Generally, more weight is given to objectively verifiable evidence, such as a cumulative loss in recent years, as a significant piece of negative evidence to overcome. As of December 31, 2023, the Company achieved three years of consecutive book and taxable income, along with projections of profitability, for which management determined that there is sufficient positive evidence to conclude that it is more likely than not that a portion of the deferred tax assets will be realized. As such, $14,170,891 of the valuation allowance was released during the fourth quarter of 2023, leaving a balance in the valuation allowance of $569,143 as of December 31, 2023.

 

Inventory

 

Inventory is stated at the lower of cost or estimated net realizable value. Cost is determined using the weighted average method. The Company capitalizes labor, material, subcontractor and overhead costs as work-in-process for contracts where control has not yet passed to the customer. The Company regularly reviews inventory quantities on hand, future purchase commitments with its suppliers, and the estimated usability for its inventory. If the Company’s review indicates a reduction in usability below carrying value, it reduces its net inventory to its net realizable value.

 

Results of Operations

 

The following discussion provides an analysis of our results of operations and should be read in conjunction with the accompanying consolidated financial statements and notes thereto.

 

Revenue

 

Revenue for the year ended December 31, 2023 was $86,466,321 compared to $83,335,764 for the year ended December 31, 2022, representing an increase of $3,130,557, or 3.8%. The increase was primarily related to increases in the Raytheon - SDTA program and the T-38 Pacer Classic program, partly offset by decreases in the Sikorsky HIRRS program.

 

Revenue generated from prime government contracts for the year ended December 31, 2023 was $11,842,145 compared to $8,663,308 for the year ended December 31, 2022, an increase of $3,178,837, or 36.7%. This increase is primarily a result of increased revenue recognized on the T-38 Pacer Classic program.

 

Revenue generated from government subcontracts for the year ended December 31, 2023 was $69,672,602 compared to $69,023,729 for the year ended December 31, 2022, an increase of $648,873, or 0.9%. The increase in revenue was primarily related to increases in the Raytheon - SDTA program and the Lockheed Martin F-16 Rudder Island program, partly offset by decreases in the Sikorsky HIRRS program and the NGC E-2D WOWP program.

 

Revenue generated from commercial contracts for the year ended December 31, 2023 was $4,951,574 compared to $5,648,727 for the year ended December 31, 2022, a decrease of $697,153, or 12.3%. The decrease in revenue resulted from decreased revenue recognized on the Gulfstream G650 program, which concluded in 2022.

 

Cost of sales

 

Cost of sales for the year ended December 31, 2023 was $69,400,693 compared to $67,031,502 for the year ended December 31, 2022, an increase of $2,369,191 or 3.5%.

 

The components of cost of sales were as follows:

 

   Years ended 
   December 31,
2023
   December 31,
2022
 
Procurement  $46,020,628   $46,094,088 
Labor   7,054,308    6,829,405 
Factory overhead   16,028,140    15,730,682 
Other cost of sales   297,617    (1,622,673)
Cost of sales  $69,400,693   $67,031,502 

 

22

 

 

Procurement for the year ended December 31, 2023 was $46,020,628 compared to $46,094,088 for the year ended December 31, 2022, a decrease of $73,460 or 0.2%. This decrease is primarily the result of a decrease in procurement for the Lockheed Martin F-16 Rudder Island program, the Raytheon - SDTA program, the NGC E-2D MYP II OWP program and the NGC E2D WOWP program, the Bell AH-1Z program, the Gulfstream G650 program and the Raytheon B-52 Radar Rack program, partly offset by increases in the Sikorsky HIRRS program and the Raytheon Next Generation Jammer – Mid-Band pod program.

 

Labor costs for the year ended December 31, 2023 were $7,054,308 compared to $6,829,405 for the year ended December 31, 2022, an increase of $224,903 or 3.3%. The increase is primarily the result of higher labor cost incurred on the Boeing A-10 Warthog program.

 

Factory overhead costs for the year ended December 31, 2023 were $16,028,140 compared to $15,730,682 for the year ended December 31, 2022, an increase of $297,458 or 1.9%. The increase is primarily the result of higher overhead rates incurred on the Raytheon Next Generation Jammer – Mid-Band pod program, the Sikorsky – Gunner Windows program and the Lockheed Martin F-16 Rudder Island program.

 

Other cost of sales relates to items that can increase or decrease cost of sales such as changes in inventory levels, changes in inventory valuation, changes to inventory reserves, changes in loss contract provisions and direct charges to cost of sales. For the year ended December 31, 2023, there were costs in the amount of $297,617 compared to a reduction of costs in the amount of $1,622,673 for the year ended December 31, 2022, an increase of $1,920,290 or 118.3%. The increase is primarily the result of a higher level of cost decrease in 2022 related to changes in inventory levels and loss contract reserve reductions.

 

Gross profit

 

Gross profit for the year ended December 31, 2023 was $17,065,628 compared to $16,304,262 for the year ended December 31, 2022, an increase of $761,366 or 4.7%. Gross profit percentage (“gross margin”) for the year ended December 31, 2023 was 19.7% compared to 19.6% for year ended December 31, 2022.

 

Favorable/(Unfavorable) Adjustments to Gross Profit

 

During the years ended December 31, 2023 and 2022, we made changes in estimates to various contracts. Such changes in estimates resulted in changes in total gross profit as follows:

 

   Years Ended 
   December 31,
2023
   December 31,
2022
 
Favorable adjustments  $2,601,615   $4,962,675 
(Unfavorable) adjustments   (4,052,117)   (3,207,099)
Net adjustments  $(1,450,502)  $1,755,576 

 

Selling, general and administrative expenses

 

Selling, general and administrative expenses (“SG&A”) for the year ended December 31, 2023 were $10,758,624 compared to $11,410,067 for the year ended December 31, 2022, a decrease of $651,443 or 5.7%. The decrease was primarily due to decreased insurance expense and legal fees.

 

Interest expense

 

Interest expense for the year ended December 31, 2023 was $2,455,214, compared to $2,271,101 for the year ended December 31, 2022, an increase of $184,113 or 8.1%. The increase is the result of higher year-over-year interest rates charged on our outstanding debt under the Credit Agreement, partially offset by a year-over-year decrease in the amount of our outstanding debt under the Credit Agreement.

 

Income before provision for income taxes

 

Income before provision for income taxes for the year ended December 31, 2023 was $3,851,790 compared to $2,623,094 for the year ended December 31, 2022, an increase of $1,228,696 or 46.8%. The increase was driven by the aforementioned increase in gross profit and decrease in SG&A, partially offset by the increase in interest expense described above.

 

Provision (benefit) for income taxes

 

The income tax (benefit) for the year ended December 31, 2023 was ($13,349,414), which was an effective tax (benefit) rate of (346.6%), as compared to the income tax (benefit) of ($6,553,131) for the year ended December 31, 2022, which was an effective tax (benefit) rate of (249.8%). The income tax (benefit) in 2023 and 2022 was primarily due to reductions of the Company’s deferred tax asset valuation allowance recorded by the Company in the fourth quarter of 2023 and the fourth quarter of 2022 of $14,170,891 and $6,473,532, respectively.

 

23

 

 

Net income

 

Net income for the year ended December 31, 2023 was $17,201,204 compared to $9,176,225 for the year ended December 31, 2022, an increase of $8,024,979 or 87.5%. The increase in net income was driven by the aforementioned increase in gross profit, decrease in SG&A and the 2023 income tax (benefit), partially offset by the aforementioned increase in interest expense.

 

Earnings per share

 

Basic earnings per share was $1.40 for the year ended December 31, 2023 calculating utilizing 12,311,219 weighted average shares outstanding as compared to $0.74 for the year ended December 31, 2022 calculated utilizing 12,389,890 weighted average shares outstanding, an increase of $0.66 per share, or 88.8%. Diluted earnings per share was $1.38 for the year ended December 31, 2023 calculated utilizing 12,471,961 weighted average shares outstanding as compared to $0.74 for the year ended December 31, 2022 calculated utilizing 12,389,890 weighted average shares outstanding, an increase of $0.64 per share, or 86.4%.

 

Business Outlook

 

The statements in the “Business Outlook” section and other forward-looking statements of this Annual Report on Form 10-K are subject to revision during the course of the year in our quarterly earnings releases and SEC filings and at other times.

 

Liquidity and Capital Resources

 

General. At December 31, 2023, we had working capital of $15,402,381 compared to working capital of $12,896,602 at December 31, 2022, an increase of $2,505,779, or 19.4%. This increase is primarily the result of an increase in contract assets and cash, partially offset by an increase in accrued expenses and accounts payable and a decrease in current portion of long-term debt.

 

Cash Flow. A large portion of our cash is used to pay for materials and processing costs associated with contracts that are in process and which do not provide for progress payments. Costs for which we are not able to bill on a progress basis are components of contract assets on our consolidated balance sheet and represent the aggregate costs and related earnings for uncompleted contracts for which the customer has not yet been billed. These costs and earnings are recovered upon shipment of products and presentation of billings in accordance with contract terms.

 

Because ASC 606 requires us to use estimates in determining revenues, costs and profits and in assigning the amounts to accounting periods, there can be a significant disparity between earnings (both for accounting and tax purposes) as reported and actual cash that we receive during any reporting period. Accordingly, it is possible that we may have a shortfall in our cash flow and may need to borrow money or take steps to defer cash outflows until the reported earnings materialize into actual cash receipts.

 

Several of our programs require us to expend up-front costs that may have to be amortized over a portion of production units. In the case of significant program delays and/or program cancellations, we could experience margin degradation, which may be material for costs that are not recoverable. Such charges and the loss of up-front costs could have a material impact on our liquidity and results of operations.

 

We continue to work to obtain better payment terms with our customers, including accelerated progress payment arrangements, as well as exploring alternative funding sources.

 

At December 31, 2023, our cash balance was $5,094,794 compared to $3,847,225 at December 31, 2022, an increase of $1,247,569, or 32.4%. The increase was driven by $3,928,341 in cash provided by operations, partly offset by our pay down of outstanding debt during 2023 of $2,679,766.

 

BankUnited Facility

 

This information is set forth in Note 8 to our Consolidated Financial Statements, appearing following Item 15 of this Annual Report on Form 10-K which is hereby incorporated by reference.

 

Leases

 

This information is set forth in Note 10 to our Consolidated Financial Statements, appearing following Item 15 of this Annual Report on Form 10-K which is hereby incorporated by reference.

 

Liquidity

 

Our working capital requirements can vary significantly, depending in part on the timing of the conclusion of mature programs and new program awards and the payment terms with our customers and suppliers. There is currently no availability for borrowings under the BankUnited Facility and the Company finances its operations from internally generated cash flow. Note 8 to our consolidated financial statements included in Part II - Item 8 includes a discussion regarding the BankUnited Facility and recent amendments thereto which provide, among other things, for increases in principal payments and the interest rate on the loans provided for therein. Management has (i) negotiated and executed a further amendment to the Credit Agreement which extended the maturity date of the Credit Agreement to August 31, 2025, (ii) obtained and regularly seeks additional progress payment and advance payment customer contract funding provisions, (iii) maintained procedures to minimize investments in inventory and contract assets, (iv) remained focused on its military customer base and (v) maintained its approximately $118.2 million backlog of funded orders, 98% of which are for military programs. Based upon the aforementioned factors, it is management’s estimation that there will likely not be any individual conditions or combination of events that will occur in the coming year which would cause the Company to be unable to meet its obligations or otherwise continue as a going concern. However, there can be no assurance that such plans will accomplish their intended goals. 

 

24

 

 

Contractual Obligations

 

The table below summarizes information about our contractual obligations as of December 31, 2023 and the effects these obligations are expected to have on our liquidity and cash flow in the future years.

 

   Payments Due By Period 
Contractual Obligations  Total   Less than 1
year
   1-3 years   4-5 years   After 5
years
 
Line of credit  $20,040,000   $2,400,000   $17,640,000   $—     $—   
Finance Leases   70,981    44,498    26,483    —      —   
Operating Leases   5,482,708    2,228,784    3,244,696    9,228    —   
Insurance Financing Agreement   280,910    280,910    —      —      —   
Total Contractual Cash Obligations  $25,874,599   $4,954,192   $20,911,179   $9,228   $—   

 

Inflation

 

Inflation historically has not had a material effect on our operations, although the current inflationary environment in the U.S., and its impact on interest rates, the supply chain, the labor market and general economic conditions, are factors that the Company actively monitors in an attempt to mitigate and manage potential negative impacts on and risks faced by the Company. The majority of the Company’s long term contracts with its customers reflect fixed pricing and its long term contracts with its suppliers reflect fixed pricing. When bidding for work, the Company takes inflation risk and supply side pricing risk into account in its proposals.

 

Item 7A.QUANTITATIVE AND QUALITATIVE DISCLOSURE ABOUT MARKET RISK

 

Interest Rate Risk

 

We are exposed to interest rate risk on variable-rate credit facilities for which there was $20,040,000 outstanding at December 31, 2023. Additionally, if we were to refinance our long-term debt, it may be refinanced at higher interest rates.

 

Item 8.FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA

 

This information appears following Item 15 of this Annual Report on Form 10-K and is incorporated herein by reference.

 

Item 9.CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE

 

None.

 

Item 9A.CONTROLS AND PROCEDURES

 

Evaluation of Disclosure Controls and Procedures  

 

Our management, with the participation of our Chief Executive Officer and Chief Financial Officer, has evaluated the effectiveness of our disclosure controls and procedures, as of the end of the period covered by this Annual Report on Form 10-K. Based on such evaluation, our Chief Executive Officer and Chief Financial Officer have concluded that as of such date, our disclosure controls and procedures were not effective due to the material weakness described below. 

 

Management’s Annual Report on Internal Control over Financial Reporting  

 

Management is responsible for establishing and maintaining adequate internal control over financial reporting. Internal control over financial reporting, as defined in Exchange Act Rules 13a-15(f) and 15d-15(f), is a process designed by, or under the supervision of, our principal executive and principal financial officers and effected by our board of directors, management and other personnel, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with U.S. GAAP and includes those policies and procedures that:

 

 ●pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of our assets;

 ●provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with U.S. GAAP, and that our receipts and expenditures are being made only in accordance with authorizations of our management and directors; and

 ●provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of our assets that could have a material effect on our consolidated financial statements.

 

25

 

 

Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. 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.

 

Management conducted an evaluation of the effectiveness of internal control over financial reporting based on criteria established in Internal Control- Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (“COSO”). Based on this evaluation, management concluded that the Company’s internal control over financial reporting was not effective at the reasonable assurance level as of December 31, 2023 because of the material weakness described below. 

 

A material weakness is a deficiency, or a combination of deficiencies, in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of the Company’s annual or interim consolidated financial statements will not be prevented or detected on a timely basis.

 

In connection with management’s evaluation of the Company’s internal control over financial reporting described above, management identified a material weakness in its internal controls relating to the inadequate review, assessment of and reporting of the Company’s temporary differences between book and taxable income. This material weakness led to the need to restate within Note 11 “Income Taxes” of this Annual Report on Form 10-K the Company’s December 31, 2022 deferred tax assets and deferred tax liabilities balances, which had no impact to the Company’s previously reported net deferred tax asset on its December 31, 2022 Balance Sheet and no impact to the Company’s previously reported Net Income, Earnings Per Share or Cash Flow for the twelve months ended December 31, 2022. The restatement of the aforementioned balances, as well as additional details regarding the restatement adjustments, appears in Note 11 “Income Taxes” of this Annual Report on Form 10-K. The Company is in the process of remediating the aforementioned material weakness. The Company’s remediation plans currently include conducting a comprehensive review of the scope and work of its outside tax advisor, providing additional education and training in tax accounting to the its finance personnel and requiring additional review of, approval over and documentation of the work product of its tax advisor and tax accounting preparors.

 

Conclusion  

 

As described above, under the supervision and with the participation of our management, including our Chief Executive Officer and Chief Financial Officer, we conducted an evaluation of our disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) as of December 31, 2023.

 

Notwithstanding the conclusion by our management that our controls and procedures as of December 31, 2023 were not effective, as described above with respect to income tax accounting, management believes that the consolidated financial statements and related financial information included in this Annual Report on Form 10-K fairly present in all material respects our financial position, results of operations and cash flows as of and for the dates presented, and for the periods ended on such dates, in conformity with U.S. GAAP. 

 

CPI is a non-accelerated filer for 2023. As such, CPI is not subject to the requirement to have an auditor attestation report on internal control over financial reporting in the 10-K filed in 2024 for 2023.

 

Changes in Internal Control Over Financial Reporting  

 

Other than as disclosed above, there were no changes in our internal control over financial reporting during the quarter ended December 31, 2023 that materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

 

During the quarter ended December 31, 2023, we implemented additional internal controls related to the reconciliation of accounts receivable that include more timely account reconciliation and transactional reviews, and strengthening oversight controls over the accounts receivable and billing function.

  

Item 9B.OTHER INFORMATION

 

None.

 

Item 9C.DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS

 

None.

 

PART III

 

Item 10.DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE

 

Incorporated herein by reference from the Company’s definitive proxy statement, which will be filed no later than 120 days after December 31, 2023.

 

Item 11.EXECUTIVE COMPENSATION

 

Incorporated herein by reference from the Company’s definitive proxy statement, which will be filed no later than 120 days after December 31, 2023.

 

Item 12.SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS

 

Incorporated herein by reference from the Company’s definitive proxy statement, which will be filed no later than 120 days after December 31, 2023.

 

Item 13.CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE

 

Incorporated herein by reference from the Company’s definitive proxy statement, which will be filed no later than 120 days after December 31, 2023.

 

Item 14.PRINCIPAL ACCOUNTANT FEES AND SERVICES

 

Incorporated herein by reference from the Company’s definitive proxy statement, which will be filed no later than 120 days after December 31, 2023.

 

PART IV

 

Item 15.EXHIBITS AND FINANCIAL STATEMENT SCHEDULES

 

  (a) The following documents are filed as part of this report:

 

(1) Financial Statements:

 

Report of Independent Registered Public Accounting Firm  

Consolidated Balance Sheets as of December 31, 2023 and 2022  

Consolidated Statements of Operations for the Years Ended December 31, 2023 and 2022  

Consolidated Statements of Shareholders’ Equity for the Years Ended December 31, 2023 and 2022  

Consolidated Statements of Cash Flows for the Years Ended December 31, 2023 and 2022  

Notes to Financial Statements

 

26

 

 

(2) Financial Statement Schedules: 

 

None. 

 

(3) The following Exhibits are filed as part of this report:

 

 Exhibit No.   Description
3.1   Certificate of Incorporation of the Company, as amended, (incorporated by reference to Exhibit 3.1 to the Company’s Annual Report on Form 10-K, filed on August 25, 2020).
3.1.1   Certificate of Amendment of the Certificate of Incorporation of Composite of Precision Industries, Inc., dated May 9, 1989 (incorporated by reference to Exhibit 3.1.1 to the Company’s Annual Report on Form 10-K, filed on August 25, 2020).
3.1.2   Certificate of Amendment of the Certificate of Incorporation of Consortium Products International, Inc., dated June 30, 1992 (incorporated by reference to Exhibit 3.1.2 to the Company’s Annual Report on Form 10-K, filed on August 25, 2020).
3.1.3   Certificate of Amendment of the Certificate of Incorporation of CPI Aerostructures, Inc., dated August 7, 1992 (incorporated by reference to Exhibit 3.1.3 to the Company’s Annual Report on Form 10-K, filed on August 25, 2020).
3.1.4   Certificate of Amendment of the Certificate of Incorporation of CPI Aerostructures, Inc., dated June 3, 1997 (incorporated by reference to Exhibit 3.1.4 to the Company’s Annual Report on Form 10-K, filed on August 25, 2020).
3.1.5   Certificate of Amendment of the Certificate of Incorporation of CPI Aerostructures, Inc., dated June 16, 1998 (incorporated by reference to Exhibit 3.1.5 to the Company’s Annual Report on Form 10-K, filed on August 25, 2020).
3.2   Amended and Restated By-laws of the Company (incorporated by reference to Exhibit 3.2 to the Company’s Annual Report on Form 10-K/A filed on November 24, 2021).
3.2.1   Amended Article V, Section 6 of Amended and Restated By-laws of the Company (incorporated by reference to Exhibit 3.1 to the Company’s Current Report on Form 8-K filed on November 22, 2021).
4.1*   Securities of the Registrant.
10.1**   Performance Equity Plan 2009 (incorporated by reference to Appendix A to the Company’s Proxy Statement on Schedule 14A filed on April 30, 2009).
10.2**   2016 Long-Term Incentive Plan, as amended (incorporated by reference from Exhibit 99.1 to the Company’s Registration Statement on Form S-8 filed on June 28, 2023).
10.3.1   Agreement of Lease, dated June 30, 2011, between Heartland Boys II L.P. and CPI Aerostructures, Inc. (incorporated by reference to Exhibit 10.1 to the Company’s Quarterly Report on Form 10-Q filed on August 15, 2011).
10.3.2   Lease Amendment, dated November 11, 2020, between Heartland Boys II L.P. and CPI Aerostructures, Inc. (incorporated by reference to Exhibit 10.3.2 to the Company’s Annual Report on Form 10-K/A filed on November 24, 2021).
10.3.3   Second Lease Amendment, dated November 10, 2021, between Heartland Boys II L.P. and CPI Aerostructures, Inc. (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on November 12, 2021).
10.4.1   Amended and Restated Credit Agreement, dated as of March 24, 2016, among CPI Aerostructures, Inc., the several lenders from time to time party thereto, and BankUnited, N.A. (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on March 28, 2016).
10.4.2   First Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on May 10, 2016).
10.4.3   Second Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.4.3 to the Company’s Annual Report on Form 10-K filed on August 25, 2020).
10.4.4   Third Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on August 16, 2018).
10.4.5   Fourth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.2 to the Company’s Current Report on Form 8-K filed on December 27, 2018).
10.4.6   Fifth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on June 26, 2019).
10.4.7   Waiver and Sixth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on August 24, 2020).
10.4.8   Waiver and Seventh Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on May 17, 2021).
10.4.9   Waiver and Eighth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on October 28, 2021).
10.4.10   Consent, Waiver and Ninth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on April 12, 2022).
10.4.11   Consent, Waiver and Tenth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on August 19, 2022).

 

27

 

 

10.4.12   Eleventh Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on November 11, 2022).
10.4.13   Twelfth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on March 23, 2023).
10.4.14   Thirteenth Amendment to the Amended and Restated Credit Agreement (incorporated by reference from Exhibit 10.1 to the Company’s Current Report on Form 8-K filed on February 21, 2024.
10.5   Amended and Restated Continuing General Security Agreement among CPI Aerostructures, Inc. and BankUnited N.A. (incorporated by reference to Exhibit 10.2 to the Company’s Current Report on Form 8-K filed on March 28, 2016).
21*   Subsidiaries of the Registrant.
23.1*   Consent of RSM US LLP.
31.1*   Certification of Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.
31.2*   Certification of Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.
32.1***   Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 905 of the Sarbanes-Oxley Act of 2002.
97*   The Company’s Clawback Policy Relating to the Recovery of excessive Incentive-Based Compensation from Executive Officers in the Event of an Accounting Restatement.
     
101.INS*   XBRL Instanse Document.
101.SCH*   XBRL Taxonomy Extension Scheme Document.
101.CAL*   XBRL Taxonomy Extension Calculation Linkbase Document.
101.DEF*   XBRL Taxonomy Extension Definition Linkbase Document.
101.LAB*   XBRL Taxonomy Extension Label Linkbase Document.
101.PRE*   XBRL Taxonomy Extension Presentation Linkbase Document.
104*   Cover page formatted as Inline XBRL and contained in Exhibit 101.

 

* Filed herewith.
** Management contract compensatory plan or arrangement.
*** Furnished herewith.

 

Item 16.FORM 10-K SUMMARY

 

None

 

28

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES 

 

INDEX TO FINANCIAL STATEMENTS

 

Report of Independent Registered Public Accounting Firm (PCAOB ID: 49) F-2
   
Consolidated Financial Statements:  
   
Consolidated Balance Sheets as of December 31, 2023 and 2022 F-5
   
Consolidated Statements of Operations for the Years Ended December 31, 2023 and 2022 F-6
   
Consolidated Statements of Shareholders’ Equity for the Years Ended December 31, 2023 and 2022 F-7
   
Consolidated Statements of Cash Flows for the Years Ended December 31, 2023 and 2022 F-8
   
Notes to Consolidated Financial Statements F-9 - F-29

 

F-1

 

 

Report of Independent Registered Public Accounting Firm 

 

Stockholders and the Board of Directors of CPI Aerostructures, Inc.

 

 

Opinion on the Financial Statements

We have audited the accompanying consolidated balance sheets of CPI Aerostructures, Inc. and Subsidiaries (the Company) as of December 31, 2023 and 2022, the related consolidated statements of operations, shareholders’ equity (deficit) and cash flows for the years then ended, and the related notes to the consolidated financial statements (collectively, the financial statements). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2023 and 2022, and the results of its operations and its cash flows for the years then ended, in conformity with accounting principles generally accepted in the United States of America.

 

Restatement

As discussed in Note 11 to the financial statements, the 2022 financial statements have been restated to correct a misstatement.

 

Basis for Opinion

These financial statements are the responsibility of the Company’s management. Our responsibility is to express an opinion on the Company’s 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 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 financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audit, we are required to obtain an understanding of internal control over financial reporting but not for the purpose of expressing an opinion on the effectiveness of the Company’s internal control over financial reporting. Accordingly, we express no such opinion.

 

Our audits included performing procedures to assess the risks of material misstatement of the 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 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 financial statements. We believe that our audits provide a reasonable basis for our opinion.

 

F-2

 

 

Critical Audit Matters

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

 

Deferred Tax Asset Valuation Allowance

As described in Note 1 and Note 11 of the financial statements, the Company’s net deferred tax asset of approximately $19.9 million is net of a valuation allowance of approximately $0.6 million as of December 31, 2023. The Company recognizes deferred tax assets and liabilities for the expected future income tax consequences of events that have been recognized in the Company’s financial statements. Valuation allowances are provided for deferred tax assets where it is considered more likely than not that the Company will not realize the benefit of such assets. In evaluating the realizability of deferred tax assets in future periods, the available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, loss carrybacks and tax-planning strategies are considered.

 

We identified management’s determination of the value of deferred tax assets as a critical audit matter as there is significant judgment required by management to conclude that it is more likely than not that these deferred tax assets will be realized in future periods. In addition, the auditing of these elements involved complex and subjective auditor judgment, including the need to involve personnel with specialized skill and knowledge.

 

Our audit procedures related to the realization of the Company’s net deferred tax assets included the following, among others:

 

  • Evaluated the reasonableness of management’s estimate in regard to the ability to generate future taxable income and utilize the deferred tax assets by evaluating the forecast of future taxable income, including testing of management’s assumptions used in their projections.
·Utilized personnel with specialized knowledge and skill in accounting for income taxes to assist in the evaluation of management’s assessment of positive and negative evidence and their conclusion that it is more likely than not that the Company will realize a benefit from its net deferred tax assets.

 

Revenue Recognition

As described in Note 2 of the financial statements, revenue for the year ended December 31, 2023 was $86.5 million, including $82.7 million of revenue recognized using an over time revenue recognition model. As described in Note 1 of the financial statements, the majority of the Company's revenues are from long-term contracts with performance obligations satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. The Company uses the cost-to-cost method to measure progress for its performance obligations because it best depicts the transfer of control to the customer which occurs as the Company incurs costs on its contracts.

 

Given the complexity and significant estimates and assumptions management makes regarding revenue and costs associated with long-term contracts with performance obligations satisfied over time, we identified revenue recognition over these contracts as a critical audit matter. Auditing these estimates required a high degree of auditor judgement and increased audit effort.

 

F-3

 

 

Our audit procedures related to the Company's revenue, costs and profit for these contracts included the following, among others:

 

·Obtained an understanding of management’s process related to the accounting for contract revenue including cost to complete estimates for long-term contracts with performance obligations satisfied over time.
·Performed substantive test of details on a sample of contracts with customers to ensure modifications were agreed to by the customer.
·Performed journal entry testing related to revenue.
·Tested the accuracy and completeness of the costs incurred to date on a sample of contracts.
·Performed procedures, including a retrospective and prospective review, over estimated costs to complete on a sample of contracts.
·On a sample of contracts, we evaluated whether the revenue recognition over time on contracts was appropriate based on the terms and conditions.
·Tested the mathematical accuracy of management’s calculation of revenue recognized on a sample basis.
·Performed procedures to evaluate the reasonableness of the significant assumptions used to estimate contract costs to complete on a sample of contracts.

 

 

/s/ RSM US LLP

 

We have served as the Company's auditor since 2021.

 

New York, New York

April 5, 2024

 

F-4

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

CONSOLIDATED BALANCE SHEETS

 

   December 31,
2023
   December 31,
2022
 
ASSETS          
Current Assets:          
Cash  $5,094,794   $3,847,225 
Accounts receivable, net   4,352,196    4,857,772 
Insurance recovery receivable       3,600,000 
Contract assets, net   35,312,068    27,384,540 
Inventory   1,436,647    2,493,069 
Refundable income taxes   40,000    40,000 
Prepaid expenses and other current assets   678,026    975,830 
Total Current Assets   46,913,731    43,198,436 
           
Operating lease right-of-use assets   4,740,193    6,526,627 
Property and equipment, net   794,056    1,124,556 
Deferred tax asset   19,938,124    6,574,463 
Goodwill   1,784,254    1,784,254 
Other assets   189,774    238,744 
Total Assets  $74,360,132   $59,447,080 
           
LIABILITIES AND SHAREHOLDERS’ EQUITY          
Current Liabilities:          
Accounts payable  $10,487,012   $8,029,996 
Accrued expenses   10,275,695    7,344,590 
Litigation settlement obligation       3,600,000 
Contract liabilities   5,937,629    6,001,726 
Loss reserve   337,351    576,549 
Current portion of line of credit   2,400,000    1,200,000 
Current portion of long-term debt   44,498    1,719,766 
Operating lease liabilities   1,999,058    1,817,811 
Income taxes payable   30,107    11,396 
Total Current Liabilities   31,511,350    30,301,834 
           
Line of credit, net of current portion   17,640,000    19,800,000 
Long-term operating lease liabilities   3,100,571    5,077,235 
Long-term debt, net of current portion   26,483    70,981 
Total Liabilities   52,278,404    55,250,050 
           
Commitments and Contingencies (see note 16)
          
Shareholders’ Equity:          
Common stock - $.001 par value; authorized 50,000,000 shares, 12,771,434 and 12,506,795 shares, respectively, issued and outstanding   12,771    12,507 
Additional paid-in capital   73,872,679    73,189,449 
Accumulated deficit   (51,803,722)   (69,004,926)
Total Shareholders’ Equity   22,081,728    4,197,030 
Total Liabilities and Shareholders’ Equity  $74,360,132   $59,447,080 

  

see notes to CONSOLIDATED financial statements 

 

F-5

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

CONSOLIDATED STATEMENTS OF OPERATIONS

 

Years ended December 31, 2023 and 2022

 

   2023   2022 
Revenue  $86,466,321   $83,335,764 
           
Cost of sales   69,400,693    67,031,502 
           
Gross profit   17,065,628    16,304,262 
           
Selling, general and administrative expenses   10,758,624    11,410,067 
Income from operations   6,307,004    4,894,195 
           
Interest expense   (2,455,214)   (2,271,101)
Income before benefit for income taxes   3,851,790    2,623,094 
           
Benefit from income taxes   (13,349,414)   (6,553,131)
Net income  $17,201,204   $9,176,225 
           
Income per common share-basic  $1.40   $0.74 
Income per common share-diluted  $1.38   $0.74 
           
Shares used in computing income per common share:          
Basic   12,311,219    12,389,890 
Diluted   12,471,961    12,389,890 

 

see notes to CONSOLIDATED financial statements 

 

F-6

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY

 

Years ended December 31, 2023 and 2022

 

   Common
Stock Shares
  

Common

Stock
Amount

   Additional Paid-in
Capital
   Accumulated
Deficit
   Total
Shareholders’
Equity (Deficit)
 
Balance at January 1, 2022   12,335,683   $12,336   $72,833,742   $(78,181,151)  $(5,335,073)
                          
Net income               9,176,225    9,176,225 
Issuance of common stock upon settlement of restricted stock, net   171,112    171            171 
Stock-based compensation expense           355,707        355,707 
Balance at December 31, 2022   12,506,795    12,507    73,189,449    (69,004,926)   4,197,030 
                          
Net income               17,201,204    17,201,204 
Issuance of common stock upon settlement of restricted stock, net   264,639    264            264 
Stock-based compensation expense           770,362        770,362 
Shares withheld for tax withholdings           (87,132)       (87,132)
Balance at December 31, 2023   12,771,434   $12,771   $73,872,679   $(51,803,722)  $22,081,728 

 

see notes to CONSOLIDATED financial statements

 

F-7

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

CONSOLIDATED STATEMENTS OF CASH FLOWS

 

Years ended December 31, 2023 and 2022

 

   2023   2022 
Cash flows from operating activities:          
Net income  $17,201,204   $9,176,225 
Adjustments to reconcile net income to net cash provided by operating activities:          
Depreciation and amortization   470,950    688,096 
Amortization of debt issuance costs   103,304    133,997 
Stock-based compensation expense   770,626    355,878 
Deferred income taxes   (13,363,661)   (6,574,463)
Bad debt expense       72,099 
Changes in operating assets and liabilities:          
Decrease in accounts receivable   505,576    37,843 
Decrease (increase) in insurance recovery receivable   3,600,000    (750,000)
Increase in contract assets   (7,927,528)   (2,925,201)
Decrease in inventory   1,056,422    1,535,856 
Decrease (increase) in prepaid expenses and other current assets   297,804    (350,755)
Decrease in operating right-of-use assets   1,786,434    1,270,141 
Increase (decrease) in accounts payable and accrued expenses   5,107,211    (1,157,019)
(Decrease) increase in litigation settlement obligation   (3,600,000)   596,741 
(Decrease) increase in contract liabilities   (64,097)   878,960 
Decrease in lease liabilities   (1,795,417)   (1,131,135)
Decrease in loss reserve   (239,198)   (919,165)
Increase in income taxes payable   18,711    6,231 
Net cash provided by operating activities   3,928,341    944,329 
Cash flows from investing activities:          
Purchase of property and equipment   (140,450)   (40,789)
Net cash used in investing activities   (140,450)   (40,789)
Cash flows from financing activities:          
Principal payments on line of credit   (960,000)   (250,000)
Principal payments on long-term debt   (1,719,766)   (3,115,181)
Proceeds from insurance financing obligation   330,482     
Repayments of insurance financing obligation   (49,572)    
Taxes paid related to net share settlement of equity awards   (87,132)    
Debt issuance costs   (54,334)    
Net cash used in financing activities   (2,540,322)   (3,365,181)
Net increase (decrease) in cash   1,247,569    (2,461,641)
Cash at beginning of year   3,847,225    6,308,866 
Cash at end of year  $5,094,794   $3,847,225 
Supplemental disclosure of cash flow information:          
Cash paid during the year for interest  $2,454,065   $1,792,858 
Cash paid for income taxes  $4,364   $25,291 

 

See notes to CONSOLIDATED financial statements

 

F-8

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

1.PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES

 

The Company consists of CPI Aerostructures, Inc. (“CPI”), Welding Metallurgy, Inc. (“WMI”) and Compac Development Corporation, a wholly owned subsidiary of WMI (collectively the “Company”).

 

CPI is a U.S. supplier of aircraft parts for fixed wing aircraft and helicopters in both the commercial and defense markets. CPI manufactures complex aerostructure assemblies, as well as aerosystems. Additionally, CPI supplies parts for maintenance, repair and overhaul (“MRO”) and kitting contracts.

 

An operating segment, in part, is a component of an enterprise whose operating results are regularly reviewed by the chief operating decision maker (the “CODM”) to make decisions about resources to be allocated to the segment and assess its performance. Operating segments may be aggregated only to a limited extent. The Company’s CODM, the Chief Executive Officer, reviews financial information presented on a consolidated basis for purposes of making operating decisions and assessing financial performance. The Company has determined that it has a single operating and reportable segment.

 

Basis of Presentation and Principles of Consolidation

 

The accompanying consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and applicable rules and regulations of the United States Securities and Exchange Commission (“SEC”). The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated in consolidation.

 

Use of Estimates

 

The preparation of financial statements in conformity with U.S. GAAP requires the use of estimates by management. Actual results could differ from these estimates.

 

Revenue Recognition

 

The Company follows Accounting Standards Codification Topic 606, “Revenue from Contracts with Customers” (“ASC 606”). In accordance with ASC 606, the Company recognizes revenue when it transfers control of a promised good or service to a customer in an amount that reflects the consideration it expects to be entitled to in exchange for the good or service. The majority of the Company’s performance obligations are satisfied over-time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. Under the over-time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred and an estimate of costs to complete and resulting total estimated costs at completion.

 

The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. This is known as the over time revenue recognition model. Under the over time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred as a percentage of total estimated costs at completion of the contract.

 

The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer; in most cases this will be based on shipping terms.

 

The majority of the Company’s revenues are from long-term contracts with the U.S. government and commercial contractors. The Company accounts for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. For the Company, the contract under ASC 606 is typically established upon execution of a purchase order either in accordance with a long-term customer contract or on a standalone basis.

 

To determine the proper revenue recognition for our contracts, we must evaluate whether two or more contracts should be combined and accounted for as a single contract, and whether the combined or single contract should be accounted for as one performance obligation or more than one performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or to separate a contract into multiple performance obligations could change the amount of revenue and profit recorded in a period. A performance obligation is a promise within a contract to transfer a distinct good or service to the customer in exchange for payment and is the unit of account for recognizing revenue. The Company’s performance obligations in its contracts with customers are typically the sale of each individual product contemplated in the contract or a single performance obligation representing a series of products when the contract contains multiple products that are substantially the same. The Company has elected to account for shipping performed after control over a product has transferred to a customer as fulfillment activities. When revenue is recognized in advance of incurring shipping costs, the costs related to the shipping are accrued. Shipping costs are included in costs of sales. The Company provides warranties on many of its products; however, since customers cannot purchase such warranties separately and they do not provide services beyond standard assurances, warranties are not separate performance obligations.

 

F-9

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when or as the performance obligation is satisfied. For contracts with more than one performance obligation, the Company allocates the transaction price to each performance obligation based on its estimated standalone selling price. When standalone selling prices are not available, the transaction price is allocated using an expected cost plus margin approach as pricing for such contracts is typically negotiated on the basis of cost.

 

The contracts with the U.S. government typically are subject to the Federal Acquisition Regulation (“FAR”), which provides guidance on the types of costs that are allowable in establishing prices for goods and services provided under U.S. government contracts. The pricing for commercial contractors are based on the specific negotiations with each customer and any taxes imposed by governmental authorities are excluded from revenue. The transaction price is primarily comprised of fixed consideration as the customer typically pays a fixed fee for each product sold. The Company does not adjust the amount of revenue to be recognized under a customer contract for the effects of the time value of money when the timing difference between receipt of payment and transferring the good or service is less than one year.

 

The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. The Company uses the cost-to-cost input method to measure progress for its performance obligations because it best depicts the transfer of control to the customer which occurs as the Company incurs costs on its contracts.

 

The Company generally utilizes the portfolio approach to estimate the amount of revenue to recognize for its contracts and groups contracts together that have similar characteristics. Contract gross profit margins are calculated using the estimated costs for either the individual contract or the portfolio as applicable. Significant judgment is used to determine which contracts are grouped together to form a portfolio. The portfolio approach is utilized only when the result of the accounting is not expected to be materially different than if applied to individual contracts.

 

The Company’s contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new or changes the existing enforceable rights and obligations. The effect of a contract modification on the transaction price, and the measure of progress for the performance obligation to which it relates, are recognized prospectively when the remaining goods or services are distinct and on a cumulative catch-up basis when the remaining goods or services are not distinct.

 

The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer.

 

Certain contracts contain forms of variable consideration, such as price discounts and performance penalties. The Company generally estimates variable consideration using the most likely amount based on an assessment of all available information (i.e., historical experience, current and forecasted performance) and only to the extent it is probable that a significant reversal of revenue recognized will not occur when the uncertainty is resolved.

 

In applying the cost-to-cost input method, the Company compares the actual costs incurred relative to the total estimated costs expected at completion to determine its progress towards satisfying its performance obligation and to calculate the corresponding amount of revenue to recognize. For any costs incurred that do not depict the Company’s performance in transferring control of goods or services to the customer, the Company excludes such costs from its input method measure of progress as the amounts are not reflected in the price of the contract. Costs that are inputs to the satisfaction of a performance obligation include labor, materials and subcontractors’ costs, other direct costs and an allocation of indirect costs.

 

Changes to the original estimates may be required during the life of the contract. Estimates are reviewed quarterly and the effect of any change in the total estimated costs expected at completion for a contract is reflected in revenue in the period the change becomes known. ASC 606 involves considerable use of estimates and judgment in determining revenues, costs and profits and in assigning the amounts to accounting periods. For instance, management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation, execution by our subcontractors, the availability and timing of funding from the customer, and overhead cost rates, among other variables. The Company continually evaluates all of the factors related to the assumptions, risks and uncertainties inherent with the application of the cost-to-cost input method; however, it cannot be assured that estimates will be accurate. If estimates are not accurate, or a contract is terminated which will affect estimates at completion, the Company is required to adjust revenue in the period the change is determined.

 

F-10

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

When changes are required for the estimated total revenue on a contract, these changes are recognized on a cumulative catch-up basis in the current period. A significant change in one or more estimates could affect the profitability of one or more of our performance obligations. If estimates of total costs to be incurred exceed estimates of total consideration the Company expects to receive, a provision for the remaining loss on the contract is recorded in the period in which the loss becomes evident.

 

Contract acquisition costs are those incremental costs that the Company incurs to obtain a contract with a customer that it would not have incurred if the contract had not been obtained. The Company does not typically incur contract acquisition costs or contract fulfillment costs that are subject to capitalization in accordance with the guidance in Accounting Standards Codification Subtopic 340-40, “Other Assets and Deferred Costs—Contracts with Customers.”

 

Government Contracts

 

The Company’s government contracts are subject to the procurement rules and regulations of the U.S. government. Many of the contract terms are dictated by these rules and regulations. Specifically, cost-based pricing is determined under the FAR, which provides guidance on the types of costs that are allowable in establishing prices for goods and services under U.S. government contracts. For example, costs such as those related to charitable contributions, advertising, interest expense, and public relations are unallowable, and therefore not recoverable through sales. During and after the fulfillment of a government contract, the Company may be audited in respect to the direct and allocated indirect costs attributable thereto. These audits may result in adjustments to the Company’s contract cost, and/or revenue.

 

When contractual terms allow, the Company invoices its customers on a progress basis.

 

F-11

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

Cash

 

The Company maintains its cash in multiple financial institutions. The balances are insured by the Federal Deposit Insurance Corporation up to the limit of $250,000. From time to time, the Company’s balances may exceed these limits. As of December 31, 2023 and 2022, the Company had $4,943,628 and $3,763,608, respectively, of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly credit worthy.

 

Allowance for Credit Losses

 

The Company maintains an allowance for credit losses on accounts receivable and contract assets. The adequacy of the allowance is assessed quarterly through consideration of factors such as age of the receivable and identification of any anticipated collectability issues by account, if applicable. The Company writes off accounts when they are deemed to be uncollectible.

 

Inventory

 

Inventories, which consist of raw materials, work in progress and finished goods, are reported at lower of cost or net realizable value using the weighted average cost method. The Company capitalizes labor, material, subcontractor and overhead costs as work-in-process for contracts where control has not yet passed to the customer. The Company regularly reviews inventory quantities on hand, future purchase commitments with its suppliers, and the estimated usability for its inventory. If the Company’s review indicates a reduction in usability below carrying value, it reduces its net inventory to its net realizable value.

 

Property and Equipment

 

Property and equipment are carried at cost, net of accumulated depreciation. Depreciation is computed utilizing the straight-line method over the estimated useful life of the asset. Leasehold improvements depreciation is computed over the shorter of the lease term or estimated useful life of the asset. Additions and improvements that extend the useful lives are capitalized, while repairs and maintenance are expensed as incurred. 

 

Leases

 

The Company leases a building and various equipment. Under ASC 842, Leases (“ASC 842”), at contract inception we determine whether the contract is or contains a lease and whether the lease should be classified as an operating or a finance lease. Operating leases are included in right-of-use (“ROU”) assets and operating lease liabilities in our consolidated balance sheets.

 

ROU assets represent the Company’s right to use an underlying asset during the lease term, and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. The determination of the length of lease terms is affected by options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. The existence of significant economic incentive is the primary consideration when assessing whether the Company is reasonably certain of exercising an option in a lease. ROU assets and liabilities are recognized at commencement date and measured as the present value of lease payments to be made over the lease term. As the interest rate implicit in the lease is not readily available for most of the Company’s leases, the Company uses its estimated incremental borrowing rate in determining the present value of lease payments. The estimated incremental borrowing rate is derived from information available at the lease commencement date. The lease ROU asset recognized at commencement is adjusted for any lease payments related to initial direct costs, prepayments, and lease incentives. The ROU asset is amortized on a straight-line basis generally over the shorter of the lease term or the estimated useful life of the underlying asset and interest on the lease liability.

 

At December 31, 2023, the Company has right of use assets and lease liabilities of $4,740,193 and $5,099,629, respectively. At December 31, 2022, the Company had right of use assets and lease liabilities of $6,526,627 and $6,895,046, respectively.

 

Finance leases are treated as the purchase of an asset on a financing basis. Assets under finance leases, which primarily represent machinery and equipment, computer equipment, and leasehold improvements, are included in property and equipment, net, with the related liabilities included in current portion of long-term debt and long-term debt on the consolidated balance sheets.

 

Goodwill

 

Goodwill represents the excess of purchase price of an acquisition over the fair value of net assets acquired. Goodwill is not amortized but instead is assessed for impairment annually as of December 31st and when events and circumstances warrant an evaluation. The Company has determined that it has a single operating and reporting unit, and assesses during its evaluation whether it believes it is more likely than not that the fair value of this reporting unit is greater than or less than its carrying amount by comparing the fair value of this reporting unit with its carrying value. If the carrying amount of a reporting unit exceeds the reporting unit’s fair value, the amount by which the carrying value exceeds the fair value is recognized as an impairment loss. The Company performed its annual impairment assessment of goodwill as of December 31, 2023 and concluded that goodwill was not impaired. The Company assessed goodwill using qualitative factors to determine whether it was more likely than not that the fair value is less than its carrying value (step 0) and determined that no further testing was required.

 

F-12

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

Long-Lived Assets

 

The Company reviews its long-lived assets for impairment whenever changes in circumstances indicate that the carrying amount of an asset may not be fully recoverable by comparing the estimated undiscounted cash flows expected to result from the use of the asset and the estimated amounts expected to be realized upon the asset’s eventual disposition with the carrying value of the asset. If the carrying amount of the asset exceeds the aforementioned estimated expected undiscounted cash flows and estimated expected disposition proceeds, the Company measures the amount of the impairment to record by comparing the carrying amount of the asset with its estimated fair value. As of December 31, 2023, the Company determined that long-lived assets were not impaired.

 

Fair Value

 

The fair value hierarchy has three levels based on the reliability of the inputs used to determine fair value. Level 1 refers to fair values determined based on quoted prices in active markets for identical assets. Level 2 refers to fair values estimated using significant other observable inputs and Level 3 includes fair values estimated using significant unobservable inputs.

 

At December 31, 2023 and 2022, the fair values of the Company’s current assets and current liabilities approximated their carrying values because of the short-term nature of these instruments.

 

The carrying value of the line of credit and long-term debt approximates fair value (level 2) as the interest rate is based on market quotes.

 

Earnings per Share

 

The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the treasury stock method in the calculation of earnings per share. Net income per common share is computed by dividing net income by the weighted average number of common shares outstanding during the period.

 

Basic and diluted income per common share is computed using the weighted average number of common shares outstanding. Diluted income per common share is adjusted for the incremental shares attributed to unvested RSUs. There were 160,742 and 0 incremental shares used in the calculation of diluted income per common share for the years ended December 31, 2023 and 2022, respectively.

 

F-13

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

Income Taxes

 

Income taxes are accounted for under the asset and liability method whereby deferred tax assets and liabilities are recognized for future tax consequences attributable to the temporary differences between the consolidated financial statements carrying amounts of assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the period that includes the enactment date. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company recognizes the effect of an income tax position only if, based on its merits, the position is more likely than not to be sustained on audit by the taxing authorities.

 

The Company’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.

 

Stock-Based Compensation

 

The Company accounts for stock-based compensation in accordance with ASC 718, Compensation - Stock Compensation (“ASC 718”). ASC 718 establishes accounting for stock-based awards exchanged for employee and nonemployees. Under the provisions of ASC 718, stock-based compensation cost is measured at the grant date, based on the fair value of the award on the grant date, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the equity grant).

 

Restricted stock awards are granted at the discretion of the Company’s board of directors. These awards are restricted as to the transfer of ownership and generally vest over the requisite service period. The Company recognizes forfeitures at the time the forfeiture occurs.

 

Research and Development

 

Customer-funded research and development (“R&D”) costs are incurred pursuant to contractual arrangements requiring us to provide a product meeting certain defined performance or other specifications, such as designs, and such contractual arrangements are accounted for principally by the over time revenue recognition method. Customer-funded R&D is included in the “Revenue” and “Cost of sales” line items in our Consolidated Statements of Operations.

 

Prior Period Reclassification

 

Certain amounts in prior periods have been reclassified to conform with current period presentation within the Consolidated Statement of Shareholder’s Equity and the Consolidated Statements of Cash Flows.

 

Recently Issued Accounting Standards – Adopted

 

In 2023, the Company adopted ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments (ASU 2016-13), using a modified retrospective method, which did not result in a material impact on the Company’s consolidated financial statements.

 

Recently Issued Accounting Standards – Not Adopted

 

In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which focuses on the rate reconciliation and income taxes paid. ASU No. 2023-09 requires a public business entity (“PBE”) to disclose, on an annual basis, a tabular rate reconciliation using both percentages and currency amounts, broken out into specified categories with certain reconciling items further broken out by nature and jurisdiction to the extent those items exceed a specified threshold. In addition, all entities are required to disclose income taxes paid, net of refunds received disaggregated by federal, state/local, and foreign and by jurisdiction if the amount is at least 5% of total income tax payments, net of refunds received. For PBEs, the new standard is effective for annual periods beginning after December 15, 2024, with early adoption permitted. An entity may apply the amendments in this ASU prospectively by providing the revised disclosures for the period ending December 31, 2025 and continuing to provide the pre-ASU disclosures for the prior periods, or may apply the amendments retrospectively by providing the revised disclosures for all period presented. We expect this ASU to only impact our disclosures with no impacts to our results of operations, cash flows, and financial condition.

 

 

F-14

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

2.REVENUE

 

Disaggregation of Revenue

 

The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method:

 

   Year Ended 
   December 31,
2023
   December 31,
2022
 
Government subcontracts  $69,672,602   $69,023,729 
Prime government contracts   11,842,145    8,663,308 
Commercial contracts   4,951,574    5,648,727 
Total  $86,466,321   $83,335,764 

 

   Year Ended 
   December 31, 2023   December 31, 2022 
Revenue recognized using over time revenue recognition model  $82,713,436   $75,911,241 
Revenue recognized using point in time revenue recognition model   3,752,885    7,424,523 
Total  $86,466,321   $83,335,764 

 

Favorable/(Unfavorable) Adjustments to Gross Profit

 

We review our Estimates at Completion (“EAC”) at least quarterly. Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many inputs, and requires significant judgment by management on a contract-by-contract basis. As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule, identified risks and opportunities, and the related changes in estimates of revenues and costs. The risks and opportunities relate to management’s judgment about the ability and cost to achieve the schedule, consideration of customer-directed delays or reductions in scheduled deliveries, technical requirements, customer activity levels, and related variable consideration. Management must make assumptions and estimates regarding contract revenue and costs, including estimates of labor productivity and availability, the complexity and scope of the work to be performed, the availability and cost of materials including any impact from changing costs or inflation, the length of time to complete the performance obligation, the availability and timing of funding from our customer, and overhead cost rates, among others.

 

Changes in estimates of net sales, cost of sales, and the related impact to operating profit on contracts recognized over time are recognized on a cumulative catch-up basis, which recognizes the cumulative effect of the profit changes on current and prior periods based on a performance obligation’s percentage-of-completion in the current period. A significant change in one or more of these estimates could affect the profitability of one or more of our performance obligations. Our EAC adjustments also include the establishment of, and changes to, loss provisions for our contracts accounted for on a percentage-of-completion basis.

 

Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022:

 

   Years Ended 
   December 31,
2023
   December 31,
2022
 
Favorable adjustments  $2,601,615   $4,962,675 
(Unfavorable) adjustments   (4,052,117)   (3,207,099)
Net adjustments  $(1,450,502)  $1,755,576 

 

F-15

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

Favorable adjustments during the year ended December 31, 2023 included the NGC E-2D MY2 Outer Wing Panel (“OWP”) and NGC E-2D Wet Outer Wing Panel programs. Unfavorable adjustments during the year ended December 31, 2023 included the Boeing A-10 and Embraer Phenom 300 programs. Favorable adjustments during the year ended December 31, 2022 included the Raytheon NGJ Pods/AMS and Lockheed Margin F-16 Rudder Island programs. Unfavorable adjustments during the year ended December 31, 2022 included the NGC E-2D MY2 OWP and Embraer Phenom 300 programs.

 

Transaction Price Allocated to Remaining Performance Obligations

 

As of December 31, 2023, the aggregate amount of transaction price allocated to the remaining performance obligations was approximately $118.2 million. This represents the amount of revenue the Company expects to recognize in the future on contracts with unsatisfied or partially satisfied performance obligations as of December 31, 2023.

 

 

3.CONTRACT ASSETS AND LIABILITIES

 

Contract assets represent revenue recognized on contracts in excess of amounts invoiced to the customer and the Company’s right to consideration is conditional on something other than the passage of time. Amounts may not exceed their net realizable value. Under the typical payment terms of our government contracts, the customer retains a portion of the contract price until completion of the contract, as a measure of protection for the customer. Our government contracts therefore typically result in revenue recognized in excess of billings, which we present as contract assets. Contract assets are classified as current assets. The Company’s contract liabilities represent customer payments received or due from the customer in excess of revenue recognized. Contract liabilities are classified as current liabilities. 

 

  

December 31,

 2023

   December 31,
2022
  December 31,
2021
 
Contract assets  $35,312,068   $27,384,540  24,459,339  
               
Contract liabilities   5,937,629    6,001,726  5,122,766  

 

Contract assets at December 31, 2023 increased $7,927,528 from December 31, 2022 due to the recognition of revenue during 2023 upon the satisfaction or partial satisfaction of performance obligations for which we had not yet billed our customers as of December 31, 2023, primarily on our T-38 Pacer Classic program, our Lockheed Martin F-16 Rudder Island program and our NGC E-2D Advanced Hawkeye OWP program.

 

Contract liabilities decreased $64,097 during 2023, primarily due to revenue recognized on these performance obligations in excess of payments received.

 

Revenue recognized for the year ended December 31, 2023, that was included in the contract liabilities balances as of January 1, 2023 was $3,816,336. Revenue recognized for the year ended December 31, 2022, that was included in the contract liabilities balances as of January 1, 2022 was $3,598,601.

 

F-16

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

4.ACCOUNTS RECEIVABLE

 

Accounts receivable consists of trade receivables as follows:

 

  

December 31,

 2023

   December 31,
2022
 
Billed receivables  $4,444,504   $5,139,757 
Less: allowance for expected credit losses   (92,308)   (281,985)
   Total accounts receivable, net  $4,352,196   $4,857,772 

 

 

 

5.INVENTORY

 

The components of inventory consist of the following: 

 

             
   December 31, 
   2023   2022 
Raw materials  $1,187,008   $1,892,157 
Work in progress   75,795    685,438 
Finished goods (Includes completed components)   1,617,077    3,038,859 
       Gross inventory  $2,879,879   $5,616,454 
       Inventory reserves   (1,443,233)   (3,123,386)
       Inventory, net  $1,436,647   $2,493,069 

 

 

 

6.PROPERTY AND EQUIPMENT

 

The components of property and equipment consist of the following:

 

   December 31,   Estimated 
   2023   2022   Useful Life (years) 
Machinery and equipment  $4,004,779   $3,978,662   5 to 7 
Computer equipment   4,242,437    4,191,040   5 
Furniture and fixtures   709,350    709,350   7 
Automobiles and trucks   13,162    13,162   5 
Leasehold improvements   2,692,552    2,629,615    Lesser of lease term or 10 years 
Total gross property and equipment   11,662,280    11,521,829     
Less accumulated depreciation and amortization   (10,868,224)   (10,397,273)    
Total property and equipment, net  $794,056   $1,124,556     

 

Depreciation expense for the years ended December 31, 2023 and 2022 was $470,950 and $563,096, respectively.

 

F-17

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

7.GOODWILL

 

The Company acquired WMI on December 20, 2018. The acquisition was accounted for as a business combination in accordance with ASC Topic 805. Accordingly, the Company recorded the fair value of the assets and liabilities assumed at the date of acquisition. As a result of the acquisition of WMI on December 30, 2018, the Company recorded Goodwill of $1,784,254.

 

 

8.LINE OF CREDIT

 

On March 24, 2016, the Company entered into an Amended and Restated Credit Agreement with the lenders named therein and BankUnited, N.A. (“BankUnited”) as Sole Arranger, Agent and a Lender, dated as of March 24, 2016 (as amended, the “Credit Agreement” or the “BankUnited Facility”). The BankUnited Facility originally provided for a revolving credit loan commitment of $30 million (the “Revolving Loan”) and a $10 million term loan (“Term Loan”). The Revolving Loan bears interest at a rate based upon a pricing grid, as defined in the Credit Agreement.

 

On April 12, 2022, the Company entered into a Consent, Waiver and Ninth Amendment (the “Ninth Amendment”) to the Credit Agreement. Under the Ninth Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to September 30, 2023, (b) providing for the repayment of an additional $750,000 of the principal balance of the Term Loan in three installments of $250,000 on September 30, 2022, December 31, 2022 and March 31, 2023 in addition to $200,000 regular monthly principal payments through December 31, 2022 and (c) increasing the interest on the Revolving Loan and the Term Loan as follows: through June 30, 2022, Prime Rate (as defined in the Credit Agreement) plus 2.5%; from July 1, 2022 through August 31, 2022, Prime Rate plus 5%; from September 1, 2022 through October 31, 2022, Prime Rate plus 6%; from November 1, 2022 through December 31, 2022, Prime Rate plus 7%; and from January 1, 2023 through September 30, 2023, Prime Rate plus 8%. Additionally, under the Ninth Amendment, the Credit Agreement financial covenants were amended. BankUnited also waived or consented to certain covenant non-compliance, waived temporarily or consented to, late delivery of certain financial information and waived permanently late delivery of certain pro-forma budget information.

 

F-18

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

On August 19, 2022, the Company entered into a Consent, Waiver and Tenth Amendment (the “Tenth Amendment”) to the Credit Agreement. Under the Tenth Amendment, the parties amended the Credit Agreement by (a) increasing the maximum leverage ratio applicable for the fiscal quarter ending September 30, 2022 to 5.0 to 1.0, (b) waiving and/or consenting to the exclusion from the Company’s covenant compliance requirements for the fiscal quarters ended December 31, 2021, March 31, 2022, June 30, 2022 and September 30, 2022 up to (i) $566,025 of losses incurred and reserves taken under the Borrower’s welded product contracts, and (ii) $367,045 of reserves taken with respect to the Borrower’s welded product inventory, and (c) waiving and/or consenting to the exclusion from the Company’s covenant compliance requirements for the fiscal quarters ended March 31, 2022, June 30, 2022, September 30, 2022 and December 31, 2022 up to $795,997 of accrued severance and COBRA costs and employer taxes incurred by the Company during the fiscal quarter ending March 31, 2022. Additionally, under the Tenth Amendment, BankUnited waived or consented to late delivery of certain financial information required by the Credit Agreement.

 

On November 10, 2022, the Company entered into an Eleventh Amendment to the Credit Agreement (the “Eleventh Amendment”). Under the Eleventh Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to November 30, 2023 or with respect to the Term Loan, if earlier, until the outstanding principal balance is paid in full (the “Term Loan Maturity Date”), (b) providing for regular monthly principal payments of $200,000 on the Term Loan from January 1, 2023 through the Term Loan Maturity Date (in addition to the Company’s existing obligation to make two principal payments on the term loan of $250,000 on each of December 31, 2022 and March 31, 2023) and (c) decreasing the interest rate on the Revolving Loan and on the Term Loan to the Prime Rate plus 3.5% effective as of November 1, 2022.

 

On March 23, 2023, the Company entered into a Twelfth Amendment to the Credit Agreement (the “Twelfth Amendment”). Under the Twelfth Amendment, the parties amended the Credit Agreement by : (a) extending the maturity date of the Company’s existing revolving line of credit and its existing term loan to November 30, 2024 (under the terms of the Credit Agreement, the outstanding principal balance of the term loan will be repaid by June 30, 2023); (b) providing for reduction of the aggregate maximum principal amount of all revolving line of credit loans to $20,520,000 from October 1, 2023 through December 31, 2023, $19,800,000 from January 1, 2024 through March 31, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, and $17,640,000 from October 1, 2024 and thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period; and (c) payment of a $250,000 capitalized fee incurred in connection with the Eighth Amendment to the Credit Agreement in two installments, the first installment to be paid on June 1, 2023 in the amount of $116,667 and the second installment to be paid July 1, 2023 in the amount of $133,333, together with all unpaid interest accrued at the term loan interest rate on the capitalized fee through each such date.

 

The Credit Agreement, as amended, requires us to maintain the following financial covenants (subject to the exclusions provided for in the previous paragraph): (a) minimum debt service coverage ratio of no less than 1.5 to 1.0 for the trailing four quarter period ended March 31, 2022, 0.95 to 1.0 for the trailing four quarter period ended June 30, 2022, and 1.5 to 1.0 for the trailing four quarter period ended September 30, 2022 and for the trailing four quarter periods ended thereafter; (b) maximum leverage ratio of no less than 7.30 to 1.0 for the trailing four quarter period ended March 31, 2022, 6.30 to 1.0 for the trailing four quarter period ended June 30, 2022, 5.0 to 1.0 for the trailing four quarter period ended September 30, 2022 and 4.0 to 1.0 for the trailing four quarter periods thereafter; (c) minimum net income after taxes as of the end of each fiscal quarter being no less than $1.00 commencing June 30, 2022; and (d) a minimum adjusted EBITDA at the end of each quarter of no less than $1.0 million (waived for the quarter ended March 31, 2022). The additional principal payments, increase in interest and an amendment fee provided for in the Eighth and Ninth Amendments are excluded for purposes of calculating compliance with each of the financial covenants.

 

On February 20, 2024, the Company entered into a Thirteenth Amendment to the Credit Agreement (the “Thirteenth Amendment”). Under the Thirteenth Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Company’s existing revolving line of credit to August 31, 2025; and (b) setting the aggregate maximum principal amount of all revolving line of credit loans to $19,800,000 from January 1, 2024 through March 31, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, $17,640,000 from October 1, 2024 through December 31, 2024, $16,920,000 from January 1, 2025 through March 31, 2025, $16,200,000 from April 1, 2025 through June 30, 2025 and $15,480,000 thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period.

 

As of December 31, 2023 and December 31, 2022, the Company had $20,040,000 and $21,000,000, respectively, outstanding under the BankUnited Revolving Loan Facility. $2,400,000 of the revolving line of credit matures and is payable by December 31, 2024 and the remaining balance of $17,640,000 of the revolving line of credit matures and is payable by August 31, 2025.

 

The BankUnited Facility is secured by all of the Company’s assets.

 

F-19

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

9.DEBT

 

As described above, in connection with the Twelfth Amendment, the Company and BankUnited agreed to amend the Credit Agreement by: (a) extending the maturity date of the Company’s existing revolving line of credit and its existing term loan to November 30, 2024 (under the terms of the Credit Agreement, the outstanding principal balance of the term loan will be repaid by June 30, 2023); (b) providing for reduction of the aggregate maximum principal amount of all revolving line of credit loans to $20,520,000 from October 1, 2023 through December 31, 2023, $19,800,000 from January 1, 2024 through March 31, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, and $17,640,000 from October 1, 2024 and thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period; and (c) payment of a $250,000 capitalized fee incurred in connection with the Eighth Amendment to the Credit Agreement in two installments, the first installment to be paid on June 1, 2023 in the amount of $116,667 and the second installment to be paid July 1, 2023 in the amount of $133,333, together with all unpaid interest accrued at the term loan interest rate on the capitalized fee through each such date.

 

As described above, in connection with the Eleventh Amendment, the Company and BankUnited agreed to amend the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to November 30, 2023 or with respect to the Term Loan, if earlier, until the outstanding principal balance is paid in full (the “Term Loan Maturity Date”), (b) providing for regular monthly principal payments of $200,000 on the Term Loan from January 1, 2023 through the Term Loan Maturity Date (in addition to the Company’s existing obligation to make two principal payments on the term loan of $250,000 on each of December 31, 2022 and March 31, 2023) and (c) decreasing the interest rate on the Revolving Loan and on the Term Loan to the Prime Rate plus 3.5% effective as of November 1, 2022.

 

As described above, in connection with the Tenth Amendment, the Company and BankUnited agreed to amend the Credit Agreement by (a) amending the maximum leverage ratio applicable for the fiscal quarter ending on September 30, 2022, and (b) consenting to and waiving certain covenant non-compliance under the Credit Agreement. Under the Tenth Amendment, there are no changes to interest rates or repayment schedule and the terms pertaining to interest rates and repayment schedule remain the same as described below as per the Ninth Amendment. The Tenth Amendment had no effect on the interest rates on the Revolving Term Loan or Term Loan.

 

As described above, in connection with the Ninth Amendment, the Company and BankUnited agreed to extend the maturity dates of the Revolving Loan and Term Loan to September 30, 2023, provide for the repayment of an additional $750,000 of the principal balance of the term loan in three installments of $250,000 on September 30, 2022, December 31, 2022 and March 31, 2023 (in addition to the $750,000 in additional principal payments as required by the Eighth Amendment due on November 30, 2021, December 31, 2021 and March 31, 2022), as well as the $200,000 regular monthly principal payments paid monthly through maturity, increase the interest on the Revolving Loan and on the Term Loan as follows: through June 30, 2022, Prime Rate (as defined in the Credit Agreement) plus 2.5%; from July 1, 2022 through August 31, 2022, Prime Rate plus 5%; from September 1, 2022 through October 31, 2022, Prime Rate plus 6%; from November 1, 2022 through December 31, 2022, Prime Rate plus 7%; and from January 1, 2023 through September 30, 2023, Prime Rate plus 8%, waive or consent to certain covenant non-compliance, and waive temporarily or consented to, late delivery of certain financial information and waived permanently late delivery of certain pro-forma budget information. The BankUnited Facility, as amended, requires us to maintain the financial covenants described in the preceding note.

 

In 2022, as consideration for the lenders entering into the Ninth Amendment, the Company paid a $62,833 fee to the lenders. The Company has cumulatively paid approximately $962,000 of total debt issuance costs in connection with the BankUnited Facility of which approximately $82,000 and $131,000 is unamortized and included in other assets at December 31, 2023 and 2022, respectively.

 

F-20

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows:

 

Year ending December 31,     
2024   $44,498 
2025    26,483 
Total   $70,981 

 

Included in the long-term debt are financing leases and notes payable totaling $70,981 and $207,414 at December 31, 2023 and 2022, respectively, including a current portion of $44,498 and $136,433, respectively.

 

The BankUnited Facility is secured by all of the Company’s assets and both the Revolving Loan and Term Loan bear interest at the Prime Rate + 3.50%. The Prime Rate was 8.50% as of December 31, 2023 and as such, the Company’s interest rate on the Revolving Loan and Term Loan was 12.00% as of December 31, 2023.

 

During the year ended December 31, 2023, the Term Loan was fully repaid. At December 31, 2022, the Term Loan had an aggregate principal balance due of $1,583,333, payable in monthly installments, as defined in the Credit Agreement.

 

 

10.LEASES

 

The Company leases manufacturing and office space under an agreement classified as an operating lease. On November 10, 2022, the Company executed the second amendment to the lease agreement for its manufacturing and office space, which extends the lease agreement’s expiration date to April 30, 2026. The lease agreement does not include any renewal options. The agreement provides for an initial monthly base amount plus annual escalations through the term of the lease. In addition to the monthly base amounts in the lease agreement, the Company is required to pay real estate taxes and operating expenses during the lease terms.

 

The Company also leases office equipment in agreements classified as operating leases.

 

For the years ended December 31, 2023 and 2022, the Company’s operating lease expense was $2,142,338 and $2,101,596, respectively.

 

Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows:

 

Year ending December 31,        
2024     $ 2,228,784  
2025       2,283,354  
2026       850,276  
2027       111,065  
2028       9,226  
Total undiscounted operating lease payments       5,482,705  
Less imputed interest       (383,076 )
Present value of operating lease payments     $ 5,099,629  

 

F-21

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022:

 

   2023   2022 
Assets          
ROU assets, net  $4,740,193   $6,526,627 
           
Liabilities          
Current operating lease liabilities  $1,999,058   $1,817,811 
Long-term operating lease liabilities   3,100,571    5,077,235 
Total lease liabilities  $5,099,629   $6,895,046 

 

The Company’s weighted average remaining lease term for its operating leases is 2.5 years as of December 31, 2023. The Company’s weighted average discount rate for its operating leases is 5.43% as of December 31, 2023.

 

 

11.INCOME TAXES

 

We account for income taxes in accordance with ASC 740 Income Taxes. ASC 740 is an asset and liability approach that requires the recognition of deferred tax assets and liabilities for the expected tax consequences or events that have been recognized in our consolidated financial statements or tax returns. ASC 740 also clarifies the accounting for uncertainty in income taxes recognized in the consolidated financial statements. The interpretation prescribes a recognition threshold and measurement attribute for the consolidated financial statements recognition and measurement of a tax position taken, or expected to be taken, in a tax return.

 

The Company files income tax returns in the U.S. federal jurisdiction and in various state jurisdictions. The Company generally is no longer subject to U.S. or state examinations by tax authorities for taxable years prior to 2019. However, net operating losses utilized from prior years in subsequent years’ tax returns are subject to examination until three years after the filing of subsequent years’ tax returns. The statute of limitations expiration in foreign jurisdictions for corporate tax returns generally ranges between two and five years depending on the jurisdiction.

 

The (benefit) for income taxes consists of the following:

 

Year ended December 31,  2023   2022 
Current:          
State  $14,248   $21,332 
Deferred:          
    Federal   (12,608,425)   (6,428,448)
State   (755,237)   (146,015)
Total  $(13,349,414)  $(6,553,131)

 

F-22

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows:

 

December 31,  2023   2022 
Taxes computed at the federal statutory rate  $808,876   $550,850 
State income tax, net   (585,381)   (98,499)
Research and development tax credit   (133,089)   (190,656)
Change in valuation allowance   (13,531,626)   (6,616,952)
Other   88,308    51,696 
Accrued loss reserve adjustment       (253,738)
Permanent differences   3,498    4,168 
Benefit for income taxes  $(13,349,414)  $(6,553,131)

 

The components of deferred income tax assets and liabilities are as follows at December 31:

 

Deferred Tax Assets:  2023   2022
(As Restated)
 
Allowance for credit losses  $20,632   $60,100 
Capitalized R&D   1,420,263    864,969 
Credit carryforwards   2,278,642    2,193,146 
Inventory reserve   350,073    722,991 
Accrued payroll   151,986    267,819 
Loss contracts reserve   75,402    46,205 
Restricted stock   94,809    92,677 
Acquisition costs   74,136    77,762 
Lease liability   1,139,836    1,469,551 
Accrued legal       159,849 
Disallowed interest expense   1,067,063    943,089 
Net operating loss carryforward   16,356,545    17,513,901 
Other   45,057    20,659 
Deferred tax assets   23,074,444    24,432,718 
           
Valuation allowance   (569,143)   (14,740,034)
           
Deferred Tax Liabilities:          
Prepaid expenses   143,126    207,980 
Revenue recognition    1,224,106    1,341,105 
Property and equipment   140,449    178,107 
ROU asset   1,059,496    1,391,029 
Deferred tax liabilities  $2,567,177   $3,118,221 
Net deferred tax assets  $19,938,124   $6,574,463 

 

F-23

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

During our review of the Company’s deferred income tax positions as of December 31, 2023, we determined that the following adjustments are needed to our previously reported December 31, 2022 deferred tax assets and liabilities balances, with no impact to our net deferred tax assets, due to the inadequate review, assessment of and reporting of the Company’s temporary differences between book and taxable income. More specifically, the adjustments are required due to computational errors and incomplete analyses. Accordingly, we have restated the balances as previously reported, where needed, as follows:

 

Deferred Tax Assets:  2022 (as Previously Reported)   Restatement Adjustments   2022 (As Restated) 
Allowance for credit losses  $60,100   $   $60,100 
Capitalized R&D   864,969        864,969 
Credit carryforwards   2,193,146        2,193,146 
Inventory reserve   1,130,788    (407,797)   722,991 
Accrued payroll   267,819        267,819 
Loss contracts reserve   46,205        46,205 
Restricted stock   160,989    (68,312)   92,677 
Acquisition costs   77,762        77,762 
Lease liability   1,469,551        1,469,551 
Accrued legal   159,849        159,849 
Disallowed interest expense   1,268,226    (325,137)   943,089 
Net operating loss carryforward   19,493,530    (1,979,629)   17,513,901 
Other   20,659        20,659 
Deferred tax assets   27,213,593    (2,780,875)   24,432,718 
                
Valuation allowance   (14,916,923)   176,889    (14,740,034)
                
Deferred Tax Liabilities:               
Prepaid expenses   207,980        207,980 
Revenue recognition   3,966,404    (2,625,299)   1,341,105 
Property and equipment   156,794    21,313    178,107 
ROU asset   1,391,029        1,391,029 
Deferred tax liabilities  $5,722,207   $(2,603,986)  $3,118,221 
Net deferred tax assets  $6,574,463   $   $6,574,463 

 

As of December 31, 2023, the Company had approximately $74.7 million of gross net operating loss carryforwards (“NOLs”) for federal tax purposes and approximately $17.3 million of post apportionment NOLs for state tax purposes. The Federal NOLs begin to expire in 2034. Losses generated in 2018 and forward of $14.4 million have an indefinite life and can offset up to 80% of taxable income in the future. Federal NOLs generated prior to 2018 can offset 100% of future taxable income. The state NOLs begin to expire in 2034.

 

As a result of the Tax Cuts and Jobs Act of 2017 and the Coronavirus Aid, Relief, and Economic Security Act of 2020, federal NOLs arising before January 1, 2018, and NOLs arising after January 1, 2018, are subject to different rules. Our pre-2018 NOLs totaled approximately $60.3 million; these NOLs will expire in varying amounts from 2034 through 2039, if not utilized, and can offset 100% of future taxable income for regular tax purposes. Our NOLs arising in 2018, 2019 and 2020 can generally be carried back five years, carried forward indefinitely and can offset 100% of taxable income for tax years before January 1, 2021 and up to 80% of taxable income for tax years after December 31, 2020. Any NOLs arising on or after January 1, 2021, cannot be carried back, can generally be carried forward indefinitely and can offset up to 80% of future taxable income. The state NOLs begin to expire in 2034.

 

Our ability to fully recognize the benefits from our NOLs is dependent upon our ability to generate sufficient income prior to their expiration. In addition, our NOL carryforwards may be limited if we experience an ownership change as defined by Section 382 of the Internal Revenue Code (“Section 382”). In general, an ownership change under Section 382 occurs if 5% shareholders increase their collective ownership of the aggregate amount of our outstanding shares by more than 50 percentage points over a relevant lookback period. The Company has completed a Section 382 analysis for the year ended December 31, 2022, and believes that no ownership change occurred during the relevant lookback period that would limit our ability to use our NOLs. The sale of additional equity securities in the future may trigger an ownership change under IRC Section 382, which could significantly limit our ability to utilize our tax benefits.

 

The Company will recognize a tax benefit in the consolidated financial statements for an uncertain tax position only if management’s assessment is that the position is “more likely than not” (i.e., a likelihood greater than 50%) to be allowed by the tax jurisdiction based solely on the technical merits of the position. The term “tax position” refers to a position in a previously filed tax return or a position expected to be taken in a future tax return that is reflected in measuring current or deferred income tax assets and liabilities for financial reporting purposes.

 

Assessing the realizability of deferred tax assets requires the determination of whether it is more likely than not that some portion or all the deferred tax assets will not be realized. In assessing the need for a valuation allowance, the Company considers all available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, loss carryback and tax-planning strategies. Generally, more weight is given to objectively verifiable evidence, such as a cumulative loss in recent years, as a significant piece of negative evidence to overcome. As of December 31, 2023, the Company achieved three years of consecutive book and taxable income, along with projections of profitability, for which management determined that there is sufficient positive evidence to conclude that it is more likely than not that a portion of the deferred tax assets will be realized. As such, $14,170,891 of the valuation allowance was released during the fourth quarter of fiscal 2023, leaving a balance in the valuation allowance of $569,143 as of December 31, 2023.

 

The income tax (benefit) for the year ended December 31, 2023 was $(13,349,414), an effective tax (benefit) rate of (346.6%). The tax (benefit) was mostly the result of the aforementioned reduction in the valuation allowance on deferred tax assets. Management makes these estimates quarterly in order to determine the appropriate level of valuation allowance to include in the Company’s financial statements at the balance sheet date.

 

F-24

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

12.       ACCRUED EXPENSES

 

Accrued expenses consists of the following:

 

  

December 31,

 2023

   December 31,
2022
 
           
Accrued purchases  $7,132,847   $4,153,237 
Accrued payroll   1,143,913    1,285,122 
Accrued insurance   855,190    837,371 
Accrued interest   601,200    703,354 
Accrued professional fees and other
accrued expenses
   542,545    365,506 
   Total  $10,275,695   $7,344,590 

 

 

 

13.STOCK-BASED COMPENSATION

 

Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:

 

   2023   2022 
Cost of sales  $65,470   $36,794 
           
Selling, general and administrative   705,156    319,084 
Total stock-based compensation expense  $770,626   $355,878 

 

The Company grants restricted stock units (“RSUs”) to its board of directors as partial compensation. These RSUs vest quarterly on a straight-line basis over a one-year period.

 

The following table summarizes activity related to outstanding RSUs for the year ended December 31, 2023:

 

    RSUs  

Weighted Average 

Grant Date 

Fair Value
of RSUs 

 
Non-vested – January 1, 2023       $ 
Granted    173,718   $3.43 
Vested    (139,969)  $3.43 
Forfeited    (33,749)  $3.42 
Non-vested – December 31, 2023       $ 

 

The Company grants shares of common stock (“Restricted Stock Awards”) to select employees. These shares have various vesting dates, ranging from vesting on the grant date to as late as four years from the date of grant. In the event that the employee’s employment is voluntarily terminated prior to certain vesting dates, portions of the shares may be forfeited. At December 31, 2023, the weighted average remaining amortization period was 2.7 years.

 

The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023:

 

    Restricted Stock Awards  

Weighted Average 

Grant Date 

Fair Value of

Restricted Stock

Awards 

 
Non-vested – January 1, 2023    130,583   $2.37 
Granted    111,447   $3.82 
Vested    (39,331)  $3.07 
Forfeited    (35,628)  $2.04 
Non-vested – December 31, 2023    167,071   $3.25 

 

F-25

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

The Company grants shares of common stock (“Performance Restricted Stock Awards” or “PRSAs”) to select officers as part of our long-term incentive program that will result in that number of PRSAs being paid out if the target performance metric is achieved. The award vesting is based on specific performance metrics related to accounts payable delinquency, debt, and net income during the performance period. The PRSAs vest at 0% or 100% and all three metrics must be met to vest at 100%. The PRSAs granted under this program will vest on the fourth anniversary of the grant date, subject to the aforementioned performance criteria. At December 31, 2023, the weighted average remaining amortization period was 2.9 years.

 

The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023:

 

    PRSAs  

Weighted Average 

Grant Date 

Fair Value
of PRSAs 

 
Non-vested – January 1, 2023    31,737   $2.65 
Granted    48,050   $3.27 
Vested    (20,971)  $2.65 
Forfeited    (10,766)  $2.65 
Non-vested – December 31, 2023    48,050   $3.27 

 

The fair value of all RSUs, PRSAs and Restricted Stock Awards is based on the closing price of our common stock on the grant date. All RSUs, PRSAs, and Restricted Stock Awards vest and settle in common stock (on a one-for-one basis).

 

As of December 31, 2023, unamortized stock-based compensation costs related to restricted share arrangements was $274,415.

 

In addition, our income tax liabilities for 2023 and 2022 were reduced by $174,617 and $101,497, respectively, due to recognized tax benefits on stock-based compensation arrangements.

 

In 2009, the Company adopted the Performance Equity Plan 2009 (the “2009 Plan”). The 2009 Plan reserved 500,000 common shares for issuance. The 2009 Plan provides for the issuance of either incentive stock options or nonqualified stock options to employees, consultants or others who provide services to the Company. The Company has 2,364 shares available for grant under the 2009 Plan as of December 31, 2023.

 

In 2016, the Company adopted the 2016 Long Term Incentive Plan (the “2016 Plan”). The 2016 Plan reserved 600,000 common shares for issuance, provided that, no more than 200,000 common shares be granted as incentive stock options. Awards may be made or granted to employees, officers, directors and consultants in the form of incentive stock options, non-qualified stock options, stock appreciation rights, restricted stock, restricted stock units and other stock-based awards. Any shares of common stock granted in connection with awards other than stock options and stock appreciation rights are counted against the number of shares reserved for issuance under the 2016 Plan as one and one-half shares of common stock for every one share of common stock granted in connection with such award. Any shares of common stock granted in connection with stock options and stock appreciation rights are counted against the number of shares reserved for issuance under the 2016 Plan as one share for every one share of common stock issuable upon the exercise of such stock option or stock appreciation right awarded. In the fourth quarter of 2020, the Company added 800,000 shares to the 2016 Plan, which increased the number of shares reserved for issuance under the 2016 Plan to 1,400,000 shares. In the second quarter of 2023, the Company added an additional 800,000 shares to the 2016 Plan, which increased the number of shares for reserved for issuance under the 2016 Plan to 2,200,000 shares. The Company has 619,055 shares available for grant under the 2016 Plan as of December 31, 2023.

 

F-26

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

14.EMPLOYEE BENEFIT PLAN

 

On September 11, 1996, the Company’s board of directors instituted a defined contribution plan under Section 401(k) of the Internal Revenue Code (the “Code”). On October 1, 1998, the Company amended and standardized its plan as required by the Code. Pursuant to the amended plan, qualified employees may contribute a percentage of their pretax eligible compensation to the Plan and the Company will match a percentage of each employee’s contribution. Additionally, the Company has a profit-sharing plan covering all eligible employees. Contributions by the Company are at the discretion of management. The amount of contributions recorded by the Company during the years ended December 31, 2023 and 2022 amounted to $300,600 and $343,077, respectively.

 

 

15.MAJOR CUSTOMERS

 

For the year ended December 31, 2023, 30%, 26%, 13%, and 12% of our revenue was generated from our four largest customers. For the year ended December 31, 2022, 35%, 17%, 12% and 10% of our revenue was generated from our four largest customers.

 

At December 31, 2023, 30%, 17%, 12%, and 11% of accounts receivable were due from our four largest customers. At December 31, 2022, 38%, 21%, 17%, and 13% of accounts receivable were due from our four largest customers.

 

At December 31, 2023, 26%, 23%, 18%, and 15% of our contract assets were related to our four largest customers. At December 31, 2022, 27%, 20%, 16%, and 16% of our contract assets were related to our four largest customers.

 

 

16.COMMITMENTS AND CONTINGENCIES

 

The Company may be involved in various claims, suits, assessments, investigations, and legal proceedings that arise from time to time in the ordinary course of its business. The Company accrues a liability when it is both probable a liability has been incurred and the amount of the loss can be reasonably estimated. The Company reviews these accruals at least quarterly and adjusts them to reflect ongoing negotiations, settlements, rulings, advice of legal counsel, and other relevant information. To the extent new information is obtained and the Company’s views on the probable outcomes of claims, suits, assessments, investigations, or legal proceedings change, changes in the Company’s accrued liabilities would be recorded in the period such determination is made. For some matters, the amount of liability is not probable or the amount cannot be reasonably estimated and, therefore, accruals have not been made.

 

Termination of Shareholder Derivative Actions and Class Action Lawsuit

 

Termination of Shareholder Derivative Actions

 

In 2020 and 2021, four shareholder derivative actions were filed against certain current and former members of our board of directors and certain of our current and former officers. All four of the actions—each described in further detail below—were based on substantially the same allegations and claims – specifically, that the defendants allegedly breached their fiduciary duties and/or violated securities laws by permitting false and misleading statements to be included in the Company’s registration statement and prospectus supplements issued in connection with the Company’s October 16, 2018 securities offering and/or by permitting false and misleading statements to be made in the Company’s periodic reports filed between March 22, 2018 and February 14, 2020.

 

The first action (captioned Moulton v. McCrosson, et.al., No. 20-cv-02092) was filed on May 7, 2020, in the U.S. District Court for the Eastern District of New York. It purported to assert derivative claims against the individual defendants for violations of Section 10(b) and 21D of the Exchange Act, breach of fiduciary duty, and unjust enrichment and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct. The complaint also sought declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

The second action (captioned Woodyard v. McCrosson, et al., Index No. 613169/2020) was filed on September 17, 2020, in the Supreme Court of the State of New York (Suffolk County). It purported to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct, along with declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

The third action (captioned Berger v. McCrosson, et al., No. 1:20-cv-05454) was filed on November 10, 2020, in the U.S. District Court for the Eastern District of New York. The complaint, which was based on the shareholder’s inspection of certain corporate books and records, purported to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and sought to implement reforms to the Company’s corporate governance and internal procedures and to recover on behalf of the Company an unspecified amount of monetary damages. The complaint also sought equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

F-27

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

On March 19, 2021, the parties to the Moulton and Berger actions filed a joint stipulation consolidating the actions (under the caption In re CPI Aerostructures Stockholder Derivative Litigation, No. 20-cv-02092) and staying the consolidated action.

 

The fourth action (captioned Wurst, et al. v. Bazaar, et al., Index No. 605244/2021) was filed on March 24, 2021, in the Supreme Court of the State of New York (Suffolk County). The complaint purported to assert derivative claims against the individual defendants for breach of fiduciary duty, unjust enrichment, and waste of corporate assets, and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct. The complaint also sought declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

On June 13, 2022, plaintiffs in the consolidated federal action informed the court that the Company and all defendants had reached an agreement in principle with all plaintiffs to settle the shareholder derivative lawsuits described above. On June 16, 2022, plaintiffs in the consolidated federal action filed an unopposed motion for preliminary approval of the settlement. On February 14, 2023, the magistrate judge recommended that the court grant the motion in its entirety. On March 6, 2023, the Court granted preliminary approval of the proposed settlement.

 

On May 17, 2023, plaintiffs in the consolidated federal action filed an unopposed motion for final approval of the settlement. The magistrate judge held a final approval hearing on June 7, 2023. On October 27, 2023, the magistrate judge recommended that the Court grant the final approval motion in its entirety. On December 11, 2023, the Court adopted that recommendation and entered orders granting final approval to the settlement and closing the case.

 

Pursuant to the settlement agreement, after the federal court’s final approval of the settlement, the plaintiffs in the Woodyard and Wurst state-court actions voluntarily requested that those actions be dismissed. The parties to the Woodyard action filed a stipulation of dismissal on December 15, 2023, and the Court entered an order dismissing the action on December 19, 2023. The parties to the Wurst action filed a stipulation of dismissal on December 14, 2023, and the Court entered an order dismissing the action on December 18, 2023.

 

As part of the settlement, the Company agreed to undertake (or confirm that it has undertaken already) certain corporate governance reforms. In addition, the Company and/or its insurer have agreed to pay a total of $585,000 in attorneys’ fees to plaintiffs’ counsel. The Company’s insurer paid the full amount due of $585,000. Because the settlement amount was transferred to counsel for plaintiffs on May 5, 2023 from the escrow account established for this purpose, we relieved from our balance sheet, as of that date, the amounts previously owed from our directors’ and officers’ insurance carrier and to that plaintiff.

 

Termination of Class Action Lawsuit

 

A consolidated class action lawsuit (captioned Rodriguez v. CPI Aerostructures, Inc., et al., No. 20-cv-01026) was filed in the U.S. District Court for the Eastern District of New York against the Company; Douglas McCrosson, the Company’s former Chief Executive Officer; Vincent Palazzolo, the Company’s former Chief Financial Officer; and the two underwriters of the Company’s October 16, 2018 offering of common stock, Canaccord Genuity LLC and B. Riley FBR. The Amended Complaint in the action asserted claims on behalf of two plaintiff classes: (i) purchasers of the Company’s common stock issued pursuant to and/or traceable to the Company’s offering conducted on or about October 16, 2018; and (ii) purchasers of the Company’s common stock between March 22, 2018 and February 14, 2020. The Amended Complaint alleged that the defendants violated Sections 11, 12(a)(2), and 15 of the Securities Act by negligently permitting false and misleading statements to be included in the registration statement and prospectus supplements issued in connection with its October 16, 2018 securities offering. The Amended Complaint also alleged that the defendants violated Sections 10(b) and 20(a) of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), and Rule 10b-5 promulgated by the SEC, by making false and misleading statements in the Company’s periodic reports filed between March 22, 2018 and February 14, 2020. Plaintiff sought unspecified compensatory damages, including interest; rescission or a rescissory measure of damages; unspecified equitable or injunctive relief; and costs and expenses, including attorney’s fees and expert fees. On February 19, 2021, the Company moved to dismiss the Amended Complaint. Plaintiff submitted a brief in opposition to the motion to dismiss on April 23, 2021. 

 

On May 20, 2021, the parties reached a settlement in the amount of $3,600,000, subject to court approval. On July 9, 2021, Plaintiff filed an unopposed motion for preliminary approval of the settlement. On November 10, 2021, a magistrate judge recommended that the court grant the motion for preliminary approval in its entirety. The Court adopted the recommendation on May 27, 2022, and entered an order granting preliminary approval of the settlement on June 7, 2022. On August 5, 2022, the Plaintiff filed an unopposed motion for final approval. The magistrate judge held a hearing on the final approval motion on September 9, 2022. On February 16, 2023, the magistrate judge recommended that the Court grant the final approval motion in its entirety. The Court adopted that recommendation in its entirety on March 10, 2023, and terminated the case on March 13, 2023. On May 5, 2023, the Settlement Amount was transferred to plaintiff’s counsel from the escrow account established for this purpose.

 

F-28

 

 

CPI AEROSTRUCTURES, INC. AND SUBSIDIARIES

 

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

 

Litigation Settlement Obligation and Insurance Recovery Receivable Pertaining to the Class Action Lawsuit and Shareholder Derivative Action

 

The attorneys’ fees for both the class action lawsuit and the shareholder derivative actions were covered and paid by our directors’ and officers’ insurance carrier, after satisfaction of our $750,000 retention. As of December 31, 2023, we had previously paid and accrued to our financial statements covered expenses totaling $750,000, and had therefore met our insurance carrier’s directors’ and officers’ retention requirement, which capped the Company’s expenses pertaining to the class action suit at $750,000. Because the Settlement Amount was transferred to counsel for plaintiff in the class action lawsuit on May 5, 2023, from the escrow account established for this purpose, we have relieved from our balance sheet, as of that date, the amounts previously owed from our directors’ and officers’ insurance carrier and to that plaintiff.

 

F-29

 

 

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.

 

Dated: April 5, 2024 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Andrew L. Davis
   

Andrew L. Davis 

Chief Financial Officer and Secretary 

(Principal financial and accounting officer) 

 

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/Carey Bond 

  Vice Chairman of the Board of Directors   April 5, 2024
Carey Bond        
         
/s/ Richard Caswell   Director   April 5, 2024
Richard Caswell        
         
/s/ Andrew L. Davis   Chief Financial Officer and Secretary   April 5, 2024
Andrew L. Davis   (Principal Financial and Accounting Officer)    
         
/s/ Michael Faber   Director   April 5, 2024
Michael Faber        
         
/s/Dorith Hakim   Chief Executive Officer and President   April 5, 2024
Dorith Hakim   (Principal Executive Officer)    
         
/s/ Pamela Levesque   Director   April 5, 2024
Pamela Levesque        
         
/s/ Rick Rosenjack   Director   April 5, 2024
Rick Rosenjack        
         
/s/ Terry Stinson   Chairman of the Board of Directors   April 5, 2024
Terry Stinson        

 

 

EX-4.1 2 ex4-1.htm SECURITIES OF THE REGISTRANT
 

CPI AEROSTRUCTURES, INC. 10-K

 

EXHIBIT 4.1

 

DESCRIPTION OF REGISTRANT’S SECURITIES

REGISTERED PURSUANT TO SECTION 12 OF THE

SECURITIES EXCHANGE ACT OF 1934

 

The following description of the securities of CPI Aerostructures, Inc. (the “Company”, “we”, “our” or similar terms) is based upon the Company’s amended and restated certificate of incorporation (“Charter”), the Company’s bylaws (“Bylaws”) and applicable provisions of law. We have summarized certain portions of the Charter and Bylaws below. The summary is not complete and is subject to, and is qualified in its entirety by express reference to, the provisions of our Charter and Bylaws, each of which is filed as an exhibit to the Annual Report on Form 10-K of which this Exhibit 4.1 is a part.

 

Authorized Capital Stock

 

Pursuant to our Charter, our authorized capital stock consists of 55,000,000 shares, of which 50,000,000 is voting Common Stock, $0.0001 par value per share, and 5,000,000 is Preferred Stock, $0.001 par value per share.

 

Common Stock

 

Authorization. The outstanding shares of the Company’s common stock are duly authorized, validly issued, fully paid and nonassessable.

 

Trading Market. The Company’s common stock is traded on the NYSE American exchange under the ticker symbol “CVU.”

 

Voting Rights. Common stockholders of record are entitled to one vote for each share held on all matters to be voted on by stockholders.

 

Preemptive Rights, Etc. Our stockholders have no preemptive or other subscription rights. There are no sinking fund provisions applicable to our common stock, except that upon the consummation of our initial business combination, subject to the limitations described herein, we will provide our stockholders with the opportunity to redeem their shares of our common stock for cash equal to their pro rata share of the aggregate amount then on deposit in the trust account.

 

Preferred Stock

 

Our Charter provides that shares of preferred stock may be issued from time to time in one or more series. Our board of directors will be authorized to fix the voting rights, if any, designations, powers, preferences, the relative, participating, optional or other special rights and any qualifications, limitations and restrictions, applicable to the shares of each series. Our board of directors will be able, without stockholder approval, to issue preferred stock with voting and other rights that could adversely affect the voting power and other rights of the holders of the common stock and could have anti-takeover effects.

 

We currently have no preferred stock issued or outstanding.

 

Provisions of New York Law and Our Charter and Bylaws

 

Certain provisions of New York law and of our Charter and Bylaws could make our acquisition by a third party, a change in our incumbent management, or a similar change of control more difficult. The provisions described below, and the board of directors’ right to issue shares of our preferred stock from time to time in one or more classes or series without shareholder approval, as described above, may discourage certain types of coercive takeover practices and inadequate takeover bids and encourage persons seeking to acquire control of us to first negotiate with our board of directors. We believe that these provisions help to protect our potential ability to negotiate with the proponent of an unfriendly or unsolicited proposal to acquire or restructure us, and that this benefit outweighs the potential disadvantages of discouraging such a proposal because our ability to negotiate with the proponent could result in an improvement of the terms of the proposal.

 

 

 

 

Classified Board of Directors. Our board of directors is divided into three classes. The members of each class are elected for a term of three years and only one class of directors is elected annually. Thus, it would take at least two annual elections to replace a majority of our board of directors. Nominations for our board of directors may be made by our board or, in certain situations, by any holder of common stock. A shareholder entitled to vote for the election of directors may nominate a person for election as director only if the shareholder provides written notice of his nomination to our secretary not later than 120 days in advance of the same day and month that our proxy statement was released to shareholders in connection with the previous year’s annual meeting of shareholders or, if no annual meeting was held in the previous year, then by the end of the fiscal year to which the annual meeting in which the nomination will be made relates to.

 

Stockholder Meetings. A special meeting of our shareholders may be called only by our board of directors or our chairman of the board, if one has been elected, or our president. Any action required or permitted to be taken by a vote of our shareholders may be taken without a meeting by written consent, except that such written consent must be signed by the holders of all of the shares entitled to vote thereon.

 

New York anti-takeover law. We are subject to certain “business combination” provisions of Section 912 of the NYBCL and expect to continue to be so subject if and for so long as we have a class of securities registered under Section 12 of the Exchange Act. Section 912 provides, with certain exceptions, that a New York corporation may not engage in a “business combination” (e.g., merger, consolidation, recapitalization or disposition of stock) with any “interested shareholder” for a period of five years from the date that such person first became an interested shareholder unless the business combination or the transaction resulting in a person becoming an interested shareholder was approved by the board of directors of the corporation prior to that person becoming an interested shareholder. No New York corporation may engage at any time in any business combination with an interested shareholder other than (i) a business combination that is approved by the board of directors of the corporation prior to that person becoming an interested shareholder, or where the transaction resulting in a person becoming an interested shareholder was approved by the board of directors of the corporation prior to that person becoming an interested shareholder; (ii) a business combination that is approved by a majority of the outstanding stock not held by the interested shareholder or an affiliate of the interested shareholder at a meeting called no earlier than five years after the interested shareholder’s stock acquisition date; or (iii) the business combination that meets certain valuation requirements for the consideration paid. An “interested shareholder” is defined as any person who (a) is the beneficial owner of 20% or more of the outstanding voting stock of a New York corporation or (b) is an affiliate or associate of a corporation that at any time during the prior five years was the beneficial owner, directly or indirectly, of 20% or more of the then outstanding voting stock. A “business combination” includes mergers, asset sales and other transactions resulting in a financial benefit to the interested shareholder. The “stock acquisition date”, with respect to any person and any New York corporation, means the date that such person first becomes an interested shareholder of such corporation.

 

 

EX-21 3 ex21.htm SUBSIDIARIES OF THE REGISTRANT
 

CPI AEROSTRUCTURES, INC. 10-K

 

EXHIBIT 21

 

SUBSIDIARIES OF REGISTRANT
 
Welding Metallurgy, Inc.
 
Compac Development Corporation

 

 

EX-23.1 4 ex23-1.htm CONSENT OF RSM US LLP
 

CPI AEROSTRUCTURES, INC. 10-K

 

Exhibit 23.1

 

CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

 

We consent to the incorporation by reference in the Registration Statements (Nos. 333-272991, 333-255551, 333-212837, 333-164687 and 333-130077) on Form S-8 of CPI Aerostructures, Inc. of our report dated April 5, 2024, relating to the consolidated financial statements of CPI Aerostructures, Inc. and Subsidiaries, appearing in the Annual Report on Form 10-K of CPI Aerostructures, Inc. for the year ended December 31, 2023.

 

/s/ RSM US LLP

 

New York, New York

April 5, 2024 

 

 

EX-31.1 5 ex31-1.htm CERTIFICATION OF CHIEF EXECUTIVE OFFICER
 

CPI AEROSTRUCTURES, INC. 10-K

 

EXHIBIT 31.1

 

CERTIFICATION PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY

ACT OF 2002

 

I, Dorith Hakim, certify that:

 

  1. I have reviewed this Annual Report on Form 10-K of CPI Aerostructures, 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 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 fourth fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and
  5. The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and to 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.
       

 

Dated: April 5, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Dorith Hakim
    Dorith Hakim
    CHIEF EXECUTIVE OFFICER, PRESIDENT AND DIRECTOR
    (PRINCIPAL EXECUTIVE OFFICER)

 

 

EX-31.2 6 ex31-2.htm CERTIFICATION OF CHIEF FINANCIAL OFFICER
 

CPI AEROSTRUCTURES, INC. 10-K

 

EXHIBIT 31.2

 

CERTIFICATION PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY

ACT OF 2002

 

I, Andrew L. Davis, certify that:

 

  1. I have reviewed this Annual Report on Form 10-K of CPI Aerostructures, 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 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 fourth fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and
  5. The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and to 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.

 

 

Dated: April 5, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Andrew L. Davis
    Andrew L. Davis
    CHIEF FINANCIAL OFFICER AND SECRETARY
    (PRINCIPAL FINANCIAL AND ACCOUNTING OFFICER)

 

 

EX-32.1 7 ex32-1.htm SECTION 905 CERTIFICATION
 

CPI AEROSTRUCTURES, INC. 10-K

 

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 CPI Aerostructures, Inc. (the “Company”) on Form 10-K for the year ended December 31, 2022 as filed with the Securities and Exchange Commission (the “Report”), the undersigned, in the capacities and on the date indicated below, hereby certifies pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:

 

1. The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
2. The information contained in the Report fairly presents, in all material respects, the financial condition and results of operation of the Company.

 

Dated: April 5, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Dorith Hakim
    Dorith Hakim
    CHIEF EXECUTIVE OFFICER, PRESIDENT AND DIRECTOR
    (PRINCIPAL EXECUTIVE OFFICER)

 

Dated: April 5, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Andrew L. Davis
    Andrew L. Davis
    CHIEF FINANCIAL OFFICER AND SECRETARY
    (PRINCIPAL FINANCIAL AND ACCOUNTING OFFICER)

 

 

EX-97 8 ex97.htm THE COMPANY'S CLAWBACK POLICY
 

CPI AEROSTRUCTURES, INC. 10-K

 

EXHIBIT 97

 

CPI AEROSTRUCTURES, INC.

 

CLAWBACK POLICY

 

Introduction

 

The Board of Directors (the “Board”) of CPI Aerostructures, Inc. (the “Company”) believes that it is in the best interests of the Company and its shareholders to create and maintain a culture that emphasizes integrity and accountability and that reinforces the Company's pay-for-performance compensation philosophy. The Board has therefore adopted this policy which provides for the recoupment of certain executive compensation in the event of an accounting restatement resulting from material noncompliance with financial reporting requirements under the federal securities laws (the “Policy”).

 

Administration

 

This Policy shall be administered by the Board or, if so designated by the Board, the Compensation and Human Resources Committee, in which case references herein to the Board shall be deemed references to the Compensation and Human Resources Committee. Any determinations made by the Board shall be final and binding on all affected individuals.

 

Covered Executives

 

This Policy applies to the Company’s current and former executive officers, as determined by the Board in accordance with Section 10D of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), and the listing standards of the national securities exchange on which the Company's securities are listed, and such other senior executives and employees who may from time to time be deemed subject to the Policy by the Board (“Covered Executives”).

 

Recoupment; Accounting Restatement

 

In the event the Company is required to prepare an accounting restatement of its financial statements due to the Company's material noncompliance with any financial reporting requirement under the securities laws, the Board will require reimbursement or forfeiture of any excess Incentive Compensation (as defined below) received by any Covered Executive during the three completed fiscal years immediately preceding the date on which the Company is required to prepare an accounting restatement.

 

Incentive Compensation

 

For purposes of this Policy, Incentive Compensation means any of the following:

 

Annual bonuses and other short- and long-term cash incentives;

 

Stock options;

 

Stock appreciation rights;

 

Restricted stock;

 

Restricted stock units;

 

Performance shares; or

 

Performance units,

 

provided that, such compensation is granted, earned or vested based wholly or in part on the attainment of a financial reporting measure. Financial reporting measures include, but are not limited to:

 

Company stock price;

 

Total shareholder return;

 

Revenues;

 

Net income;

 

Earnings before interest, taxes, depreciation, and amortization (EBITDA);

 

Funds from operations;

 

Liquidity measures such as working capital or operating cash flow;

 

Return measures such as return on invested capital or return on assets; and

 

Earnings measures such as earnings per share.

 

 

 

 

Excess Incentive Compensation: Amount Subject to Recovery

 

The amount to be recovered will be the excess of the Incentive Compensation paid to the Covered Executive based on the erroneous data over the Incentive Compensation that would have been paid to the Covered Executive had it been based on the restated results, as determined by the Board.

 

If the Board cannot determine the amount of excess Incentive Compensation received by the Covered Executive directly from the information in the accounting restatement, then it will make its determination based on a reasonable estimate of the effect of the accounting restatement.

 

Method of Recoupment

 

The Board will determine, in its sole discretion, the method for recouping Incentive Compensation hereunder which may include, without limitation:

 

(a) requiring reimbursement of cash Incentive Compensation previously paid;

 

(b) seeking recovery of any gain realized on the vesting, exercise, settlement, sale, transfer, or other disposition of any equity-based awards;

 

(c) offsetting the recouped amount from any compensation otherwise owed by the Company to the Covered Executive;

 

(d) cancelling outstanding vested or unvested equity awards; and/or

 

(e) taking any other remedial and recovery action permitted by law, as determined by the Board.

 

No Indemnification

 

The Company shall not indemnify any Covered Executives against the loss of any incorrectly awarded Incentive Compensation.

 

Interpretation

 

The Board is authorized to interpret and construe this Policy and to make all determinations necessary, appropriate, or advisable for the administration of this Policy. Any determination of the Board shall be conclusive and binding on the Company and the applicable Covered Executives. The determination of the Board need not be uniform with respect to one or more Covered Executives.

 

It is intended that this Policy be interpreted in a manner that is consistent with the requirements of Section 10D of the Exchange Act and any applicable rules or standards adopted by the Securities and Exchange Commission or any national securities exchange on which the Company's securities are listed as such requirements may be amended, supplemented, or changed.

 

Effective Date

 

This Policy shall be effective as of the date it is adopted by the Board (the “Effective Date”) and shall apply to Incentive Compensation that is approved, awarded, or granted to Covered Executives on or after that date.

 

Amendment; Termination

 

The Board may amend this Policy from time to time in its discretion and shall amend this Policy as it deems necessary to comply with regulations adopted by the Securities and Exchange Commission under Section 10D of the Exchange Act, any rules or standards adopted by any national securities exchange on which the Company's securities are listed and any other “clawback” provision required by law. The Board may terminate this Policy at any time.

 

Other Recoupment Rights

 

The Board intends that this Policy will be applied to the fullest extent of the law. The Board may require that any employment agreement, equity award agreement, or similar agreement entered into on or after the Effective Date shall, as a condition to the grant of any benefit thereunder, require a Covered Executive to agree to abide by the terms of this Policy. 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 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, including termination of employment, the initiation of civil or criminal proceedings, and any right to repayment under applicable law.

 

 

 

 

Impracticability

 

The Board shall recover any excess Incentive Compensation in accordance with this Policy unless such recovery would be impracticable, as determined by the Board in accordance with Rule 10D-1 of the Exchange Act and the listing standards of the national securities exchange on which the Company's securities are listed.

 

Successors

 

This Policy shall be binding and enforceable against all Covered Executives and, to the extent required by applicable law or guidance from the Securities and Exchange Commission, their beneficiaries, heirs, executors, administrators, or other legal representatives.

 

 

EX-101.SCH 9 cvu-20231231.xsd XBRL SCHEMA FILE 00000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 00000002 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00000003 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00000004 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS link:presentationLink link:calculationLink link:definitionLink 00000005 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) link:presentationLink link:calculationLink link:definitionLink 00000006 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 00000007 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES link:presentationLink link:calculationLink link:definitionLink 00000008 - Disclosure - REVENUE link:presentationLink link:calculationLink link:definitionLink 00000009 - Disclosure - CONTRACT ASSETS AND LIABILITIES link:presentationLink link:calculationLink link:definitionLink 00000010 - Disclosure - ACCOUNTS RECEIVABLE link:presentationLink link:calculationLink link:definitionLink 00000011 - Disclosure - INVENTORY link:presentationLink link:calculationLink link:definitionLink 00000012 - Disclosure - PROPERTY AND EQUIPMENT link:presentationLink link:calculationLink link:definitionLink 00000013 - Disclosure - GOODWILL link:presentationLink link:calculationLink link:definitionLink 00000014 - Disclosure - LINE OF CREDIT link:presentationLink link:calculationLink link:definitionLink 00000015 - Disclosure - DEBT link:presentationLink link:calculationLink link:definitionLink 00000016 - Disclosure - LEASES link:presentationLink link:calculationLink link:definitionLink 00000017 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 00000018 - Disclosure - ACCRUED EXPENSES link:presentationLink link:calculationLink link:definitionLink 00000019 - Disclosure - STOCK-BASED COMPENSATION link:presentationLink link:calculationLink link:definitionLink 00000020 - Disclosure - EMPLOYEE BENEFIT PLAN link:presentationLink link:calculationLink link:definitionLink 00000021 - Disclosure - MAJOR CUSTOMERS link:presentationLink link:calculationLink link:definitionLink 00000022 - Disclosure - COMMITMENTS AND CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 00000023 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies) link:presentationLink link:calculationLink link:definitionLink 00000024 - Disclosure - REVENUE (Tables) link:presentationLink link:calculationLink link:definitionLink 00000025 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Tables) link:presentationLink link:calculationLink link:definitionLink 00000026 - Disclosure - ACCOUNTS RECEIVABLE (Tables) link:presentationLink link:calculationLink link:definitionLink 00000027 - Disclosure - INVENTORY (Tables) link:presentationLink link:calculationLink link:definitionLink 00000028 - Disclosure - PROPERTY AND EQUIPMENT (Tables) link:presentationLink link:calculationLink link:definitionLink 00000029 - Disclosure - DEBT (Tables) link:presentationLink link:calculationLink link:definitionLink 00000030 - Disclosure - LEASES (Tables) link:presentationLink link:calculationLink link:definitionLink 00000031 - Disclosure - INCOME TAXES (Tables) link:presentationLink link:calculationLink link:definitionLink 00000032 - Disclosure - ACCRUED EXPENSES (Tables) link:presentationLink link:calculationLink link:definitionLink 00000033 - Disclosure - STOCK-BASED COMPENSATION (Tables) link:presentationLink link:calculationLink link:definitionLink 00000034 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000035 - Disclosure - The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method: (Details) link:presentationLink link:calculationLink link:definitionLink 00000036 - Disclosure - Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022: (Details) link:presentationLink link:calculationLink link:definitionLink 00000037 - Disclosure - REVENUE (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000038 - Disclosure - Schedule of contract assets and liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 00000039 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000040 - Disclosure - Accounts receivable consists of trade receivables as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000041 - Disclosure - The components of inventory consist of the following: (Details) link:presentationLink link:calculationLink link:definitionLink 00000042 - Disclosure - The components of property and equipment consist of the following: (Details) link:presentationLink link:calculationLink link:definitionLink 00000043 - Disclosure - PROPERTY AND EQUIPMENT (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000044 - Disclosure - GOODWILL (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000045 - Disclosure - LINE OF CREDIT (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000046 - Disclosure - The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000047 - Disclosure - DEBT (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000048 - Disclosure - Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000049 - Disclosure - The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022: (Details) link:presentationLink link:calculationLink link:definitionLink 00000050 - Disclosure - LEASES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000051 - Disclosure - The (benefit) for income taxes consists of the following: (Details) link:presentationLink link:calculationLink link:definitionLink 00000052 - Disclosure - The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000053 - Disclosure - The components of deferred income tax assets and liabilities are as follows at December 31: (Details) link:presentationLink link:calculationLink link:definitionLink 00000054 - Disclosure - Accordingly, we have restated the balances as previously reported, where needed, as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000055 - Disclosure - INCOME TAXES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000056 - Disclosure - Accrued expenses consists of the following: (Details) link:presentationLink link:calculationLink link:definitionLink 00000057 - Disclosure - Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000058 - Disclosure - The following table summarizes activity related to outstanding RSUs (Details) link:presentationLink link:calculationLink link:definitionLink 00000059 - Disclosure - The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023: (Details) link:presentationLink link:calculationLink link:definitionLink 00000060 - Disclosure - The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023: (Details) link:presentationLink link:calculationLink link:definitionLink 00000061 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000062 - Disclosure - EMPLOYEE BENEFIT PLAN (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000063 - Disclosure - MAJOR CUSTOMERS (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000064 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 10 cvu-20231231_cal.xml XBRL CALCULATION FILE EX-101.DEF 11 cvu-20231231_def.xml XBRL DEFINITION FILE EX-101.LAB 12 cvu-20231231_lab.xml XBRL LABEL FILE Equity Components [Axis] Common Stock [Member] Additional Paid-in Capital [Member] Retained Earnings [Member] Product and Service [Axis] Government subcontracts [Member] Prime government contracts [Member] Commercial contracts [Member] Timing of Transfer of Good or Service [Axis] Transferred over Time [Member] Transferred at Point in Time [Member] Cumulative Effect, Period of Adoption [Axis] Favorable adjustments [Member] Unfavorable adjustments [Member] Long-Lived Tangible Asset [Axis] Machinery and Equipment [Member] Statistical Measurement [Axis] Minimum [Member] Maximum [Member] Computer Equipment [Member] Furniture and Fixtures [Member] Vehicles [Member] Leasehold Improvements [Member] Asset Class [Axis] Property, Plant and Equipment [Member] Business Acquisition [Axis] Welding Metallurgy Inc [Member] Credit Facility [Axis] Revolving Credit Facility [Member] Term loan [Member] Revolving Loan and Term Loan [Member] Lender Name [Axis] Bank United [Member] Variable Rate [Axis] Prime Rate [Member] Prime Rate One [Member] Prime Rate Period Two [Member] Prime Rate Period Three [Member] Prime Rate Period Four [Member] Debt Instrument [Axis] Period One [Member] Period Two [Member] Period Three [Member] Period Four [Member] Period Five [Member] First Installment [Member] Second Installment [Member] Debt Instrument, Redemption, Period [Axis] Debt Instrument, Redemption, Period One [Member] Debt Instrument, Redemption, Period Two [Member] Debt Instrument, Redemption, Period Three [Member] Subsequent Event Type [Axis] Subsequent Event [Member] Period Six [Member] Period Seven [Member] Revision of Prior Period [Axis] Previously Reported [Member] Revision of Prior Period, Adjustment [Member] Income Tax Authority, Name [Axis] Internal Revenue Service (IRS) [Member] State and Local Jurisdiction [Member] Tax Period [Axis] Tax Year 2018 [Member] Tax Year 2017 [Member] Domestic Tax Authority [Member] Income Statement Location [Axis] Cost of Sales [Member] Selling, General and Administrative Expenses [Member] Award Type [Axis] Restricted Stock Units (RSUs) [Member] Performance Shares [Member] Vesting [Axis] Share-Based Payment Arrangement, Tranche One [Member] Share-Based Payment Arrangement, Tranche Two [Member] Plan Name [Axis] Performance Equity Plan 2009 [Member] Long Term Incentive Plan 2016 [Member] Share-Based Payment Arrangement, Option [Member] Restricted Stock [Member] Concentration Risk Benchmark [Axis] Revenue Benchmark [Member] Concentration Risk Type [Axis] Customer Concentration Risk [Member] Customer [Axis] Customer One [Member] Customer Two [Member] Customer Three [Member] Customer Four [Member] Accounts Receivable [Member] Contract Assets [Member] Cover [Abstract] Document Type Amendment Flag Amendment Description Document Registration Statement Document Annual Report Document Quarterly Report Document Transition Report Document Shell Company Report Document Shell Company Event Date Document Period Start Date Document Period End Date Document Fiscal Period Focus Document Fiscal Year Focus Current Fiscal Year End Date Entity File Number Entity Registrant Name Entity Central Index Key Entity Primary SIC Number Entity Tax Identification Number Entity Incorporation, State or Country Code Entity Address, Address Line One Entity Address, Address Line Two Entity Address, Address Line Three Entity Address, City or Town Entity Address, State or Province Entity Address, Country Entity Address, Postal Zip Code Country Region City Area Code Local Phone Number Extension Written Communications Soliciting Material Pre-commencement Tender Offer Pre-commencement Issuer Tender Offer Title of 12(b) Security No Trading Symbol Flag Trading Symbol Security Exchange Name Title of 12(g) Security Security Reporting Obligation Annual Information Form Audited Annual Financial Statements 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 Elected Not To Use the Extended Transition Period Document Accounting Standard Other Reporting Standard Item Number Entity Shell Company Entity Public Float Entity Bankruptcy Proceedings, Reporting Current Entity Common Stock, Shares Outstanding Documents Incorporated by Reference [Text Block] ICFR Auditor Attestation Flag Document Financial Statement Error Correction [Flag] Document Financial Statement Restatement Recovery Analysis [Flag] Auditor Firm ID Auditor Name Auditor Location Statement of Financial Position [Abstract] ASSETS Current Assets: Cash Accounts receivable, net Insurance recovery receivable Contract assets, net Inventory Refundable income taxes Prepaid expenses and other current assets Total Current Assets Operating lease right-of-use assets Property and equipment, net Deferred tax asset Goodwill Other assets Total Assets LIABILITIES AND SHAREHOLDERS’ EQUITY Current Liabilities: Accounts payable Accrued expenses Litigation settlement obligation Contract liabilities Loss reserve Current portion of line of credit Current portion of long-term debt Operating lease liabilities Income taxes payable Total Current Liabilities Line of credit, net of current portion Long-term operating lease liabilities Long-term debt, net of current portion Total Liabilities Commitments and Contingencies (see note 16) Shareholders’ Equity: Common stock - $.001 par value; authorized 50,000,000 shares, 12,771,434 and 12,506,795 shares, respectively, issued and outstanding Additional paid-in capital Accumulated deficit Total Shareholders’ Equity Total Liabilities and Shareholders’ Equity Common stock, par value (in dollars per share) Common stock, authorized Common stock, issued Common stock, outstanding Income Statement [Abstract] Revenue Cost of sales Gross profit Selling, general and administrative expenses Income from operations Interest expense Income before benefit for income taxes Benefit from income taxes Net income Income per common share-basic Income per common share-diluted Shares used in computing income per common share: Basic Diluted Statement [Table] Statement [Line Items] Beginning balance, value Beginning balance (in shares) Net income Issuance of common stock upon settlement of restricted stock, net Issuance of common stock upon settlement of restricted stock, net (in shares) Stock-based compensation expense Shares withheld for tax withholdings Ending balance, value Ending balance (in shares) Statement of Cash Flows [Abstract] Cash flows from operating activities: Adjustments to reconcile net income to net cash provided by operating activities: Depreciation and amortization Amortization of debt issuance costs Stock-based compensation expense Deferred income taxes Bad debt expense Changes in operating assets and liabilities: Decrease in accounts receivable Decrease (increase) in insurance recovery receivable Increase in contract assets Decrease in inventory Decrease (increase) in prepaid expenses and other current assets Decrease in operating right-of-use assets Increase (decrease) in accounts payable and accrued expenses (Decrease) increase in litigation settlement obligation (Decrease) increase in contract liabilities Decrease in lease liabilities Decrease in loss reserve Increase in income taxes payable Net cash provided by operating activities Cash flows from investing activities: Purchase of property and equipment Net cash used in investing activities Cash flows from financing activities: Principal payments on line of credit Principal payments on long-term debt Proceeds from insurance financing obligation Repayments of insurance financing obligation Taxes paid related to net share settlement of equity awards Debt issuance costs Net cash used in financing activities Net increase (decrease) in cash Cash at beginning of year Cash at end of year Supplemental disclosure of cash flow information: Cash paid during the year for interest Cash paid for income taxes Accounting Policies [Abstract] PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES Revenue from Contract with Customer [Abstract] REVENUE Contract Assets And Liabilities CONTRACT ASSETS AND LIABILITIES Receivables [Abstract] ACCOUNTS RECEIVABLE Inventory Disclosure [Abstract] INVENTORY Property, Plant and Equipment [Abstract] PROPERTY AND EQUIPMENT Goodwill and Intangible Assets Disclosure [Abstract] GOODWILL Debt Disclosure [Abstract] LINE OF CREDIT DEBT Leases LEASES Income Tax Disclosure [Abstract] INCOME TAXES Payables and Accruals [Abstract] ACCRUED EXPENSES Share-Based Payment Arrangement [Abstract] STOCK-BASED COMPENSATION Retirement Benefits [Abstract] EMPLOYEE BENEFIT PLAN Risks and Uncertainties [Abstract] MAJOR CUSTOMERS Commitments and Contingencies Disclosure [Abstract] COMMITMENTS AND CONTINGENCIES Basis of Presentation and Principles of Consolidation Use of Estimates Revenue Recognition Government Contracts Cash Allowance for Credit Losses Inventory Property and Equipment Leases Goodwill Long-Lived Assets Fair Value Earnings per Share Income Taxes Stock-Based Compensation Research and Development Prior Period Reclassification Recently Issued Accounting Standards The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method: Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022: Schedule of contract assets and liabilities Accounts receivable consists of trade receivables as follows: The components of inventory consist of the following: The components of property and equipment consist of the following: The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows: Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows: The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022: The (benefit) for income taxes consists of the following: The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows: The components of deferred income tax assets and liabilities are as follows at December 31: Accordingly, we have restated the balances as previously reported, where needed, as follows: Accrued expenses consists of the following: Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: The following table summarizes activity related to outstanding RSUs The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023: The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023: FDIC Insured balance Cash uninsured amount Operating lease liabilities Incremental shares used in calculation of diluted income per common share Disaggregation of Revenue [Table] Disaggregation of Revenue [Line Items] Net adjustments Remaining performance obligations Schedule Of Contract Assets And Liabilities Contract assets Contract liabilities Increase in contract assets Decrease in contract liabilities Revenue recognized that was included in contract liabilities Billed receivables Less: allowance for expected credit losses    Total accounts receivable, net Raw materials Work in progress Finished goods (Includes completed components)        Gross inventory        Inventory reserves        Inventory, net Property, Plant and Equipment [Table] Property, Plant and Equipment [Line Items] Property, Plant and Equipment, Gross Estimated useful life Less accumulated depreciation and amortization Property and equipment, net Impairment Effects on Earnings Per Share [Table] Impairment Effects on Earnings Per Share [Line Items] Depreciation expenses Schedule of Restructuring and Related Costs [Table] Restructuring Cost and Reserve [Line Items] Schedule of Long-Term Debt Instruments [Table] Debt Instrument [Line Items] Line of credit facility, maximum borrowing capacity Debt instrument, face amount Line of Credit Facility, Expiration Date Repayment of principal under agreement Repayment of principal installment under agreement Debt Instrument, Periodic Payment, Principal Debt Instrument, Basis Spread on Variable Rate Maximum leverage ratio Losses Incurred Under Agreement Reserve Under Agreement Expenses Under Agreement Capitalized fee first installment Minimum debt service coverage ratio future periods Maximum leverage ratio, period 1 Maximum leverage ratio, period 2 Maximum leverage ratio, period 3 Maximum leverage ratio, period 4 Net income required under agreement Minimum adjusted EBITDA Line of credit oustanding 2024 2025 Total Line of Credit Facility [Table] Line of Credit Facility [Line Items] Amendment fee Prime rate Plus Commitment and agent fees Payments of debt issuance costs Debt issuance costs included in other assets Financing leases and notes payable Financing leases and notes payable current Debt Instrument, Interest Rate, Stated Percentage Interest rate Aggregate principal balance Future Minimum Lease Payments Under Non-cancellable Operating Leases As Of December 31 2023 Were As Follows 2024 2025 2026 2027 2028 Total undiscounted operating lease payments Less imputed interest Present value of operating lease payments Following Table Sets Forth Rou Assets And Operating Lease Liabilities As Of December 31 2023 And 2022 Assets ROU assets, net Liabilities Current operating lease liabilities Total lease liabilities Operating lease expense Weighted average remaining lease term operating leases Weighted average discount rate for its operating leases Current: State Deferred:     Federal State Total Taxes computed at the federal statutory rate State income tax, net Research and development tax credit Change in valuation allowance Other Accrued loss reserve adjustment Permanent differences Benefit for income taxes Deferred Tax Assets: Allowance for credit losses Capitalized R&D Credit carryforwards Inventory reserve Accrued payroll Loss contracts reserve Restricted stock Acquisition costs Lease liability Accrued legal Disallowed interest expense Net operating loss carryforward Other Deferred tax assets Valuation allowance Deferred Tax Liabilities: Prepaid expenses Revenue recognition Property and equipment ROU asset Deferred tax liabilities Net deferred tax assets Deferred tax assets Deferred tax liabilities Net deferred tax assets Operating Loss Carryforwards [Table] Operating Loss Carryforwards [Line Items] Net operating losses Offset taxable income for regular tax purpose (percent) NOL description Valuation allowance released Valuation allowance balance Income tax benefit Effective tax benefit rate Accrued purchases Accrued payroll Accrued insurance Accrued interest Accrued professional fees and other accrued expenses    Total Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] Total stock-based compensation expense Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Non vested January 1, 2022 Non vested January 1, 2022 Granted Granted Vested Vested Forfeited Forfeited Non vested December 31, 2022 Non vested December 31, 2022 Weighted average remaining amortization period Vesting percentage Unamortized stock-based compensation costs Recognized tax benefits on stock-based compensation Shahes reserved for issuance Shares available for grant Increase in number of shares reserved for issuance Defined Benefit Plan, Plan Assets, Contributions by Employer Concentration Risk [Table] Concentration Risk [Line Items] Concentration Risk, Percentage Attorneys' fees Settlement amount Directors and officers insurance retention amount Covered settlement amount The amount of increase (decrease) in loss reserve. The increase (decrease) during the reporting period in litigation settlement obligation. The entire disclosure of contract assets and contract liabilities from contract with customer. Bank United [Member] Term loan [Member] Revolving Loan and Term Loan [Member] Period One [Member] Period Two [Member] Period Three [Member] The element represents amendment fee. First Installment [Member] Second Installment [Member] The element represents net income required under agreement. Customer One. Customer Two. Customer Three. Contract Assets [Member] Customer Four. Tabular disclosure of lessee operating leases. The element represents directors and officers insurance retention amount. Minimum debt service coverage ratio for trailing four fiscal quarter periods. Period Four [Member] Period Five [Member] Proceeds from insurance financing obligation. Repayments of insurance financing obligation. Government subcontracts. Prime government contracts. Commercial contracts. Favorable adjustments. Unfavorable adjustments. This member stands for welding metallurgy inc member. The element represents repayment of principal under agreement. The element represents repayment of principal installment under agreement. This member stands for prime rate one member. This member stands for prime rate two member. This member stands for prime rate three member. This member stands for prime rate four member. Maximum leverage ratio under Credit Agreement. The element represents losses incurred under agreement. The element represents reserve under agreement. The element represents expenses under agreement. Maximum leverage ratio, period 1. Maximum leverage ratio, period 2. Maximum leverage ratio, period 3. Maximum leverage ratio, period 4. The element represents minimum adjusted ebitda. Period Six [Member] Period Seven [Member] Amount 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 loss reserve adjustment. The element represents deferred tax assets accrued payroll. The amount of deferred tax assets acquisition costs. The amount of deferred tax assets lease liability. The element represents deferred tax assets accrued legal. The amount of deferred tax assets disallowed interest expense. The element represents deferred tax liabilities right of use asset. The element represents offset taxable income for regular tax purpose percent. Performance Equity Plan 2009. Long Term Incentive Plan 2016. Tabular disclosure of estimates at completion adjustments to gross profit. Estimates at Completion adjustments to gross profit. Increase (decrease) in contract liability during the period. Increase (decrease) in contract asset during the period. Disclosure of accounting policy for government contracts. Assets, Current Assets Liabilities, Current Liabilities [Default Label] Equity, Attributable to Parent Liabilities and Equity Gross Profit Operating Income (Loss) Interest Expense Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation Share-Based Payment Arrangement, Noncash Expense Increase (Decrease) in Deferred Income Taxes Increase (Decrease) in Accounts Receivable Increase (Decrease) in Insurance Settlements Receivable Increase (Decrease) in Contract with Customer, Asset Increase (Decrease) in Inventories Increase (Decrease) in Prepaid Expense and Other Assets Increase (Decrease) in Leasing Receivables Net Cash Provided by (Used in) Operating Activities Payments to Acquire Property, Plant, and Equipment Net Cash Provided by (Used in) Investing Activities Repayments of Lines of Credit Repayments of Long-Term Debt Repayments of Insurance Financing Obligation Payment, Tax Withholding, Share-Based Payment Arrangement Net Cash Provided by (Used in) Financing Activities Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations Cash and Cash Equivalents, Policy [Policy Text Block] Inventory, Policy [Policy Text Block] Lessee, Leases [Policy Text Block] Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block] Contract with Customer, Liability Increase (Decrease) in Contract Liability Accounts Receivable, Allowance for Credit Loss, Current Inventory, Gross Inventory Valuation Reserves Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Long-Term Debt Lessee, Operating Lease, Liability, to be Paid, Year One Lessee, Operating Lease, Liability, to be Paid, Year Two Lessee, Operating Lease, Liability, to be Paid Lessee, Operating Lease, Liability, Undiscounted Excess Amount Deferred State and Local Income Tax Expense (Benefit) Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount Income Tax Reconciliation Loss Reserve Adjustment Deferred Tax Assets, Other Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount Accrued Salaries, Current Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Amount EX-101.PRE 13 cvu-20231231_pre.xml XBRL PRESENTATION FILE GRAPHIC 14 cpi10k123123001.jpg GRAPHIC begin 644 cpi10k123123001.jpg M_]C_X 02D9)1@ ! @ 9 !D #_[ 11'5C:WD 0 $ 9 _^X #D%D M;V)E &3 ?_; (0 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! M 0$! 0$! 0$! 0$! 0(" @(" @(" @(" P,# P,# P,# P$! 0$! 0$" 0$" M @(! @(# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# M P,# P,# P,#_\ $0@ *0!X P$1 (1 0,1 ?_$ *< $#!0$! M ('" D P0&"@$% 0 !P$! 0(#! 4'!@@0 $# M P,# @0%! $% $" P4$!@< $0@A$@DQ$T%1,A1Q@2(5"F&1P1;10B,E M%QD1 $"! 0$ P4' 0<% $" P 1! 4A,1(&05$3!V%Q(H&1H;$R\,'1 M0B,4%6+Q4G*"DJ+2,U,E%A?_V@ , P$ A$#$0 _ .^LKW7Z+^&VY W_ WV MWTRXS+U*<,O9^,*-.!Z@J#4I6WRZ'8'8$Z/4KT](33QGAY024I"QJ5C =ZB$ MD=Y[?J .WIZ?/\ +0<*FSU%!,O."6@]:8.$>)<*TI4GN7L2"D;>H^(Z]1_4 M=--Z2ZYU65@H_P 1(@G2IDXS5Y9QYWN;_0YZ]>G0?T_/3Y1I$UE!)_O'Y1'- M0#ATGOC!=W0DGL/Q&X!'R)WVV!VTAY]BC0%N2TD\,H<)-0G0@E*AP.<$E?0' MN^OZ>H&ZOB/Q&VFS430'64^DPL(.GIK/J$9*.J?[ZD))4 3G!@*&"LX\*MTD M]1\!\_RT2I:3,R'.#RX3C$VW7]:]_EZ_WTTFLI9]+4-?GC!]96G3HQ@%ND*5 MU4$@^H!*1^8W&EMK(5TE(<41^:6!A'Z\]*&DF+3KSVZ0CKNH#;;N.Q^/YZBU M2:XG]$M!.K)8 'OY\H-M-0M4BE*!+.+RRKVUD%P$I!45)[0"#MMOMZ[_ U* M6\M,D:-:O]L.(DTO]0SB$[R+^0R2X5

$\+*2-6O$F1XK(=+EV$8"5KIXU^ M6MF&A+KJ4)>2JG_UR1J"Z%=I4MGW4].NM5V-L6IW78Z^L896'6)2*4S )052 MGARQY QQ&Y;^U:K@TCJ@)7PG+\WPPE$GN/N2F",G5:(O'.7K'O:46TZ\W%6[ M/4$G*?;,A)-UU4-1S-S9"II*KH(M^XD0R+>HX MRFIGFZ=]5?5S*4NK$I(.,QS,>&5_DA)<4#97!OVTK4$=URH"W$[]#M]F$ M@]NWJ-,*:[&,I*4BX>Q EPF"H>,3R=T!22XTC5/#U-??]T*)BNXO/U07Y:M M3ES%7#2X\:+EJ6EO:(A;X7#SR(!YY(KI* KJ.A4@R%(QW%#+H[7#J%>F>RCM MH/\ &FX?NY?G0"D8'+U2S]\2*9W'^E1-BT>0H3N#EPW51H>#[J3MJK<_^($^ENYI0!B2,/$@:L!YP8/= M=L#J.4JE9"6D ^\3^^$9QUY,O)%A;GUB#ASS:QQ@BOWVP[GV^3NO:CSR@FJ4A0="C) M("92!.!F3CQX1'L]^W'1;E;MF[0RE:V>HG04XD$B60GEPA<[V\C7):&\R=I\ M&Z15@*P+,ST#0U*7('OO-+%59#L_4H3,E[V^UVN;WZI[@D;#7,4VR:)>P%;D M3/K(;).)EA/AEPY1,?W'6G>*;.Y(-K=],AC(*QF<\N&4=!AJ$-I6HN(2A&Y) M/0(0.@)W^6VLEU(4@*09@\1CEG*4:43J7T43+_+[<(1#/O(_#O&W&LUE?,UZ MQMGV9"4;]2MZI)AC0Z:ZHJ!G)*4 M@_ZI2]H$2NCNVI=+X<:80K\BI+*?,@$'V0XFUL(< MHG4UMW#U=555)+:K"R$I(>#J^J3K<^U7=,[^U]UKE/U!F> & EPPY^.,:/2VENE MI4MI #ASXGQQES\.4JR,P,@ <#Y1VK.N * M<'>@+*OTI6ZT/0 ?%73T]/77B-EUV:P\DR2HRR^G,'VXYQZ!*V0X@K)U"9S' M/SC'-93-!3:WVPZE.ZTE]A"4 ]>Y14X $[_'0=0Z:92@,#EEXP@W*E=J.@D^ ML'F/QCBP\DU#DV>\WUCQ6$)R'M?,%=,8FH,:W-JDA*MQZ==>P.VBMOT7:.NN6YVWW[4&7=339(4<0)3F./C&'[LH;K6;L2 MJQ+;:J@H>IS$3QGAC[(EFM*!M MN#OOZ;ZR1C<'9(TSK[]MN@25K <'I )XE?R,=@;9W151-,BNMQ6!,DMJGE+ M,)QA(L5^(_FID3G#C3F5S5Y'X^N>X,8S4'.TD?C2 >HE3W^OBI,? O4K]-21 ML7!I=J2M2FT%\J)'IMJZO?1L\90J11V=CV!8+0\BW-.G_8<)6O)(D>(O&*@?==MZ@;A M)-(C[_O5-0RER:JZRK9#K;;H**AP;@>T DZWN6XVSM72/=NMME3MQJAJJGU8 MA*M.DMMC"4]1DJ7">J<@ 6U30$^D88RXF0PSSYSF0[/R1>;# MAUXOEP=EY*3=F2\H2*J%\X;P[04HYI4DF>).HX9J5B3]L8T>D932,AMM4@,@!E/E@![H M^KSH\S/'?@HYQNMJXK,OG+&6^4$:U.V)AK'E9;(O&(MIZ'HI7]^N@3DO01\5 M'O+KQ3M**R'WT+ Z#?2B>A-HF>GA(?.%) G(CS,_EA#?;I\_F/,4XYNW,'( M?A7RHP'B2W8%JLAKUON-LYVBR!\<66=F/ASS!PRC+-?0TT%+7G:MNNI1 M05":=^IFQ04,T_(5L3%TE2BH><;3VA@+7Z(5I?7GX?;R@M*%8J^WQA4(#^0S MCS*=N7SE+CYP2YGY[P!8\Q=$/59[M.T[6C;"EFK+"W+EE:14W.TSZ(>+0PM2 MW7@@@(]!N-UHTSUK,E:9>?X?"#G-&DY X#G$C'C(\B.,_)UQYJN2.(L>9%Q] M8B+WG[%C&,BT4=2UL[46R*5NNEHIR+JJNDJ(U+]1[.X7W)<;4D@$:<44J(EC M(?89XP%%1++CKSOE8.ZL@5=WV9DBUR%0U^6%*B.D4%+5&S3) MF*;;VY)NC;HD>QW%):/4'<#7?[-[B7C9I0S1GK4K:5C0M2DCUF9G+G''[AV? M1;E)%14.M*20< C"64IC[Q#./_A#!K6IQ7.CF%NI;BUE.1+@ *UK*UD(_=RE M()/SZZZQGO4RW3*:>V[9W=6:BMR8_P!OSBJJNW8J'6U"Y5?3;3(2".9Y&4;S MBOPAXSL;(%NWS>'*#E#E:/M:2IY:FLRYLDS[%O3%52/MU#+4XD22UUL>'FQW MT^_8X.BM5E[[MT]\M7\8U9[;2)_[C:EDY$92 ,N&.<2Z'8=/1U'6565"R-LR-^V%L5*K19#5!25)2"\I%0@; M.;=?@/75+0=Q+I;]M/;6;DJA?0I)Q/YLS++.)M1LZWU-S3HVWU65;S=/3RJYK(Q!3F)<<.4.(94A0#:P&YXQ ;S2 MPOPSXI\N*'R>9JS9=5+DR(D8U^R<#VR]02MQ9%N6GM=ZV(>W+6M5M:IJ157I M!6\\AHM-'JHCION.S[]N3,CASC0,#<>N3OE R_#\I^?-NS>-N)=N MRQFL!<(KB^[CU3%51,N(BKKRS;998;KBTXDU#::L*-0H("$AK<%59N2T[%M2 MK/MAQ+MX<;FNN$@OUJGTTD?W4X"6/JF8706VY[GKTW2[ZFJ8G!J9(D!R)F-1 MS,OC$LO,/"7(K*>#/_4'$'-]O\49BIZ>E)&K J*53CFU'4'N&XZ%99)'I49^<*AMMY_QJ.;F M0LVWUR(OSG?QSRGD^^X""M)ZIS7Q4HLNVS:=J6Q0L1L!;]B6S<\L8^U:..HJ M=+2?M>P*1N"G=#>#W./(/-&+AY.N16/.3_$GCSB"@LO"G&S M&UKSV'[5B<@,P47;:\CREO6W41<70JBJ2C>$:&*@JI$!ED$MMD+,-^Z!#):W M^,'GV1QAF3&E3R_L1=YW-E,5V)N1$S!9&O/,MF<;JBGE6ICCI7RMQSSS<;;M M0IVA?+T:XR:M:'DN?]GM:T73\H$.(@O!?Y'I##=B\0,D^3JQJ#@Y$UT'&7W@ MC _':+PY*7KCZAD$R$Q9KMXVW5(DE,W.H*_<5N=QK2M2WBKKN71!PU$ P/&. MG+$6*,;X.L&V,48BL:W<:8XLB'I8*TK'M*(H82WH*(HD^TPU14,:TU2(6\!W MN*V+JUJ*EDJ))6EL()(.'*<",FZIZZH?<06.IJ\OT;_^-G+4B$]^R"E!_?Y> M/*B#OU (&IB$,J/J7IGGA.(KK:\3BLF$9DLN\@:-Q:8[B+>V_GW_;>!UQUVX.WN\B<'T0]=QW#[Y_97]]26[580@-FM0$#AT7)?.&G:NXG! M+"O]0_XPG$YGKR&@J%M>/V"]A&_L"=Y.XV74]>GEC"F6?\PA,Y;._E\+H5;_ _!#;!![T3O(V-=J.[T;[% MQSS;7:D?5O\ EJQ;L_;DD%ZZ5B>6/OA$[HG//SE%3 MMMP>..&''*AK2MI5\/W7/9$K8^EJ1[2RB,8?D%.55(C=:2AI 43MW'5U04O: M.UN_NGZBIK@G$-J:4F9' S(!!Y'"*>M["2\E'JB\;V14)2VBFJ[4M.I+B6ZZC0VH-+6 EHK*D MH"COJNW9W!9KZ?\ CMF4O\;2 &:DD)49@ID=$A(#Q,YG*+2Q[612JZ]>L.5$ MAF">/"4HF@13(^I8*E]W?OVIW!V&VP /9M\AZ:R+34*.E]>L@\,I_*.P M0TVV?2D SX1DAI&_<1OO_P!)'3<[;GTZ>FK%(PQQ)A1]4IXR@_;1L!V)Z$D= M!ZGU/YZ4,,H$%L -@ !\MNG]M"! +:;6-E)&VQ'RW!.Y'X$Z$"+?VK!)44;J M*@HJ/J5#?8D_,;G0@1>[$[=NW0;;?,;>AW^8T4@3,B! H:0V5%.^ZSNH[_4= M@-S_ %V&A(#*!!GTT<$TB)4 OTTAS*$JR@!ZJ_#_. MG'/I]L-H^DP(_P _\Z88_/"D_4(NCX_B?\:CM_4O_&?NAXP>IB XML 16 R1.htm IDEA: XBRL DOCUMENT v3.24.1
Cover - USD ($)
12 Months Ended
Dec. 31, 2023
Apr. 04, 2024
Jun. 30, 2023
Cover [Abstract]      
Document Type 10-K    
Amendment Flag false    
Document Annual Report true    
Document Transition Report false    
Document Period End Date Dec. 31, 2023    
Document Fiscal Period Focus FY    
Document Fiscal Year Focus 2023    
Current Fiscal Year End Date --12-31    
Entity File Number 1-11398    
Entity Registrant Name CPI AEROSTRUCTURES, INC.    
Entity Central Index Key 0000889348    
Entity Tax Identification Number 11-2520310    
Entity Incorporation, State or Country Code NY    
Entity Address, Address Line One 91 Heartland Blvd.    
Entity Address, City or Town Edgewood    
Entity Address, State or Province NY    
Entity Address, Postal Zip Code 11717    
City Area Code (631)    
Local Phone Number 586-5200    
Title of 12(b) Security Common Stock, $.001 par value    
Trading Symbol CVU    
Security Exchange Name NYSEAMER    
Entity Well-known Seasoned Issuer No    
Entity Voluntary Filers No    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Non-accelerated Filer    
Entity Small Business true    
Entity Emerging Growth Company false    
Entity Shell Company false    
Entity Public Float     $ 46,445,647
Entity Common Stock, Shares Outstanding   12,854,428  
ICFR Auditor Attestation Flag false    
Document Financial Statement Error Correction [Flag] true    
Document Financial Statement Restatement Recovery Analysis [Flag] false    
Auditor Firm ID 49    
Auditor Name RSM US LLP    
Auditor Location New York, New York    

XML 17 R2.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED BALANCE SHEETS - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Current Assets:    
Cash $ 5,094,794 $ 3,847,225
Accounts receivable, net 4,352,196 4,857,772
Insurance recovery receivable 3,600,000
Contract assets, net 35,312,068 27,384,540
Inventory 1,436,647 2,493,069
Refundable income taxes 40,000 40,000
Prepaid expenses and other current assets 678,026 975,830
Total Current Assets 46,913,731 43,198,436
Operating lease right-of-use assets 4,740,193 6,526,627
Property and equipment, net 794,056 1,124,556
Deferred tax asset 19,938,124 6,574,463
Goodwill 1,784,254 1,784,254
Other assets 189,774 238,744
Total Assets 74,360,132 59,447,080
Current Liabilities:    
Accounts payable 10,487,012 8,029,996
Accrued expenses 10,275,695 7,344,590
Litigation settlement obligation 3,600,000
Contract liabilities 5,937,629 6,001,726
Loss reserve 337,351 576,549
Current portion of line of credit 2,400,000 1,200,000
Current portion of long-term debt 44,498 1,719,766
Operating lease liabilities 1,999,058 1,817,811
Income taxes payable 30,107 11,396
Total Current Liabilities 31,511,350 30,301,834
Line of credit, net of current portion 17,640,000 19,800,000
Long-term operating lease liabilities 3,100,571 5,077,235
Long-term debt, net of current portion 26,483 70,981
Total Liabilities 52,278,404 55,250,050
Shareholders’ Equity:    
Common stock - $.001 par value; authorized 50,000,000 shares, 12,771,434 and 12,506,795 shares, respectively, issued and outstanding 12,771 12,507
Additional paid-in capital 73,872,679 73,189,449
Accumulated deficit (51,803,722) (69,004,926)
Total Shareholders’ Equity 22,081,728 4,197,030
Total Liabilities and Shareholders’ Equity $ 74,360,132 $ 59,447,080
XML 18 R3.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares
Dec. 31, 2023
Dec. 31, 2022
Statement of Financial Position [Abstract]    
Common stock, par value (in dollars per share) $ 0.001 $ 0.001
Common stock, authorized 50,000,000 50,000,000
Common stock, issued 12,771,434 12,506,795
Common stock, outstanding 12,771,434 12,506,795
XML 19 R4.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income Statement [Abstract]    
Revenue $ 86,466,321 $ 83,335,764
Cost of sales 69,400,693 67,031,502
Gross profit 17,065,628 16,304,262
Selling, general and administrative expenses 10,758,624 11,410,067
Income from operations 6,307,004 4,894,195
Interest expense (2,455,214) (2,271,101)
Income before benefit for income taxes 3,851,790 2,623,094
Benefit from income taxes (13,349,414) (6,553,131)
Net income $ 17,201,204 $ 9,176,225
Income per common share-basic $ 1.40 $ 0.74
Income per common share-diluted $ 1.38 $ 0.74
Shares used in computing income per common share:    
Basic 12,311,219 12,389,890
Diluted 12,471,961 12,389,890
XML 20 R5.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) - USD ($)
Common Stock [Member]
Additional Paid-in Capital [Member]
Retained Earnings [Member]
Total
Beginning balance, value at Dec. 31, 2021 $ 12,336 $ 72,833,742 $ (78,181,151) $ (5,335,073)
Beginning balance (in shares) at Dec. 31, 2021 12,335,683      
Net income 9,176,225 9,176,225
Issuance of common stock upon settlement of restricted stock, net $ 171 171
Issuance of common stock upon settlement of restricted stock, net (in shares) 171,112      
Stock-based compensation expense 355,707 355,707
Ending balance, value at Dec. 31, 2022 $ 12,507 73,189,449 (69,004,926) $ 4,197,030
Ending balance (in shares) at Dec. 31, 2022 12,506,795     12,506,795
Net income 17,201,204 $ 17,201,204
Issuance of common stock upon settlement of restricted stock, net $ 264 264
Issuance of common stock upon settlement of restricted stock, net (in shares) 264,639      
Stock-based compensation expense 770,362 770,362
Shares withheld for tax withholdings (87,132) (87,132)
Ending balance, value at Dec. 31, 2023 $ 12,771 $ 73,872,679 $ (51,803,722) $ 22,081,728
Ending balance (in shares) at Dec. 31, 2023 12,771,434     12,771,434
XML 21 R6.htm IDEA: XBRL DOCUMENT v3.24.1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cash flows from operating activities:    
Net income $ 17,201,204 $ 9,176,225
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization 470,950 688,096
Amortization of debt issuance costs 103,304 133,997
Stock-based compensation expense 770,626 355,878
Deferred income taxes (13,363,661) (6,574,463)
Bad debt expense 72,099
Changes in operating assets and liabilities:    
Decrease in accounts receivable 505,576 37,843
Decrease (increase) in insurance recovery receivable 3,600,000 (750,000)
Increase in contract assets (7,927,528) (2,925,201)
Decrease in inventory 1,056,422 1,535,856
Decrease (increase) in prepaid expenses and other current assets 297,804 (350,755)
Decrease in operating right-of-use assets 1,786,434 1,270,141
Increase (decrease) in accounts payable and accrued expenses 5,107,211 (1,157,019)
(Decrease) increase in litigation settlement obligation (3,600,000) 596,741
(Decrease) increase in contract liabilities (64,097) 878,960
Decrease in lease liabilities (1,795,417) (1,131,135)
Decrease in loss reserve (239,198) (919,165)
Increase in income taxes payable 18,711 6,231
Net cash provided by operating activities 3,928,341 944,329
Cash flows from investing activities:    
Purchase of property and equipment (140,450) (40,789)
Net cash used in investing activities (140,450) (40,789)
Cash flows from financing activities:    
Principal payments on line of credit (960,000) (250,000)
Principal payments on long-term debt (1,719,766) (3,115,181)
Proceeds from insurance financing obligation 330,482
Repayments of insurance financing obligation (49,572)
Taxes paid related to net share settlement of equity awards (87,132)
Debt issuance costs (54,334)
Net cash used in financing activities (2,540,322) (3,365,181)
Net increase (decrease) in cash 1,247,569 (2,461,641)
Cash at beginning of year 3,847,225 6,308,866
Cash at end of year 5,094,794 3,847,225
Supplemental disclosure of cash flow information:    
Cash paid during the year for interest 2,454,065 1,792,858
Cash paid for income taxes $ 4,364 $ 25,291
XML 22 R7.htm IDEA: XBRL DOCUMENT v3.24.1
PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES
12 Months Ended
Dec. 31, 2023
Accounting Policies [Abstract]  
PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES

 

1.PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES

 

The Company consists of CPI Aerostructures, Inc. (“CPI”), Welding Metallurgy, Inc. (“WMI”) and Compac Development Corporation, a wholly owned subsidiary of WMI (collectively the “Company”).

 

CPI is a U.S. supplier of aircraft parts for fixed wing aircraft and helicopters in both the commercial and defense markets. CPI manufactures complex aerostructure assemblies, as well as aerosystems. Additionally, CPI supplies parts for maintenance, repair and overhaul (“MRO”) and kitting contracts.

 

An operating segment, in part, is a component of an enterprise whose operating results are regularly reviewed by the chief operating decision maker (the “CODM”) to make decisions about resources to be allocated to the segment and assess its performance. Operating segments may be aggregated only to a limited extent. The Company’s CODM, the Chief Executive Officer, reviews financial information presented on a consolidated basis for purposes of making operating decisions and assessing financial performance. The Company has determined that it has a single operating and reportable segment.

 

Basis of Presentation and Principles of Consolidation

 

The accompanying consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and applicable rules and regulations of the United States Securities and Exchange Commission (“SEC”). The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated in consolidation.

 

Use of Estimates

 

The preparation of financial statements in conformity with U.S. GAAP requires the use of estimates by management. Actual results could differ from these estimates.

 

Revenue Recognition

 

The Company follows Accounting Standards Codification Topic 606, “Revenue from Contracts with Customers” (“ASC 606”). In accordance with ASC 606, the Company recognizes revenue when it transfers control of a promised good or service to a customer in an amount that reflects the consideration it expects to be entitled to in exchange for the good or service. The majority of the Company’s performance obligations are satisfied over-time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. Under the over-time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred and an estimate of costs to complete and resulting total estimated costs at completion.

 

The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. This is known as the over time revenue recognition model. Under the over time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred as a percentage of total estimated costs at completion of the contract.

 

The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer; in most cases this will be based on shipping terms.

 

The majority of the Company’s revenues are from long-term contracts with the U.S. government and commercial contractors. The Company accounts for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. For the Company, the contract under ASC 606 is typically established upon execution of a purchase order either in accordance with a long-term customer contract or on a standalone basis.

 

To determine the proper revenue recognition for our contracts, we must evaluate whether two or more contracts should be combined and accounted for as a single contract, and whether the combined or single contract should be accounted for as one performance obligation or more than one performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or to separate a contract into multiple performance obligations could change the amount of revenue and profit recorded in a period. A performance obligation is a promise within a contract to transfer a distinct good or service to the customer in exchange for payment and is the unit of account for recognizing revenue. The Company’s performance obligations in its contracts with customers are typically the sale of each individual product contemplated in the contract or a single performance obligation representing a series of products when the contract contains multiple products that are substantially the same. The Company has elected to account for shipping performed after control over a product has transferred to a customer as fulfillment activities. When revenue is recognized in advance of incurring shipping costs, the costs related to the shipping are accrued. Shipping costs are included in costs of sales. The Company provides warranties on many of its products; however, since customers cannot purchase such warranties separately and they do not provide services beyond standard assurances, warranties are not separate performance obligations.

 

 

A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when or as the performance obligation is satisfied. For contracts with more than one performance obligation, the Company allocates the transaction price to each performance obligation based on its estimated standalone selling price. When standalone selling prices are not available, the transaction price is allocated using an expected cost plus margin approach as pricing for such contracts is typically negotiated on the basis of cost.

 

The contracts with the U.S. government typically are subject to the Federal Acquisition Regulation (“FAR”), which provides guidance on the types of costs that are allowable in establishing prices for goods and services provided under U.S. government contracts. The pricing for commercial contractors are based on the specific negotiations with each customer and any taxes imposed by governmental authorities are excluded from revenue. The transaction price is primarily comprised of fixed consideration as the customer typically pays a fixed fee for each product sold. The Company does not adjust the amount of revenue to be recognized under a customer contract for the effects of the time value of money when the timing difference between receipt of payment and transferring the good or service is less than one year.

 

The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. The Company uses the cost-to-cost input method to measure progress for its performance obligations because it best depicts the transfer of control to the customer which occurs as the Company incurs costs on its contracts.

 

The Company generally utilizes the portfolio approach to estimate the amount of revenue to recognize for its contracts and groups contracts together that have similar characteristics. Contract gross profit margins are calculated using the estimated costs for either the individual contract or the portfolio as applicable. Significant judgment is used to determine which contracts are grouped together to form a portfolio. The portfolio approach is utilized only when the result of the accounting is not expected to be materially different than if applied to individual contracts.

 

The Company’s contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new or changes the existing enforceable rights and obligations. The effect of a contract modification on the transaction price, and the measure of progress for the performance obligation to which it relates, are recognized prospectively when the remaining goods or services are distinct and on a cumulative catch-up basis when the remaining goods or services are not distinct.

 

The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer.

 

Certain contracts contain forms of variable consideration, such as price discounts and performance penalties. The Company generally estimates variable consideration using the most likely amount based on an assessment of all available information (i.e., historical experience, current and forecasted performance) and only to the extent it is probable that a significant reversal of revenue recognized will not occur when the uncertainty is resolved.

 

In applying the cost-to-cost input method, the Company compares the actual costs incurred relative to the total estimated costs expected at completion to determine its progress towards satisfying its performance obligation and to calculate the corresponding amount of revenue to recognize. For any costs incurred that do not depict the Company’s performance in transferring control of goods or services to the customer, the Company excludes such costs from its input method measure of progress as the amounts are not reflected in the price of the contract. Costs that are inputs to the satisfaction of a performance obligation include labor, materials and subcontractors’ costs, other direct costs and an allocation of indirect costs.

 

Changes to the original estimates may be required during the life of the contract. Estimates are reviewed quarterly and the effect of any change in the total estimated costs expected at completion for a contract is reflected in revenue in the period the change becomes known. ASC 606 involves considerable use of estimates and judgment in determining revenues, costs and profits and in assigning the amounts to accounting periods. For instance, management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation, execution by our subcontractors, the availability and timing of funding from the customer, and overhead cost rates, among other variables. The Company continually evaluates all of the factors related to the assumptions, risks and uncertainties inherent with the application of the cost-to-cost input method; however, it cannot be assured that estimates will be accurate. If estimates are not accurate, or a contract is terminated which will affect estimates at completion, the Company is required to adjust revenue in the period the change is determined.

 

 

When changes are required for the estimated total revenue on a contract, these changes are recognized on a cumulative catch-up basis in the current period. A significant change in one or more estimates could affect the profitability of one or more of our performance obligations. If estimates of total costs to be incurred exceed estimates of total consideration the Company expects to receive, a provision for the remaining loss on the contract is recorded in the period in which the loss becomes evident.

 

Contract acquisition costs are those incremental costs that the Company incurs to obtain a contract with a customer that it would not have incurred if the contract had not been obtained. The Company does not typically incur contract acquisition costs or contract fulfillment costs that are subject to capitalization in accordance with the guidance in Accounting Standards Codification Subtopic 340-40, “Other Assets and Deferred Costs—Contracts with Customers.”

 

Government Contracts

 

The Company’s government contracts are subject to the procurement rules and regulations of the U.S. government. Many of the contract terms are dictated by these rules and regulations. Specifically, cost-based pricing is determined under the FAR, which provides guidance on the types of costs that are allowable in establishing prices for goods and services under U.S. government contracts. For example, costs such as those related to charitable contributions, advertising, interest expense, and public relations are unallowable, and therefore not recoverable through sales. During and after the fulfillment of a government contract, the Company may be audited in respect to the direct and allocated indirect costs attributable thereto. These audits may result in adjustments to the Company’s contract cost, and/or revenue.

 

When contractual terms allow, the Company invoices its customers on a progress basis.

 

 

Cash

 

The Company maintains its cash in multiple financial institutions. The balances are insured by the Federal Deposit Insurance Corporation up to the limit of $250,000. From time to time, the Company’s balances may exceed these limits. As of December 31, 2023 and 2022, the Company had $4,943,628 and $3,763,608, respectively, of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly credit worthy.

 

Allowance for Credit Losses

 

The Company maintains an allowance for credit losses on accounts receivable and contract assets. The adequacy of the allowance is assessed quarterly through consideration of factors such as age of the receivable and identification of any anticipated collectability issues by account, if applicable. The Company writes off accounts when they are deemed to be uncollectible.

 

Inventory

 

Inventories, which consist of raw materials, work in progress and finished goods, are reported at lower of cost or net realizable value using the weighted average cost method. The Company capitalizes labor, material, subcontractor and overhead costs as work-in-process for contracts where control has not yet passed to the customer. The Company regularly reviews inventory quantities on hand, future purchase commitments with its suppliers, and the estimated usability for its inventory. If the Company’s review indicates a reduction in usability below carrying value, it reduces its net inventory to its net realizable value.

 

Property and Equipment

 

Property and equipment are carried at cost, net of accumulated depreciation. Depreciation is computed utilizing the straight-line method over the estimated useful life of the asset. Leasehold improvements depreciation is computed over the shorter of the lease term or estimated useful life of the asset. Additions and improvements that extend the useful lives are capitalized, while repairs and maintenance are expensed as incurred. 

 

Leases

 

The Company leases a building and various equipment. Under ASC 842, Leases (“ASC 842”), at contract inception we determine whether the contract is or contains a lease and whether the lease should be classified as an operating or a finance lease. Operating leases are included in right-of-use (“ROU”) assets and operating lease liabilities in our consolidated balance sheets.

 

ROU assets represent the Company’s right to use an underlying asset during the lease term, and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. The determination of the length of lease terms is affected by options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. The existence of significant economic incentive is the primary consideration when assessing whether the Company is reasonably certain of exercising an option in a lease. ROU assets and liabilities are recognized at commencement date and measured as the present value of lease payments to be made over the lease term. As the interest rate implicit in the lease is not readily available for most of the Company’s leases, the Company uses its estimated incremental borrowing rate in determining the present value of lease payments. The estimated incremental borrowing rate is derived from information available at the lease commencement date. The lease ROU asset recognized at commencement is adjusted for any lease payments related to initial direct costs, prepayments, and lease incentives. The ROU asset is amortized on a straight-line basis generally over the shorter of the lease term or the estimated useful life of the underlying asset and interest on the lease liability.

 

At December 31, 2023, the Company has right of use assets and lease liabilities of $4,740,193 and $5,099,629, respectively. At December 31, 2022, the Company had right of use assets and lease liabilities of $6,526,627 and $6,895,046, respectively.

 

Finance leases are treated as the purchase of an asset on a financing basis. Assets under finance leases, which primarily represent machinery and equipment, computer equipment, and leasehold improvements, are included in property and equipment, net, with the related liabilities included in current portion of long-term debt and long-term debt on the consolidated balance sheets.

 

Goodwill

 

Goodwill represents the excess of purchase price of an acquisition over the fair value of net assets acquired. Goodwill is not amortized but instead is assessed for impairment annually as of December 31st and when events and circumstances warrant an evaluation. The Company has determined that it has a single operating and reporting unit, and assesses during its evaluation whether it believes it is more likely than not that the fair value of this reporting unit is greater than or less than its carrying amount by comparing the fair value of this reporting unit with its carrying value. If the carrying amount of a reporting unit exceeds the reporting unit’s fair value, the amount by which the carrying value exceeds the fair value is recognized as an impairment loss. The Company performed its annual impairment assessment of goodwill as of December 31, 2023 and concluded that goodwill was not impaired. The Company assessed goodwill using qualitative factors to determine whether it was more likely than not that the fair value is less than its carrying value (step 0) and determined that no further testing was required.

 

Long-Lived Assets

 

The Company reviews its long-lived assets for impairment whenever changes in circumstances indicate that the carrying amount of an asset may not be fully recoverable by comparing the estimated undiscounted cash flows expected to result from the use of the asset and the estimated amounts expected to be realized upon the asset’s eventual disposition with the carrying value of the asset. If the carrying amount of the asset exceeds the aforementioned estimated expected undiscounted cash flows and estimated expected disposition proceeds, the Company measures the amount of the impairment to record by comparing the carrying amount of the asset with its estimated fair value. As of December 31, 2023, the Company determined that long-lived assets were not impaired.

 

Fair Value

 

The fair value hierarchy has three levels based on the reliability of the inputs used to determine fair value. Level 1 refers to fair values determined based on quoted prices in active markets for identical assets. Level 2 refers to fair values estimated using significant other observable inputs and Level 3 includes fair values estimated using significant unobservable inputs.

 

At December 31, 2023 and 2022, the fair values of the Company’s current assets and current liabilities approximated their carrying values because of the short-term nature of these instruments.

 

The carrying value of the line of credit and long-term debt approximates fair value (level 2) as the interest rate is based on market quotes.

 

Earnings per Share

 

The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the treasury stock method in the calculation of earnings per share. Net income per common share is computed by dividing net income by the weighted average number of common shares outstanding during the period.

 

Basic and diluted income per common share is computed using the weighted average number of common shares outstanding. Diluted income per common share is adjusted for the incremental shares attributed to unvested RSUs. There were 160,742 and 0 incremental shares used in the calculation of diluted income per common share for the years ended December 31, 2023 and 2022, respectively.

 

Income Taxes

 

Income taxes are accounted for under the asset and liability method whereby deferred tax assets and liabilities are recognized for future tax consequences attributable to the temporary differences between the consolidated financial statements carrying amounts of assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the period that includes the enactment date. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company recognizes the effect of an income tax position only if, based on its merits, the position is more likely than not to be sustained on audit by the taxing authorities.

 

The Company’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.

 

Stock-Based Compensation

 

The Company accounts for stock-based compensation in accordance with ASC 718, Compensation - Stock Compensation (“ASC 718”). ASC 718 establishes accounting for stock-based awards exchanged for employee and nonemployees. Under the provisions of ASC 718, stock-based compensation cost is measured at the grant date, based on the fair value of the award on the grant date, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the equity grant).

 

Restricted stock awards are granted at the discretion of the Company’s board of directors. These awards are restricted as to the transfer of ownership and generally vest over the requisite service period. The Company recognizes forfeitures at the time the forfeiture occurs.

 

Research and Development

 

Customer-funded research and development (“R&D”) costs are incurred pursuant to contractual arrangements requiring us to provide a product meeting certain defined performance or other specifications, such as designs, and such contractual arrangements are accounted for principally by the over time revenue recognition method. Customer-funded R&D is included in the “Revenue” and “Cost of sales” line items in our Consolidated Statements of Operations.

 

Prior Period Reclassification

 

Certain amounts in prior periods have been reclassified to conform with current period presentation within the Consolidated Statement of Shareholder’s Equity and the Consolidated Statements of Cash Flows.

 

Recently Issued Accounting Standards – Adopted

 

In 2023, the Company adopted ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments (ASU 2016-13), using a modified retrospective method, which did not result in a material impact on the Company’s consolidated financial statements.

 

Recently Issued Accounting Standards – Not Adopted

 

In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which focuses on the rate reconciliation and income taxes paid. ASU No. 2023-09 requires a public business entity (“PBE”) to disclose, on an annual basis, a tabular rate reconciliation using both percentages and currency amounts, broken out into specified categories with certain reconciling items further broken out by nature and jurisdiction to the extent those items exceed a specified threshold. In addition, all entities are required to disclose income taxes paid, net of refunds received disaggregated by federal, state/local, and foreign and by jurisdiction if the amount is at least 5% of total income tax payments, net of refunds received. For PBEs, the new standard is effective for annual periods beginning after December 15, 2024, with early adoption permitted. An entity may apply the amendments in this ASU prospectively by providing the revised disclosures for the period ending December 31, 2025 and continuing to provide the pre-ASU disclosures for the prior periods, or may apply the amendments retrospectively by providing the revised disclosures for all period presented. We expect this ASU to only impact our disclosures with no impacts to our results of operations, cash flows, and financial condition.

 

XML 23 R8.htm IDEA: XBRL DOCUMENT v3.24.1
REVENUE
12 Months Ended
Dec. 31, 2023
Revenue from Contract with Customer [Abstract]  
REVENUE

 

2.REVENUE

 

Disaggregation of Revenue

 

The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method:

 

   Year Ended 
   December 31,
2023
   December 31,
2022
 
Government subcontracts  $69,672,602   $69,023,729 
Prime government contracts   11,842,145    8,663,308 
Commercial contracts   4,951,574    5,648,727 
Total  $86,466,321   $83,335,764 

 

   Year Ended 
   December 31, 2023   December 31, 2022 
Revenue recognized using over time revenue recognition model  $82,713,436   $75,911,241 
Revenue recognized using point in time revenue recognition model   3,752,885    7,424,523 
Total  $86,466,321   $83,335,764 

 

Favorable/(Unfavorable) Adjustments to Gross Profit

 

We review our Estimates at Completion (“EAC”) at least quarterly. Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many inputs, and requires significant judgment by management on a contract-by-contract basis. As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule, identified risks and opportunities, and the related changes in estimates of revenues and costs. The risks and opportunities relate to management’s judgment about the ability and cost to achieve the schedule, consideration of customer-directed delays or reductions in scheduled deliveries, technical requirements, customer activity levels, and related variable consideration. Management must make assumptions and estimates regarding contract revenue and costs, including estimates of labor productivity and availability, the complexity and scope of the work to be performed, the availability and cost of materials including any impact from changing costs or inflation, the length of time to complete the performance obligation, the availability and timing of funding from our customer, and overhead cost rates, among others.

 

Changes in estimates of net sales, cost of sales, and the related impact to operating profit on contracts recognized over time are recognized on a cumulative catch-up basis, which recognizes the cumulative effect of the profit changes on current and prior periods based on a performance obligation’s percentage-of-completion in the current period. A significant change in one or more of these estimates could affect the profitability of one or more of our performance obligations. Our EAC adjustments also include the establishment of, and changes to, loss provisions for our contracts accounted for on a percentage-of-completion basis.

 

Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022:

 

   Years Ended 
   December 31,
2023
   December 31,
2022
 
Favorable adjustments  $2,601,615   $4,962,675 
(Unfavorable) adjustments   (4,052,117)   (3,207,099)
Net adjustments  $(1,450,502)  $1,755,576 

 

 

Favorable adjustments during the year ended December 31, 2023 included the NGC E-2D MY2 Outer Wing Panel (“OWP”) and NGC E-2D Wet Outer Wing Panel programs. Unfavorable adjustments during the year ended December 31, 2023 included the Boeing A-10 and Embraer Phenom 300 programs. Favorable adjustments during the year ended December 31, 2022 included the Raytheon NGJ Pods/AMS and Lockheed Margin F-16 Rudder Island programs. Unfavorable adjustments during the year ended December 31, 2022 included the NGC E-2D MY2 OWP and Embraer Phenom 300 programs.

 

Transaction Price Allocated to Remaining Performance Obligations

 

As of December 31, 2023, the aggregate amount of transaction price allocated to the remaining performance obligations was approximately $118.2 million. This represents the amount of revenue the Company expects to recognize in the future on contracts with unsatisfied or partially satisfied performance obligations as of December 31, 2023.

XML 24 R9.htm IDEA: XBRL DOCUMENT v3.24.1
CONTRACT ASSETS AND LIABILITIES
12 Months Ended
Dec. 31, 2023
Contract Assets And Liabilities  
CONTRACT ASSETS AND LIABILITIES

 

3.CONTRACT ASSETS AND LIABILITIES

 

Contract assets represent revenue recognized on contracts in excess of amounts invoiced to the customer and the Company’s right to consideration is conditional on something other than the passage of time. Amounts may not exceed their net realizable value. Under the typical payment terms of our government contracts, the customer retains a portion of the contract price until completion of the contract, as a measure of protection for the customer. Our government contracts therefore typically result in revenue recognized in excess of billings, which we present as contract assets. Contract assets are classified as current assets. The Company’s contract liabilities represent customer payments received or due from the customer in excess of revenue recognized. Contract liabilities are classified as current liabilities. 

 

  

December 31,

 2023

   December 31,
2022
  December 31,
2021
 
Contract assets  $35,312,068   $27,384,540  24,459,339  
               
Contract liabilities   5,937,629    6,001,726  5,122,766  

 

Contract assets at December 31, 2023 increased $7,927,528 from December 31, 2022 due to the recognition of revenue during 2023 upon the satisfaction or partial satisfaction of performance obligations for which we had not yet billed our customers as of December 31, 2023, primarily on our T-38 Pacer Classic program, our Lockheed Martin F-16 Rudder Island program and our NGC E-2D Advanced Hawkeye OWP program.

 

Contract liabilities decreased $64,097 during 2023, primarily due to revenue recognized on these performance obligations in excess of payments received.

 

Revenue recognized for the year ended December 31, 2023, that was included in the contract liabilities balances as of January 1, 2023 was $3,816,336. Revenue recognized for the year ended December 31, 2022, that was included in the contract liabilities balances as of January 1, 2022 was $3,598,601.

XML 25 R10.htm IDEA: XBRL DOCUMENT v3.24.1
ACCOUNTS RECEIVABLE
12 Months Ended
Dec. 31, 2023
Receivables [Abstract]  
ACCOUNTS RECEIVABLE

 

4.ACCOUNTS RECEIVABLE

 

Accounts receivable consists of trade receivables as follows:

 

  

December 31,

 2023

   December 31,
2022
 
Billed receivables  $4,444,504   $5,139,757 
Less: allowance for expected credit losses   (92,308)   (281,985)
   Total accounts receivable, net  $4,352,196   $4,857,772 

 

XML 26 R11.htm IDEA: XBRL DOCUMENT v3.24.1
INVENTORY
12 Months Ended
Dec. 31, 2023
Inventory Disclosure [Abstract]  
INVENTORY

 

5.INVENTORY

 

The components of inventory consist of the following: 

 

             
   December 31, 
   2023   2022 
Raw materials  $1,187,008   $1,892,157 
Work in progress   75,795    685,438 
Finished goods (Includes completed components)   1,617,077    3,038,859 
       Gross inventory  $2,879,879   $5,616,454 
       Inventory reserves   (1,443,233)   (3,123,386)
       Inventory, net  $1,436,647   $2,493,069 

 

XML 27 R12.htm IDEA: XBRL DOCUMENT v3.24.1
PROPERTY AND EQUIPMENT
12 Months Ended
Dec. 31, 2023
Property, Plant and Equipment [Abstract]  
PROPERTY AND EQUIPMENT

 

6.PROPERTY AND EQUIPMENT

 

The components of property and equipment consist of the following:

 

   December 31,   Estimated 
   2023   2022   Useful Life (years) 
Machinery and equipment  $4,004,779   $3,978,662   5 to 7 
Computer equipment   4,242,437    4,191,040   5 
Furniture and fixtures   709,350    709,350   7 
Automobiles and trucks   13,162    13,162   5 
Leasehold improvements   2,692,552    2,629,615    Lesser of lease term or 10 years 
Total gross property and equipment   11,662,280    11,521,829     
Less accumulated depreciation and amortization   (10,868,224)   (10,397,273)    
Total property and equipment, net  $794,056   $1,124,556     

 

Depreciation expense for the years ended December 31, 2023 and 2022 was $470,950 and $563,096, respectively.

XML 28 R13.htm IDEA: XBRL DOCUMENT v3.24.1
GOODWILL
12 Months Ended
Dec. 31, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
GOODWILL

 

7.GOODWILL

 

The Company acquired WMI on December 20, 2018. The acquisition was accounted for as a business combination in accordance with ASC Topic 805. Accordingly, the Company recorded the fair value of the assets and liabilities assumed at the date of acquisition. As a result of the acquisition of WMI on December 30, 2018, the Company recorded Goodwill of $1,784,254.

XML 29 R14.htm IDEA: XBRL DOCUMENT v3.24.1
LINE OF CREDIT
12 Months Ended
Dec. 31, 2023
Debt Disclosure [Abstract]  
LINE OF CREDIT

 

8.LINE OF CREDIT

 

On March 24, 2016, the Company entered into an Amended and Restated Credit Agreement with the lenders named therein and BankUnited, N.A. (“BankUnited”) as Sole Arranger, Agent and a Lender, dated as of March 24, 2016 (as amended, the “Credit Agreement” or the “BankUnited Facility”). The BankUnited Facility originally provided for a revolving credit loan commitment of $30 million (the “Revolving Loan”) and a $10 million term loan (“Term Loan”). The Revolving Loan bears interest at a rate based upon a pricing grid, as defined in the Credit Agreement.

 

On April 12, 2022, the Company entered into a Consent, Waiver and Ninth Amendment (the “Ninth Amendment”) to the Credit Agreement. Under the Ninth Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to September 30, 2023, (b) providing for the repayment of an additional $750,000 of the principal balance of the Term Loan in three installments of $250,000 on September 30, 2022, December 31, 2022 and March 31, 2023 in addition to $200,000 regular monthly principal payments through December 31, 2022 and (c) increasing the interest on the Revolving Loan and the Term Loan as follows: through June 30, 2022, Prime Rate (as defined in the Credit Agreement) plus 2.5%; from July 1, 2022 through August 31, 2022, Prime Rate plus 5%; from September 1, 2022 through October 31, 2022, Prime Rate plus 6%; from November 1, 2022 through December 31, 2022, Prime Rate plus 7%; and from January 1, 2023 through September 30, 2023, Prime Rate plus 8%. Additionally, under the Ninth Amendment, the Credit Agreement financial covenants were amended. BankUnited also waived or consented to certain covenant non-compliance, waived temporarily or consented to, late delivery of certain financial information and waived permanently late delivery of certain pro-forma budget information.

 

On August 19, 2022, the Company entered into a Consent, Waiver and Tenth Amendment (the “Tenth Amendment”) to the Credit Agreement. Under the Tenth Amendment, the parties amended the Credit Agreement by (a) increasing the maximum leverage ratio applicable for the fiscal quarter ending September 30, 2022 to 5.0 to 1.0, (b) waiving and/or consenting to the exclusion from the Company’s covenant compliance requirements for the fiscal quarters ended December 31, 2021, March 31, 2022, June 30, 2022 and September 30, 2022 up to (i) $566,025 of losses incurred and reserves taken under the Borrower’s welded product contracts, and (ii) $367,045 of reserves taken with respect to the Borrower’s welded product inventory, and (c) waiving and/or consenting to the exclusion from the Company’s covenant compliance requirements for the fiscal quarters ended March 31, 2022, June 30, 2022, September 30, 2022 and December 31, 2022 up to $795,997 of accrued severance and COBRA costs and employer taxes incurred by the Company during the fiscal quarter ending March 31, 2022. Additionally, under the Tenth Amendment, BankUnited waived or consented to late delivery of certain financial information required by the Credit Agreement.

 

On November 10, 2022, the Company entered into an Eleventh Amendment to the Credit Agreement (the “Eleventh Amendment”). Under the Eleventh Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to November 30, 2023 or with respect to the Term Loan, if earlier, until the outstanding principal balance is paid in full (the “Term Loan Maturity Date”), (b) providing for regular monthly principal payments of $200,000 on the Term Loan from January 1, 2023 through the Term Loan Maturity Date (in addition to the Company’s existing obligation to make two principal payments on the term loan of $250,000 on each of December 31, 2022 and March 31, 2023) and (c) decreasing the interest rate on the Revolving Loan and on the Term Loan to the Prime Rate plus 3.5% effective as of November 1, 2022.

 

On March 23, 2023, the Company entered into a Twelfth Amendment to the Credit Agreement (the “Twelfth Amendment”). Under the Twelfth Amendment, the parties amended the Credit Agreement by : (a) extending the maturity date of the Company’s existing revolving line of credit and its existing term loan to November 30, 2024 (under the terms of the Credit Agreement, the outstanding principal balance of the term loan will be repaid by June 30, 2023); (b) providing for reduction of the aggregate maximum principal amount of all revolving line of credit loans to $20,520,000 from October 1, 2023 through December 31, 2023, $19,800,000 from January 1, 2024 through March 31, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, and $17,640,000 from October 1, 2024 and thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period; and (c) payment of a $250,000 capitalized fee incurred in connection with the Eighth Amendment to the Credit Agreement in two installments, the first installment to be paid on June 1, 2023 in the amount of $116,667 and the second installment to be paid July 1, 2023 in the amount of $133,333, together with all unpaid interest accrued at the term loan interest rate on the capitalized fee through each such date.

 

The Credit Agreement, as amended, requires us to maintain the following financial covenants (subject to the exclusions provided for in the previous paragraph): (a) minimum debt service coverage ratio of no less than 1.5 to 1.0 for the trailing four quarter period ended March 31, 2022, 0.95 to 1.0 for the trailing four quarter period ended June 30, 2022, and 1.5 to 1.0 for the trailing four quarter period ended September 30, 2022 and for the trailing four quarter periods ended thereafter; (b) maximum leverage ratio of no less than 7.30 to 1.0 for the trailing four quarter period ended March 31, 2022, 6.30 to 1.0 for the trailing four quarter period ended June 30, 2022, 5.0 to 1.0 for the trailing four quarter period ended September 30, 2022 and 4.0 to 1.0 for the trailing four quarter periods thereafter; (c) minimum net income after taxes as of the end of each fiscal quarter being no less than $1.00 commencing June 30, 2022; and (d) a minimum adjusted EBITDA at the end of each quarter of no less than $1.0 million (waived for the quarter ended March 31, 2022). The additional principal payments, increase in interest and an amendment fee provided for in the Eighth and Ninth Amendments are excluded for purposes of calculating compliance with each of the financial covenants.

 

On February 20, 2024, the Company entered into a Thirteenth Amendment to the Credit Agreement (the “Thirteenth Amendment”). Under the Thirteenth Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Company’s existing revolving line of credit to August 31, 2025; and (b) setting the aggregate maximum principal amount of all revolving line of credit loans to $19,800,000 from January 1, 2024 through March 31, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, $17,640,000 from October 1, 2024 through December 31, 2024, $16,920,000 from January 1, 2025 through March 31, 2025, $16,200,000 from April 1, 2025 through June 30, 2025 and $15,480,000 thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period.

 

As of December 31, 2023 and December 31, 2022, the Company had $20,040,000 and $21,000,000, respectively, outstanding under the BankUnited Revolving Loan Facility. $2,400,000 of the revolving line of credit matures and is payable by December 31, 2024 and the remaining balance of $17,640,000 of the revolving line of credit matures and is payable by August 31, 2025.

 

The BankUnited Facility is secured by all of the Company’s assets.

 

XML 30 R15.htm IDEA: XBRL DOCUMENT v3.24.1
DEBT
12 Months Ended
Dec. 31, 2023
Debt Disclosure [Abstract]  
DEBT

 

9.DEBT

 

As described above, in connection with the Twelfth Amendment, the Company and BankUnited agreed to amend the Credit Agreement by: (a) extending the maturity date of the Company’s existing revolving line of credit and its existing term loan to November 30, 2024 (under the terms of the Credit Agreement, the outstanding principal balance of the term loan will be repaid by June 30, 2023); (b) providing for reduction of the aggregate maximum principal amount of all revolving line of credit loans to $20,520,000 from October 1, 2023 through December 31, 2023, $19,800,000 from January 1, 2024 through March 31, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, and $17,640,000 from October 1, 2024 and thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period; and (c) payment of a $250,000 capitalized fee incurred in connection with the Eighth Amendment to the Credit Agreement in two installments, the first installment to be paid on June 1, 2023 in the amount of $116,667 and the second installment to be paid July 1, 2023 in the amount of $133,333, together with all unpaid interest accrued at the term loan interest rate on the capitalized fee through each such date.

 

As described above, in connection with the Eleventh Amendment, the Company and BankUnited agreed to amend the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to November 30, 2023 or with respect to the Term Loan, if earlier, until the outstanding principal balance is paid in full (the “Term Loan Maturity Date”), (b) providing for regular monthly principal payments of $200,000 on the Term Loan from January 1, 2023 through the Term Loan Maturity Date (in addition to the Company’s existing obligation to make two principal payments on the term loan of $250,000 on each of December 31, 2022 and March 31, 2023) and (c) decreasing the interest rate on the Revolving Loan and on the Term Loan to the Prime Rate plus 3.5% effective as of November 1, 2022.

 

As described above, in connection with the Tenth Amendment, the Company and BankUnited agreed to amend the Credit Agreement by (a) amending the maximum leverage ratio applicable for the fiscal quarter ending on September 30, 2022, and (b) consenting to and waiving certain covenant non-compliance under the Credit Agreement. Under the Tenth Amendment, there are no changes to interest rates or repayment schedule and the terms pertaining to interest rates and repayment schedule remain the same as described below as per the Ninth Amendment. The Tenth Amendment had no effect on the interest rates on the Revolving Term Loan or Term Loan.

 

As described above, in connection with the Ninth Amendment, the Company and BankUnited agreed to extend the maturity dates of the Revolving Loan and Term Loan to September 30, 2023, provide for the repayment of an additional $750,000 of the principal balance of the term loan in three installments of $250,000 on September 30, 2022, December 31, 2022 and March 31, 2023 (in addition to the $750,000 in additional principal payments as required by the Eighth Amendment due on November 30, 2021, December 31, 2021 and March 31, 2022), as well as the $200,000 regular monthly principal payments paid monthly through maturity, increase the interest on the Revolving Loan and on the Term Loan as follows: through June 30, 2022, Prime Rate (as defined in the Credit Agreement) plus 2.5%; from July 1, 2022 through August 31, 2022, Prime Rate plus 5%; from September 1, 2022 through October 31, 2022, Prime Rate plus 6%; from November 1, 2022 through December 31, 2022, Prime Rate plus 7%; and from January 1, 2023 through September 30, 2023, Prime Rate plus 8%, waive or consent to certain covenant non-compliance, and waive temporarily or consented to, late delivery of certain financial information and waived permanently late delivery of certain pro-forma budget information. The BankUnited Facility, as amended, requires us to maintain the financial covenants described in the preceding note.

 

In 2022, as consideration for the lenders entering into the Ninth Amendment, the Company paid a $62,833 fee to the lenders. The Company has cumulatively paid approximately $962,000 of total debt issuance costs in connection with the BankUnited Facility of which approximately $82,000 and $131,000 is unamortized and included in other assets at December 31, 2023 and 2022, respectively.

 

 

The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows:

 

Year ending December 31,     
2024   $44,498 
2025    26,483 
Total   $70,981 

 

Included in the long-term debt are financing leases and notes payable totaling $70,981 and $207,414 at December 31, 2023 and 2022, respectively, including a current portion of $44,498 and $136,433, respectively.

 

The BankUnited Facility is secured by all of the Company’s assets and both the Revolving Loan and Term Loan bear interest at the Prime Rate + 3.50%. The Prime Rate was 8.50% as of December 31, 2023 and as such, the Company’s interest rate on the Revolving Loan and Term Loan was 12.00% as of December 31, 2023.

 

During the year ended December 31, 2023, the Term Loan was fully repaid. At December 31, 2022, the Term Loan had an aggregate principal balance due of $1,583,333, payable in monthly installments, as defined in the Credit Agreement.

XML 31 R16.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES
12 Months Ended
Dec. 31, 2023
Leases  
LEASES

 

10.LEASES

 

The Company leases manufacturing and office space under an agreement classified as an operating lease. On November 10, 2022, the Company executed the second amendment to the lease agreement for its manufacturing and office space, which extends the lease agreement’s expiration date to April 30, 2026. The lease agreement does not include any renewal options. The agreement provides for an initial monthly base amount plus annual escalations through the term of the lease. In addition to the monthly base amounts in the lease agreement, the Company is required to pay real estate taxes and operating expenses during the lease terms.

 

The Company also leases office equipment in agreements classified as operating leases.

 

For the years ended December 31, 2023 and 2022, the Company’s operating lease expense was $2,142,338 and $2,101,596, respectively.

 

Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows:

 

Year ending December 31,        
2024     $ 2,228,784  
2025       2,283,354  
2026       850,276  
2027       111,065  
2028       9,226  
Total undiscounted operating lease payments       5,482,705  
Less imputed interest       (383,076 )
Present value of operating lease payments     $ 5,099,629  

 

The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022:

 

   2023   2022 
Assets          
ROU assets, net  $4,740,193   $6,526,627 
           
Liabilities          
Current operating lease liabilities  $1,999,058   $1,817,811 
Long-term operating lease liabilities   3,100,571    5,077,235 
Total lease liabilities  $5,099,629   $6,895,046 

 

The Company’s weighted average remaining lease term for its operating leases is 2.5 years as of December 31, 2023. The Company’s weighted average discount rate for its operating leases is 5.43% as of December 31, 2023.

XML 32 R17.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES
12 Months Ended
Dec. 31, 2023
Income Tax Disclosure [Abstract]  
INCOME TAXES

 

11.INCOME TAXES

 

We account for income taxes in accordance with ASC 740 Income Taxes. ASC 740 is an asset and liability approach that requires the recognition of deferred tax assets and liabilities for the expected tax consequences or events that have been recognized in our consolidated financial statements or tax returns. ASC 740 also clarifies the accounting for uncertainty in income taxes recognized in the consolidated financial statements. The interpretation prescribes a recognition threshold and measurement attribute for the consolidated financial statements recognition and measurement of a tax position taken, or expected to be taken, in a tax return.

 

The Company files income tax returns in the U.S. federal jurisdiction and in various state jurisdictions. The Company generally is no longer subject to U.S. or state examinations by tax authorities for taxable years prior to 2019. However, net operating losses utilized from prior years in subsequent years’ tax returns are subject to examination until three years after the filing of subsequent years’ tax returns. The statute of limitations expiration in foreign jurisdictions for corporate tax returns generally ranges between two and five years depending on the jurisdiction.

 

The (benefit) for income taxes consists of the following:

 

Year ended December 31,  2023   2022 
Current:          
State  $14,248   $21,332 
Deferred:          
    Federal   (12,608,425)   (6,428,448)
State   (755,237)   (146,015)
Total  $(13,349,414)  $(6,553,131)

 

The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows:

 

December 31,  2023   2022 
Taxes computed at the federal statutory rate  $808,876   $550,850 
State income tax, net   (585,381)   (98,499)
Research and development tax credit   (133,089)   (190,656)
Change in valuation allowance   (13,531,626)   (6,616,952)
Other   88,308    51,696 
Accrued loss reserve adjustment       (253,738)
Permanent differences   3,498    4,168 
Benefit for income taxes  $(13,349,414)  $(6,553,131)

 

The components of deferred income tax assets and liabilities are as follows at December 31:

 

Deferred Tax Assets:  2023   2022
(As Restated)
 
Allowance for credit losses  $20,632   $60,100 
Capitalized R&D   1,420,263    864,969 
Credit carryforwards   2,278,642    2,193,146 
Inventory reserve   350,073    722,991 
Accrued payroll   151,986    267,819 
Loss contracts reserve   75,402    46,205 
Restricted stock   94,809    92,677 
Acquisition costs   74,136    77,762 
Lease liability   1,139,836    1,469,551 
Accrued legal       159,849 
Disallowed interest expense   1,067,063    943,089 
Net operating loss carryforward   16,356,545    17,513,901 
Other   45,057    20,659 
Deferred tax assets   23,074,444    24,432,718 
           
Valuation allowance   (569,143)   (14,740,034)
           
Deferred Tax Liabilities:          
Prepaid expenses   143,126    207,980 
Revenue recognition    1,224,106    1,341,105 
Property and equipment   140,449    178,107 
ROU asset   1,059,496    1,391,029 
Deferred tax liabilities  $2,567,177   $3,118,221 
Net deferred tax assets  $19,938,124   $6,574,463 

 

During our review of the Company’s deferred income tax positions as of December 31, 2023, we determined that the following adjustments are needed to our previously reported December 31, 2022 deferred tax assets and liabilities balances, with no impact to our net deferred tax assets, due to the inadequate review, assessment of and reporting of the Company’s temporary differences between book and taxable income. More specifically, the adjustments are required due to computational errors and incomplete analyses. Accordingly, we have restated the balances as previously reported, where needed, as follows:

 

Deferred Tax Assets:  2022 (as Previously Reported)   Restatement Adjustments   2022 (As Restated) 
Allowance for credit losses  $60,100   $   $60,100 
Capitalized R&D   864,969        864,969 
Credit carryforwards   2,193,146        2,193,146 
Inventory reserve   1,130,788    (407,797)   722,991 
Accrued payroll   267,819        267,819 
Loss contracts reserve   46,205        46,205 
Restricted stock   160,989    (68,312)   92,677 
Acquisition costs   77,762        77,762 
Lease liability   1,469,551        1,469,551 
Accrued legal   159,849        159,849 
Disallowed interest expense   1,268,226    (325,137)   943,089 
Net operating loss carryforward   19,493,530    (1,979,629)   17,513,901 
Other   20,659        20,659 
Deferred tax assets   27,213,593    (2,780,875)   24,432,718 
                
Valuation allowance   (14,916,923)   176,889    (14,740,034)
                
Deferred Tax Liabilities:               
Prepaid expenses   207,980        207,980 
Revenue recognition   3,966,404    (2,625,299)   1,341,105 
Property and equipment   156,794    21,313    178,107 
ROU asset   1,391,029        1,391,029 
Deferred tax liabilities  $5,722,207   $(2,603,986)  $3,118,221 
Net deferred tax assets  $6,574,463   $   $6,574,463 

 

As of December 31, 2023, the Company had approximately $74.7 million of gross net operating loss carryforwards (“NOLs”) for federal tax purposes and approximately $17.3 million of post apportionment NOLs for state tax purposes. The Federal NOLs begin to expire in 2034. Losses generated in 2018 and forward of $14.4 million have an indefinite life and can offset up to 80% of taxable income in the future. Federal NOLs generated prior to 2018 can offset 100% of future taxable income. The state NOLs begin to expire in 2034.

 

As a result of the Tax Cuts and Jobs Act of 2017 and the Coronavirus Aid, Relief, and Economic Security Act of 2020, federal NOLs arising before January 1, 2018, and NOLs arising after January 1, 2018, are subject to different rules. Our pre-2018 NOLs totaled approximately $60.3 million; these NOLs will expire in varying amounts from 2034 through 2039, if not utilized, and can offset 100% of future taxable income for regular tax purposes. Our NOLs arising in 2018, 2019 and 2020 can generally be carried back five years, carried forward indefinitely and can offset 100% of taxable income for tax years before January 1, 2021 and up to 80% of taxable income for tax years after December 31, 2020. Any NOLs arising on or after January 1, 2021, cannot be carried back, can generally be carried forward indefinitely and can offset up to 80% of future taxable income. The state NOLs begin to expire in 2034.

 

Our ability to fully recognize the benefits from our NOLs is dependent upon our ability to generate sufficient income prior to their expiration. In addition, our NOL carryforwards may be limited if we experience an ownership change as defined by Section 382 of the Internal Revenue Code (“Section 382”). In general, an ownership change under Section 382 occurs if 5% shareholders increase their collective ownership of the aggregate amount of our outstanding shares by more than 50 percentage points over a relevant lookback period. The Company has completed a Section 382 analysis for the year ended December 31, 2022, and believes that no ownership change occurred during the relevant lookback period that would limit our ability to use our NOLs. The sale of additional equity securities in the future may trigger an ownership change under IRC Section 382, which could significantly limit our ability to utilize our tax benefits.

 

The Company will recognize a tax benefit in the consolidated financial statements for an uncertain tax position only if management’s assessment is that the position is “more likely than not” (i.e., a likelihood greater than 50%) to be allowed by the tax jurisdiction based solely on the technical merits of the position. The term “tax position” refers to a position in a previously filed tax return or a position expected to be taken in a future tax return that is reflected in measuring current or deferred income tax assets and liabilities for financial reporting purposes.

 

Assessing the realizability of deferred tax assets requires the determination of whether it is more likely than not that some portion or all the deferred tax assets will not be realized. In assessing the need for a valuation allowance, the Company considers all available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, loss carryback and tax-planning strategies. Generally, more weight is given to objectively verifiable evidence, such as a cumulative loss in recent years, as a significant piece of negative evidence to overcome. As of December 31, 2023, the Company achieved three years of consecutive book and taxable income, along with projections of profitability, for which management determined that there is sufficient positive evidence to conclude that it is more likely than not that a portion of the deferred tax assets will be realized. As such, $14,170,891 of the valuation allowance was released during the fourth quarter of fiscal 2023, leaving a balance in the valuation allowance of $569,143 as of December 31, 2023.

 

The income tax (benefit) for the year ended December 31, 2023 was $(13,349,414), an effective tax (benefit) rate of (346.6%). The tax (benefit) was mostly the result of the aforementioned reduction in the valuation allowance on deferred tax assets. Management makes these estimates quarterly in order to determine the appropriate level of valuation allowance to include in the Company’s financial statements at the balance sheet date.

XML 33 R18.htm IDEA: XBRL DOCUMENT v3.24.1
ACCRUED EXPENSES
12 Months Ended
Dec. 31, 2023
Payables and Accruals [Abstract]  
ACCRUED EXPENSES

12.       ACCRUED EXPENSES

 

Accrued expenses consists of the following:

 

  

December 31,

 2023

   December 31,
2022
 
           
Accrued purchases  $7,132,847   $4,153,237 
Accrued payroll   1,143,913    1,285,122 
Accrued insurance   855,190    837,371 
Accrued interest   601,200    703,354 
Accrued professional fees and other
accrued expenses
   542,545    365,506 
   Total  $10,275,695   $7,344,590 

 

XML 34 R19.htm IDEA: XBRL DOCUMENT v3.24.1
STOCK-BASED COMPENSATION
12 Months Ended
Dec. 31, 2023
Share-Based Payment Arrangement [Abstract]  
STOCK-BASED COMPENSATION

 

13.STOCK-BASED COMPENSATION

 

Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:

 

   2023   2022 
Cost of sales  $65,470   $36,794 
           
Selling, general and administrative   705,156    319,084 
Total stock-based compensation expense  $770,626   $355,878 

 

The Company grants restricted stock units (“RSUs”) to its board of directors as partial compensation. These RSUs vest quarterly on a straight-line basis over a one-year period.

 

The following table summarizes activity related to outstanding RSUs for the year ended December 31, 2023:

 

    RSUs  

Weighted Average 

Grant Date 

Fair Value
of RSUs 

 
Non-vested – January 1, 2023       $ 
Granted    173,718   $3.43 
Vested    (139,969)  $3.43 
Forfeited    (33,749)  $3.42 
Non-vested – December 31, 2023       $ 

 

The Company grants shares of common stock (“Restricted Stock Awards”) to select employees. These shares have various vesting dates, ranging from vesting on the grant date to as late as four years from the date of grant. In the event that the employee’s employment is voluntarily terminated prior to certain vesting dates, portions of the shares may be forfeited. At December 31, 2023, the weighted average remaining amortization period was 2.7 years.

 

The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023:

 

    Restricted Stock Awards  

Weighted Average 

Grant Date 

Fair Value of

Restricted Stock

Awards 

 
Non-vested – January 1, 2023    130,583   $2.37 
Granted    111,447   $3.82 
Vested    (39,331)  $3.07 
Forfeited    (35,628)  $2.04 
Non-vested – December 31, 2023    167,071   $3.25 

 

The Company grants shares of common stock (“Performance Restricted Stock Awards” or “PRSAs”) to select officers as part of our long-term incentive program that will result in that number of PRSAs being paid out if the target performance metric is achieved. The award vesting is based on specific performance metrics related to accounts payable delinquency, debt, and net income during the performance period. The PRSAs vest at 0% or 100% and all three metrics must be met to vest at 100%. The PRSAs granted under this program will vest on the fourth anniversary of the grant date, subject to the aforementioned performance criteria. At December 31, 2023, the weighted average remaining amortization period was 2.9 years.

 

The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023:

 

    PRSAs  

Weighted Average 

Grant Date 

Fair Value
of PRSAs 

 
Non-vested – January 1, 2023    31,737   $2.65 
Granted    48,050   $3.27 
Vested    (20,971)  $2.65 
Forfeited    (10,766)  $2.65 
Non-vested – December 31, 2023    48,050   $3.27 

 

The fair value of all RSUs, PRSAs and Restricted Stock Awards is based on the closing price of our common stock on the grant date. All RSUs, PRSAs, and Restricted Stock Awards vest and settle in common stock (on a one-for-one basis).

 

As of December 31, 2023, unamortized stock-based compensation costs related to restricted share arrangements was $274,415.

 

In addition, our income tax liabilities for 2023 and 2022 were reduced by $174,617 and $101,497, respectively, due to recognized tax benefits on stock-based compensation arrangements.

 

In 2009, the Company adopted the Performance Equity Plan 2009 (the “2009 Plan”). The 2009 Plan reserved 500,000 common shares for issuance. The 2009 Plan provides for the issuance of either incentive stock options or nonqualified stock options to employees, consultants or others who provide services to the Company. The Company has 2,364 shares available for grant under the 2009 Plan as of December 31, 2023.

 

In 2016, the Company adopted the 2016 Long Term Incentive Plan (the “2016 Plan”). The 2016 Plan reserved 600,000 common shares for issuance, provided that, no more than 200,000 common shares be granted as incentive stock options. Awards may be made or granted to employees, officers, directors and consultants in the form of incentive stock options, non-qualified stock options, stock appreciation rights, restricted stock, restricted stock units and other stock-based awards. Any shares of common stock granted in connection with awards other than stock options and stock appreciation rights are counted against the number of shares reserved for issuance under the 2016 Plan as one and one-half shares of common stock for every one share of common stock granted in connection with such award. Any shares of common stock granted in connection with stock options and stock appreciation rights are counted against the number of shares reserved for issuance under the 2016 Plan as one share for every one share of common stock issuable upon the exercise of such stock option or stock appreciation right awarded. In the fourth quarter of 2020, the Company added 800,000 shares to the 2016 Plan, which increased the number of shares reserved for issuance under the 2016 Plan to 1,400,000 shares. In the second quarter of 2023, the Company added an additional 800,000 shares to the 2016 Plan, which increased the number of shares for reserved for issuance under the 2016 Plan to 2,200,000 shares. The Company has 619,055 shares available for grant under the 2016 Plan as of December 31, 2023.

XML 35 R20.htm IDEA: XBRL DOCUMENT v3.24.1
EMPLOYEE BENEFIT PLAN
12 Months Ended
Dec. 31, 2023
Retirement Benefits [Abstract]  
EMPLOYEE BENEFIT PLAN

 

14.EMPLOYEE BENEFIT PLAN

 

On September 11, 1996, the Company’s board of directors instituted a defined contribution plan under Section 401(k) of the Internal Revenue Code (the “Code”). On October 1, 1998, the Company amended and standardized its plan as required by the Code. Pursuant to the amended plan, qualified employees may contribute a percentage of their pretax eligible compensation to the Plan and the Company will match a percentage of each employee’s contribution. Additionally, the Company has a profit-sharing plan covering all eligible employees. Contributions by the Company are at the discretion of management. The amount of contributions recorded by the Company during the years ended December 31, 2023 and 2022 amounted to $300,600 and $343,077, respectively.

XML 36 R21.htm IDEA: XBRL DOCUMENT v3.24.1
MAJOR CUSTOMERS
12 Months Ended
Dec. 31, 2023
Risks and Uncertainties [Abstract]  
MAJOR CUSTOMERS

 

15.MAJOR CUSTOMERS

 

For the year ended December 31, 2023, 30%, 26%, 13%, and 12% of our revenue was generated from our four largest customers. For the year ended December 31, 2022, 35%, 17%, 12% and 10% of our revenue was generated from our four largest customers.

 

At December 31, 2023, 30%, 17%, 12%, and 11% of accounts receivable were due from our four largest customers. At December 31, 2022, 38%, 21%, 17%, and 13% of accounts receivable were due from our four largest customers.

 

At December 31, 2023, 26%, 23%, 18%, and 15% of our contract assets were related to our four largest customers. At December 31, 2022, 27%, 20%, 16%, and 16% of our contract assets were related to our four largest customers.

XML 37 R22.htm IDEA: XBRL DOCUMENT v3.24.1
COMMITMENTS AND CONTINGENCIES
12 Months Ended
Dec. 31, 2023
Commitments and Contingencies Disclosure [Abstract]  
COMMITMENTS AND CONTINGENCIES

 

16.COMMITMENTS AND CONTINGENCIES

 

The Company may be involved in various claims, suits, assessments, investigations, and legal proceedings that arise from time to time in the ordinary course of its business. The Company accrues a liability when it is both probable a liability has been incurred and the amount of the loss can be reasonably estimated. The Company reviews these accruals at least quarterly and adjusts them to reflect ongoing negotiations, settlements, rulings, advice of legal counsel, and other relevant information. To the extent new information is obtained and the Company’s views on the probable outcomes of claims, suits, assessments, investigations, or legal proceedings change, changes in the Company’s accrued liabilities would be recorded in the period such determination is made. For some matters, the amount of liability is not probable or the amount cannot be reasonably estimated and, therefore, accruals have not been made.

 

Termination of Shareholder Derivative Actions and Class Action Lawsuit

 

Termination of Shareholder Derivative Actions

 

In 2020 and 2021, four shareholder derivative actions were filed against certain current and former members of our board of directors and certain of our current and former officers. All four of the actions—each described in further detail below—were based on substantially the same allegations and claims – specifically, that the defendants allegedly breached their fiduciary duties and/or violated securities laws by permitting false and misleading statements to be included in the Company’s registration statement and prospectus supplements issued in connection with the Company’s October 16, 2018 securities offering and/or by permitting false and misleading statements to be made in the Company’s periodic reports filed between March 22, 2018 and February 14, 2020.

 

The first action (captioned Moulton v. McCrosson, et.al., No. 20-cv-02092) was filed on May 7, 2020, in the U.S. District Court for the Eastern District of New York. It purported to assert derivative claims against the individual defendants for violations of Section 10(b) and 21D of the Exchange Act, breach of fiduciary duty, and unjust enrichment and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct. The complaint also sought declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

The second action (captioned Woodyard v. McCrosson, et al., Index No. 613169/2020) was filed on September 17, 2020, in the Supreme Court of the State of New York (Suffolk County). It purported to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct, along with declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

The third action (captioned Berger v. McCrosson, et al., No. 1:20-cv-05454) was filed on November 10, 2020, in the U.S. District Court for the Eastern District of New York. The complaint, which was based on the shareholder’s inspection of certain corporate books and records, purported to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and sought to implement reforms to the Company’s corporate governance and internal procedures and to recover on behalf of the Company an unspecified amount of monetary damages. The complaint also sought equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

On March 19, 2021, the parties to the Moulton and Berger actions filed a joint stipulation consolidating the actions (under the caption In re CPI Aerostructures Stockholder Derivative Litigation, No. 20-cv-02092) and staying the consolidated action.

 

The fourth action (captioned Wurst, et al. v. Bazaar, et al., Index No. 605244/2021) was filed on March 24, 2021, in the Supreme Court of the State of New York (Suffolk County). The complaint purported to assert derivative claims against the individual defendants for breach of fiduciary duty, unjust enrichment, and waste of corporate assets, and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct. The complaint also sought declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.

 

On June 13, 2022, plaintiffs in the consolidated federal action informed the court that the Company and all defendants had reached an agreement in principle with all plaintiffs to settle the shareholder derivative lawsuits described above. On June 16, 2022, plaintiffs in the consolidated federal action filed an unopposed motion for preliminary approval of the settlement. On February 14, 2023, the magistrate judge recommended that the court grant the motion in its entirety. On March 6, 2023, the Court granted preliminary approval of the proposed settlement.

 

On May 17, 2023, plaintiffs in the consolidated federal action filed an unopposed motion for final approval of the settlement. The magistrate judge held a final approval hearing on June 7, 2023. On October 27, 2023, the magistrate judge recommended that the Court grant the final approval motion in its entirety. On December 11, 2023, the Court adopted that recommendation and entered orders granting final approval to the settlement and closing the case.

 

Pursuant to the settlement agreement, after the federal court’s final approval of the settlement, the plaintiffs in the Woodyard and Wurst state-court actions voluntarily requested that those actions be dismissed. The parties to the Woodyard action filed a stipulation of dismissal on December 15, 2023, and the Court entered an order dismissing the action on December 19, 2023. The parties to the Wurst action filed a stipulation of dismissal on December 14, 2023, and the Court entered an order dismissing the action on December 18, 2023.

 

As part of the settlement, the Company agreed to undertake (or confirm that it has undertaken already) certain corporate governance reforms. In addition, the Company and/or its insurer have agreed to pay a total of $585,000 in attorneys’ fees to plaintiffs’ counsel. The Company’s insurer paid the full amount due of $585,000. Because the settlement amount was transferred to counsel for plaintiffs on May 5, 2023 from the escrow account established for this purpose, we relieved from our balance sheet, as of that date, the amounts previously owed from our directors’ and officers’ insurance carrier and to that plaintiff.

 

Termination of Class Action Lawsuit

 

A consolidated class action lawsuit (captioned Rodriguez v. CPI Aerostructures, Inc., et al., No. 20-cv-01026) was filed in the U.S. District Court for the Eastern District of New York against the Company; Douglas McCrosson, the Company’s former Chief Executive Officer; Vincent Palazzolo, the Company’s former Chief Financial Officer; and the two underwriters of the Company’s October 16, 2018 offering of common stock, Canaccord Genuity LLC and B. Riley FBR. The Amended Complaint in the action asserted claims on behalf of two plaintiff classes: (i) purchasers of the Company’s common stock issued pursuant to and/or traceable to the Company’s offering conducted on or about October 16, 2018; and (ii) purchasers of the Company’s common stock between March 22, 2018 and February 14, 2020. The Amended Complaint alleged that the defendants violated Sections 11, 12(a)(2), and 15 of the Securities Act by negligently permitting false and misleading statements to be included in the registration statement and prospectus supplements issued in connection with its October 16, 2018 securities offering. The Amended Complaint also alleged that the defendants violated Sections 10(b) and 20(a) of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), and Rule 10b-5 promulgated by the SEC, by making false and misleading statements in the Company’s periodic reports filed between March 22, 2018 and February 14, 2020. Plaintiff sought unspecified compensatory damages, including interest; rescission or a rescissory measure of damages; unspecified equitable or injunctive relief; and costs and expenses, including attorney’s fees and expert fees. On February 19, 2021, the Company moved to dismiss the Amended Complaint. Plaintiff submitted a brief in opposition to the motion to dismiss on April 23, 2021. 

 

On May 20, 2021, the parties reached a settlement in the amount of $3,600,000, subject to court approval. On July 9, 2021, Plaintiff filed an unopposed motion for preliminary approval of the settlement. On November 10, 2021, a magistrate judge recommended that the court grant the motion for preliminary approval in its entirety. The Court adopted the recommendation on May 27, 2022, and entered an order granting preliminary approval of the settlement on June 7, 2022. On August 5, 2022, the Plaintiff filed an unopposed motion for final approval. The magistrate judge held a hearing on the final approval motion on September 9, 2022. On February 16, 2023, the magistrate judge recommended that the Court grant the final approval motion in its entirety. The Court adopted that recommendation in its entirety on March 10, 2023, and terminated the case on March 13, 2023. On May 5, 2023, the Settlement Amount was transferred to plaintiff’s counsel from the escrow account established for this purpose.

 

Litigation Settlement Obligation and Insurance Recovery Receivable Pertaining to the Class Action Lawsuit and Shareholder Derivative Action

 

The attorneys’ fees for both the class action lawsuit and the shareholder derivative actions were covered and paid by our directors’ and officers’ insurance carrier, after satisfaction of our $750,000 retention. As of December 31, 2023, we had previously paid and accrued to our financial statements covered expenses totaling $750,000, and had therefore met our insurance carrier’s directors’ and officers’ retention requirement, which capped the Company’s expenses pertaining to the class action suit at $750,000. Because the Settlement Amount was transferred to counsel for plaintiff in the class action lawsuit on May 5, 2023, from the escrow account established for this purpose, we have relieved from our balance sheet, as of that date, the amounts previously owed from our directors’ and officers’ insurance carrier and to that plaintiff.

XML 38 R23.htm IDEA: XBRL DOCUMENT v3.24.1
PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)
12 Months Ended
Dec. 31, 2023
Accounting Policies [Abstract]  
Basis of Presentation and Principles of Consolidation

Basis of Presentation and Principles of Consolidation

 

The accompanying consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and applicable rules and regulations of the United States Securities and Exchange Commission (“SEC”). The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated in consolidation.

Use of Estimates

Use of Estimates

 

The preparation of financial statements in conformity with U.S. GAAP requires the use of estimates by management. Actual results could differ from these estimates.

Revenue Recognition

Revenue Recognition

 

The Company follows Accounting Standards Codification Topic 606, “Revenue from Contracts with Customers” (“ASC 606”). In accordance with ASC 606, the Company recognizes revenue when it transfers control of a promised good or service to a customer in an amount that reflects the consideration it expects to be entitled to in exchange for the good or service. The majority of the Company’s performance obligations are satisfied over-time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. Under the over-time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred and an estimate of costs to complete and resulting total estimated costs at completion.

 

The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. This is known as the over time revenue recognition model. Under the over time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred as a percentage of total estimated costs at completion of the contract.

 

The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer; in most cases this will be based on shipping terms.

 

The majority of the Company’s revenues are from long-term contracts with the U.S. government and commercial contractors. The Company accounts for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. For the Company, the contract under ASC 606 is typically established upon execution of a purchase order either in accordance with a long-term customer contract or on a standalone basis.

 

To determine the proper revenue recognition for our contracts, we must evaluate whether two or more contracts should be combined and accounted for as a single contract, and whether the combined or single contract should be accounted for as one performance obligation or more than one performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or to separate a contract into multiple performance obligations could change the amount of revenue and profit recorded in a period. A performance obligation is a promise within a contract to transfer a distinct good or service to the customer in exchange for payment and is the unit of account for recognizing revenue. The Company’s performance obligations in its contracts with customers are typically the sale of each individual product contemplated in the contract or a single performance obligation representing a series of products when the contract contains multiple products that are substantially the same. The Company has elected to account for shipping performed after control over a product has transferred to a customer as fulfillment activities. When revenue is recognized in advance of incurring shipping costs, the costs related to the shipping are accrued. Shipping costs are included in costs of sales. The Company provides warranties on many of its products; however, since customers cannot purchase such warranties separately and they do not provide services beyond standard assurances, warranties are not separate performance obligations.

 

 

A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when or as the performance obligation is satisfied. For contracts with more than one performance obligation, the Company allocates the transaction price to each performance obligation based on its estimated standalone selling price. When standalone selling prices are not available, the transaction price is allocated using an expected cost plus margin approach as pricing for such contracts is typically negotiated on the basis of cost.

 

The contracts with the U.S. government typically are subject to the Federal Acquisition Regulation (“FAR”), which provides guidance on the types of costs that are allowable in establishing prices for goods and services provided under U.S. government contracts. The pricing for commercial contractors are based on the specific negotiations with each customer and any taxes imposed by governmental authorities are excluded from revenue. The transaction price is primarily comprised of fixed consideration as the customer typically pays a fixed fee for each product sold. The Company does not adjust the amount of revenue to be recognized under a customer contract for the effects of the time value of money when the timing difference between receipt of payment and transferring the good or service is less than one year.

 

The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. The Company uses the cost-to-cost input method to measure progress for its performance obligations because it best depicts the transfer of control to the customer which occurs as the Company incurs costs on its contracts.

 

The Company generally utilizes the portfolio approach to estimate the amount of revenue to recognize for its contracts and groups contracts together that have similar characteristics. Contract gross profit margins are calculated using the estimated costs for either the individual contract or the portfolio as applicable. Significant judgment is used to determine which contracts are grouped together to form a portfolio. The portfolio approach is utilized only when the result of the accounting is not expected to be materially different than if applied to individual contracts.

 

The Company’s contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new or changes the existing enforceable rights and obligations. The effect of a contract modification on the transaction price, and the measure of progress for the performance obligation to which it relates, are recognized prospectively when the remaining goods or services are distinct and on a cumulative catch-up basis when the remaining goods or services are not distinct.

 

The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer.

 

Certain contracts contain forms of variable consideration, such as price discounts and performance penalties. The Company generally estimates variable consideration using the most likely amount based on an assessment of all available information (i.e., historical experience, current and forecasted performance) and only to the extent it is probable that a significant reversal of revenue recognized will not occur when the uncertainty is resolved.

 

In applying the cost-to-cost input method, the Company compares the actual costs incurred relative to the total estimated costs expected at completion to determine its progress towards satisfying its performance obligation and to calculate the corresponding amount of revenue to recognize. For any costs incurred that do not depict the Company’s performance in transferring control of goods or services to the customer, the Company excludes such costs from its input method measure of progress as the amounts are not reflected in the price of the contract. Costs that are inputs to the satisfaction of a performance obligation include labor, materials and subcontractors’ costs, other direct costs and an allocation of indirect costs.

 

Changes to the original estimates may be required during the life of the contract. Estimates are reviewed quarterly and the effect of any change in the total estimated costs expected at completion for a contract is reflected in revenue in the period the change becomes known. ASC 606 involves considerable use of estimates and judgment in determining revenues, costs and profits and in assigning the amounts to accounting periods. For instance, management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation, execution by our subcontractors, the availability and timing of funding from the customer, and overhead cost rates, among other variables. The Company continually evaluates all of the factors related to the assumptions, risks and uncertainties inherent with the application of the cost-to-cost input method; however, it cannot be assured that estimates will be accurate. If estimates are not accurate, or a contract is terminated which will affect estimates at completion, the Company is required to adjust revenue in the period the change is determined.

 

 

When changes are required for the estimated total revenue on a contract, these changes are recognized on a cumulative catch-up basis in the current period. A significant change in one or more estimates could affect the profitability of one or more of our performance obligations. If estimates of total costs to be incurred exceed estimates of total consideration the Company expects to receive, a provision for the remaining loss on the contract is recorded in the period in which the loss becomes evident.

 

Contract acquisition costs are those incremental costs that the Company incurs to obtain a contract with a customer that it would not have incurred if the contract had not been obtained. The Company does not typically incur contract acquisition costs or contract fulfillment costs that are subject to capitalization in accordance with the guidance in Accounting Standards Codification Subtopic 340-40, “Other Assets and Deferred Costs—Contracts with Customers.”

Government Contracts

Government Contracts

 

The Company’s government contracts are subject to the procurement rules and regulations of the U.S. government. Many of the contract terms are dictated by these rules and regulations. Specifically, cost-based pricing is determined under the FAR, which provides guidance on the types of costs that are allowable in establishing prices for goods and services under U.S. government contracts. For example, costs such as those related to charitable contributions, advertising, interest expense, and public relations are unallowable, and therefore not recoverable through sales. During and after the fulfillment of a government contract, the Company may be audited in respect to the direct and allocated indirect costs attributable thereto. These audits may result in adjustments to the Company’s contract cost, and/or revenue.

 

When contractual terms allow, the Company invoices its customers on a progress basis.

Cash

Cash

 

The Company maintains its cash in multiple financial institutions. The balances are insured by the Federal Deposit Insurance Corporation up to the limit of $250,000. From time to time, the Company’s balances may exceed these limits. As of December 31, 2023 and 2022, the Company had $4,943,628 and $3,763,608, respectively, of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly credit worthy.

Allowance for Credit Losses

Allowance for Credit Losses

 

The Company maintains an allowance for credit losses on accounts receivable and contract assets. The adequacy of the allowance is assessed quarterly through consideration of factors such as age of the receivable and identification of any anticipated collectability issues by account, if applicable. The Company writes off accounts when they are deemed to be uncollectible.

Inventory

Inventory

 

Inventories, which consist of raw materials, work in progress and finished goods, are reported at lower of cost or net realizable value using the weighted average cost method. The Company capitalizes labor, material, subcontractor and overhead costs as work-in-process for contracts where control has not yet passed to the customer. The Company regularly reviews inventory quantities on hand, future purchase commitments with its suppliers, and the estimated usability for its inventory. If the Company’s review indicates a reduction in usability below carrying value, it reduces its net inventory to its net realizable value.

Property and Equipment

Property and Equipment

 

Property and equipment are carried at cost, net of accumulated depreciation. Depreciation is computed utilizing the straight-line method over the estimated useful life of the asset. Leasehold improvements depreciation is computed over the shorter of the lease term or estimated useful life of the asset. Additions and improvements that extend the useful lives are capitalized, while repairs and maintenance are expensed as incurred. 

Leases

Leases

 

The Company leases a building and various equipment. Under ASC 842, Leases (“ASC 842”), at contract inception we determine whether the contract is or contains a lease and whether the lease should be classified as an operating or a finance lease. Operating leases are included in right-of-use (“ROU”) assets and operating lease liabilities in our consolidated balance sheets.

 

ROU assets represent the Company’s right to use an underlying asset during the lease term, and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. The determination of the length of lease terms is affected by options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. The existence of significant economic incentive is the primary consideration when assessing whether the Company is reasonably certain of exercising an option in a lease. ROU assets and liabilities are recognized at commencement date and measured as the present value of lease payments to be made over the lease term. As the interest rate implicit in the lease is not readily available for most of the Company’s leases, the Company uses its estimated incremental borrowing rate in determining the present value of lease payments. The estimated incremental borrowing rate is derived from information available at the lease commencement date. The lease ROU asset recognized at commencement is adjusted for any lease payments related to initial direct costs, prepayments, and lease incentives. The ROU asset is amortized on a straight-line basis generally over the shorter of the lease term or the estimated useful life of the underlying asset and interest on the lease liability.

 

At December 31, 2023, the Company has right of use assets and lease liabilities of $4,740,193 and $5,099,629, respectively. At December 31, 2022, the Company had right of use assets and lease liabilities of $6,526,627 and $6,895,046, respectively.

 

Finance leases are treated as the purchase of an asset on a financing basis. Assets under finance leases, which primarily represent machinery and equipment, computer equipment, and leasehold improvements, are included in property and equipment, net, with the related liabilities included in current portion of long-term debt and long-term debt on the consolidated balance sheets.

Goodwill

Goodwill

 

Goodwill represents the excess of purchase price of an acquisition over the fair value of net assets acquired. Goodwill is not amortized but instead is assessed for impairment annually as of December 31st and when events and circumstances warrant an evaluation. The Company has determined that it has a single operating and reporting unit, and assesses during its evaluation whether it believes it is more likely than not that the fair value of this reporting unit is greater than or less than its carrying amount by comparing the fair value of this reporting unit with its carrying value. If the carrying amount of a reporting unit exceeds the reporting unit’s fair value, the amount by which the carrying value exceeds the fair value is recognized as an impairment loss. The Company performed its annual impairment assessment of goodwill as of December 31, 2023 and concluded that goodwill was not impaired. The Company assessed goodwill using qualitative factors to determine whether it was more likely than not that the fair value is less than its carrying value (step 0) and determined that no further testing was required.

Long-Lived Assets

Long-Lived Assets

 

The Company reviews its long-lived assets for impairment whenever changes in circumstances indicate that the carrying amount of an asset may not be fully recoverable by comparing the estimated undiscounted cash flows expected to result from the use of the asset and the estimated amounts expected to be realized upon the asset’s eventual disposition with the carrying value of the asset. If the carrying amount of the asset exceeds the aforementioned estimated expected undiscounted cash flows and estimated expected disposition proceeds, the Company measures the amount of the impairment to record by comparing the carrying amount of the asset with its estimated fair value. As of December 31, 2023, the Company determined that long-lived assets were not impaired.

Fair Value

Fair Value

 

The fair value hierarchy has three levels based on the reliability of the inputs used to determine fair value. Level 1 refers to fair values determined based on quoted prices in active markets for identical assets. Level 2 refers to fair values estimated using significant other observable inputs and Level 3 includes fair values estimated using significant unobservable inputs.

 

At December 31, 2023 and 2022, the fair values of the Company’s current assets and current liabilities approximated their carrying values because of the short-term nature of these instruments.

 

The carrying value of the line of credit and long-term debt approximates fair value (level 2) as the interest rate is based on market quotes.

Earnings per Share

Earnings per Share

 

The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the treasury stock method in the calculation of earnings per share. Net income per common share is computed by dividing net income by the weighted average number of common shares outstanding during the period.

 

Basic and diluted income per common share is computed using the weighted average number of common shares outstanding. Diluted income per common share is adjusted for the incremental shares attributed to unvested RSUs. There were 160,742 and 0 incremental shares used in the calculation of diluted income per common share for the years ended December 31, 2023 and 2022, respectively.

Income Taxes

Income Taxes

 

Income taxes are accounted for under the asset and liability method whereby deferred tax assets and liabilities are recognized for future tax consequences attributable to the temporary differences between the consolidated financial statements carrying amounts of assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the period that includes the enactment date. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company recognizes the effect of an income tax position only if, based on its merits, the position is more likely than not to be sustained on audit by the taxing authorities.

 

The Company’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.

Stock-Based Compensation

Stock-Based Compensation

 

The Company accounts for stock-based compensation in accordance with ASC 718, Compensation - Stock Compensation (“ASC 718”). ASC 718 establishes accounting for stock-based awards exchanged for employee and nonemployees. Under the provisions of ASC 718, stock-based compensation cost is measured at the grant date, based on the fair value of the award on the grant date, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the equity grant).

 

Restricted stock awards are granted at the discretion of the Company’s board of directors. These awards are restricted as to the transfer of ownership and generally vest over the requisite service period. The Company recognizes forfeitures at the time the forfeiture occurs.

Research and Development

Research and Development

 

Customer-funded research and development (“R&D”) costs are incurred pursuant to contractual arrangements requiring us to provide a product meeting certain defined performance or other specifications, such as designs, and such contractual arrangements are accounted for principally by the over time revenue recognition method. Customer-funded R&D is included in the “Revenue” and “Cost of sales” line items in our Consolidated Statements of Operations.

Prior Period Reclassification

Prior Period Reclassification

 

Certain amounts in prior periods have been reclassified to conform with current period presentation within the Consolidated Statement of Shareholder’s Equity and the Consolidated Statements of Cash Flows.

Recently Issued Accounting Standards

Recently Issued Accounting Standards – Adopted

 

In 2023, the Company adopted ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments (ASU 2016-13), using a modified retrospective method, which did not result in a material impact on the Company’s consolidated financial statements.

 

Recently Issued Accounting Standards – Not Adopted

 

In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which focuses on the rate reconciliation and income taxes paid. ASU No. 2023-09 requires a public business entity (“PBE”) to disclose, on an annual basis, a tabular rate reconciliation using both percentages and currency amounts, broken out into specified categories with certain reconciling items further broken out by nature and jurisdiction to the extent those items exceed a specified threshold. In addition, all entities are required to disclose income taxes paid, net of refunds received disaggregated by federal, state/local, and foreign and by jurisdiction if the amount is at least 5% of total income tax payments, net of refunds received. For PBEs, the new standard is effective for annual periods beginning after December 15, 2024, with early adoption permitted. An entity may apply the amendments in this ASU prospectively by providing the revised disclosures for the period ending December 31, 2025 and continuing to provide the pre-ASU disclosures for the prior periods, or may apply the amendments retrospectively by providing the revised disclosures for all period presented. We expect this ASU to only impact our disclosures with no impacts to our results of operations, cash flows, and financial condition.

XML 39 R24.htm IDEA: XBRL DOCUMENT v3.24.1
REVENUE (Tables)
12 Months Ended
Dec. 31, 2023
Revenue from Contract with Customer [Abstract]  
The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method:

The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method:

 

   Year Ended 
   December 31,
2023
   December 31,
2022
 
Government subcontracts  $69,672,602   $69,023,729 
Prime government contracts   11,842,145    8,663,308 
Commercial contracts   4,951,574    5,648,727 
Total  $86,466,321   $83,335,764 

 

   Year Ended 
   December 31, 2023   December 31, 2022 
Revenue recognized using over time revenue recognition model  $82,713,436   $75,911,241 
Revenue recognized using point in time revenue recognition model   3,752,885    7,424,523 
Total  $86,466,321   $83,335,764 
Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022:

Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022:

 

   Years Ended 
   December 31,
2023
   December 31,
2022
 
Favorable adjustments  $2,601,615   $4,962,675 
(Unfavorable) adjustments   (4,052,117)   (3,207,099)
Net adjustments  $(1,450,502)  $1,755,576 
XML 40 R25.htm IDEA: XBRL DOCUMENT v3.24.1
CONTRACT ASSETS AND LIABILITIES (Tables)
12 Months Ended
Dec. 31, 2023
Contract Assets And Liabilities  
Schedule of contract assets and liabilities

 

  

December 31,

 2023

   December 31,
2022
  December 31,
2021
 
Contract assets  $35,312,068   $27,384,540  24,459,339  
               
Contract liabilities   5,937,629    6,001,726  5,122,766  
XML 41 R26.htm IDEA: XBRL DOCUMENT v3.24.1
ACCOUNTS RECEIVABLE (Tables)
12 Months Ended
Dec. 31, 2023
Receivables [Abstract]  
Accounts receivable consists of trade receivables as follows:

Accounts receivable consists of trade receivables as follows:

 

  

December 31,

 2023

   December 31,
2022
 
Billed receivables  $4,444,504   $5,139,757 
Less: allowance for expected credit losses   (92,308)   (281,985)
   Total accounts receivable, net  $4,352,196   $4,857,772 
XML 42 R27.htm IDEA: XBRL DOCUMENT v3.24.1
INVENTORY (Tables)
12 Months Ended
Dec. 31, 2023
Inventory Disclosure [Abstract]  
The components of inventory consist of the following:

The components of inventory consist of the following: 

 

             
   December 31, 
   2023   2022 
Raw materials  $1,187,008   $1,892,157 
Work in progress   75,795    685,438 
Finished goods (Includes completed components)   1,617,077    3,038,859 
       Gross inventory  $2,879,879   $5,616,454 
       Inventory reserves   (1,443,233)   (3,123,386)
       Inventory, net  $1,436,647   $2,493,069 
XML 43 R28.htm IDEA: XBRL DOCUMENT v3.24.1
PROPERTY AND EQUIPMENT (Tables)
12 Months Ended
Dec. 31, 2023
Property, Plant and Equipment [Abstract]  
The components of property and equipment consist of the following:

The components of property and equipment consist of the following:

 

   December 31,   Estimated 
   2023   2022   Useful Life (years) 
Machinery and equipment  $4,004,779   $3,978,662   5 to 7 
Computer equipment   4,242,437    4,191,040   5 
Furniture and fixtures   709,350    709,350   7 
Automobiles and trucks   13,162    13,162   5 
Leasehold improvements   2,692,552    2,629,615    Lesser of lease term or 10 years 
Total gross property and equipment   11,662,280    11,521,829     
Less accumulated depreciation and amortization   (10,868,224)   (10,397,273)    
Total property and equipment, net  $794,056   $1,124,556     
XML 44 R29.htm IDEA: XBRL DOCUMENT v3.24.1
DEBT (Tables)
12 Months Ended
Dec. 31, 2023
Debt Disclosure [Abstract]  
The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows:

The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows:

 

Year ending December 31,     
2024   $44,498 
2025    26,483 
Total   $70,981 
XML 45 R30.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES (Tables)
12 Months Ended
Dec. 31, 2023
Leases  
Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows:

Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows:

 

Year ending December 31,        
2024     $ 2,228,784  
2025       2,283,354  
2026       850,276  
2027       111,065  
2028       9,226  
Total undiscounted operating lease payments       5,482,705  
Less imputed interest       (383,076 )
Present value of operating lease payments     $ 5,099,629  
The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022:

The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022:

 

   2023   2022 
Assets          
ROU assets, net  $4,740,193   $6,526,627 
           
Liabilities          
Current operating lease liabilities  $1,999,058   $1,817,811 
Long-term operating lease liabilities   3,100,571    5,077,235 
Total lease liabilities  $5,099,629   $6,895,046 
XML 46 R31.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES (Tables)
12 Months Ended
Dec. 31, 2023
Income Tax Disclosure [Abstract]  
The (benefit) for income taxes consists of the following:

The (benefit) for income taxes consists of the following:

 

Year ended December 31,  2023   2022 
Current:          
State  $14,248   $21,332 
Deferred:          
    Federal   (12,608,425)   (6,428,448)
State   (755,237)   (146,015)
Total  $(13,349,414)  $(6,553,131)
The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows:

The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows:

 

December 31,  2023   2022 
Taxes computed at the federal statutory rate  $808,876   $550,850 
State income tax, net   (585,381)   (98,499)
Research and development tax credit   (133,089)   (190,656)
Change in valuation allowance   (13,531,626)   (6,616,952)
Other   88,308    51,696 
Accrued loss reserve adjustment       (253,738)
Permanent differences   3,498    4,168 
Benefit for income taxes  $(13,349,414)  $(6,553,131)
The components of deferred income tax assets and liabilities are as follows at December 31:

The components of deferred income tax assets and liabilities are as follows at December 31:

 

Deferred Tax Assets:  2023   2022
(As Restated)
 
Allowance for credit losses  $20,632   $60,100 
Capitalized R&D   1,420,263    864,969 
Credit carryforwards   2,278,642    2,193,146 
Inventory reserve   350,073    722,991 
Accrued payroll   151,986    267,819 
Loss contracts reserve   75,402    46,205 
Restricted stock   94,809    92,677 
Acquisition costs   74,136    77,762 
Lease liability   1,139,836    1,469,551 
Accrued legal       159,849 
Disallowed interest expense   1,067,063    943,089 
Net operating loss carryforward   16,356,545    17,513,901 
Other   45,057    20,659 
Deferred tax assets   23,074,444    24,432,718 
           
Valuation allowance   (569,143)   (14,740,034)
           
Deferred Tax Liabilities:          
Prepaid expenses   143,126    207,980 
Revenue recognition    1,224,106    1,341,105 
Property and equipment   140,449    178,107 
ROU asset   1,059,496    1,391,029 
Deferred tax liabilities  $2,567,177   $3,118,221 
Net deferred tax assets  $19,938,124   $6,574,463 
Accordingly, we have restated the balances as previously reported, where needed, as follows:

During our review of the Company’s deferred income tax positions as of December 31, 2023, we determined that the following adjustments are needed to our previously reported December 31, 2022 deferred tax assets and liabilities balances, with no impact to our net deferred tax assets, due to the inadequate review, assessment of and reporting of the Company’s temporary differences between book and taxable income. More specifically, the adjustments are required due to computational errors and incomplete analyses. Accordingly, we have restated the balances as previously reported, where needed, as follows:

 

Deferred Tax Assets:  2022 (as Previously Reported)   Restatement Adjustments   2022 (As Restated) 
Allowance for credit losses  $60,100   $   $60,100 
Capitalized R&D   864,969        864,969 
Credit carryforwards   2,193,146        2,193,146 
Inventory reserve   1,130,788    (407,797)   722,991 
Accrued payroll   267,819        267,819 
Loss contracts reserve   46,205        46,205 
Restricted stock   160,989    (68,312)   92,677 
Acquisition costs   77,762        77,762 
Lease liability   1,469,551        1,469,551 
Accrued legal   159,849        159,849 
Disallowed interest expense   1,268,226    (325,137)   943,089 
Net operating loss carryforward   19,493,530    (1,979,629)   17,513,901 
Other   20,659        20,659 
Deferred tax assets   27,213,593    (2,780,875)   24,432,718 
                
Valuation allowance   (14,916,923)   176,889    (14,740,034)
                
Deferred Tax Liabilities:               
Prepaid expenses   207,980        207,980 
Revenue recognition   3,966,404    (2,625,299)   1,341,105 
Property and equipment   156,794    21,313    178,107 
ROU asset   1,391,029        1,391,029 
Deferred tax liabilities  $5,722,207   $(2,603,986)  $3,118,221 
Net deferred tax assets  $6,574,463   $   $6,574,463 
XML 47 R32.htm IDEA: XBRL DOCUMENT v3.24.1
ACCRUED EXPENSES (Tables)
12 Months Ended
Dec. 31, 2023
Payables and Accruals [Abstract]  
Accrued expenses consists of the following:

Accrued expenses consists of the following:

 

  

December 31,

 2023

   December 31,
2022
 
           
Accrued purchases  $7,132,847   $4,153,237 
Accrued payroll   1,143,913    1,285,122 
Accrued insurance   855,190    837,371 
Accrued interest   601,200    703,354 
Accrued professional fees and other
accrued expenses
   542,545    365,506 
   Total  $10,275,695   $7,344,590 
XML 48 R33.htm IDEA: XBRL DOCUMENT v3.24.1
STOCK-BASED COMPENSATION (Tables)
12 Months Ended
Dec. 31, 2023
Share-Based Payment Arrangement [Abstract]  
Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:

Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:

 

   2023   2022 
Cost of sales  $65,470   $36,794 
           
Selling, general and administrative   705,156    319,084 
Total stock-based compensation expense  $770,626   $355,878 
The following table summarizes activity related to outstanding RSUs

The following table summarizes activity related to outstanding RSUs for the year ended December 31, 2023:

 

    RSUs  

Weighted Average 

Grant Date 

Fair Value
of RSUs 

 
Non-vested – January 1, 2023       $ 
Granted    173,718   $3.43 
Vested    (139,969)  $3.43 
Forfeited    (33,749)  $3.42 
Non-vested – December 31, 2023       $ 
The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023:

The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023:

 

    Restricted Stock Awards  

Weighted Average 

Grant Date 

Fair Value of

Restricted Stock

Awards 

 
Non-vested – January 1, 2023    130,583   $2.37 
Granted    111,447   $3.82 
Vested    (39,331)  $3.07 
Forfeited    (35,628)  $2.04 
Non-vested – December 31, 2023    167,071   $3.25 
The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023:

The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023:

 

    PRSAs  

Weighted Average 

Grant Date 

Fair Value
of PRSAs 

 
Non-vested – January 1, 2023    31,737   $2.65 
Granted    48,050   $3.27 
Vested    (20,971)  $2.65 
Forfeited    (10,766)  $2.65 
Non-vested – December 31, 2023    48,050   $3.27 
XML 49 R34.htm IDEA: XBRL DOCUMENT v3.24.1
PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Accounting Policies [Abstract]    
FDIC Insured balance $ 250,000  
Cash uninsured amount 4,943,628 $ 3,763,608
Operating lease right-of-use assets 4,740,193 6,526,627
Operating lease liabilities $ 5,099,629 $ 6,895,046
Incremental shares used in calculation of diluted income per common share 160,742 0
XML 50 R35.htm IDEA: XBRL DOCUMENT v3.24.1
The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method: (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Disaggregation of Revenue [Line Items]    
Revenue $ 86,466,321 $ 83,335,764
Transferred over Time [Member]    
Disaggregation of Revenue [Line Items]    
Revenue 82,713,436 75,911,241
Transferred at Point in Time [Member]    
Disaggregation of Revenue [Line Items]    
Revenue 3,752,885 7,424,523
Government subcontracts [Member]    
Disaggregation of Revenue [Line Items]    
Revenue 69,672,602 69,023,729
Prime government contracts [Member]    
Disaggregation of Revenue [Line Items]    
Revenue 11,842,145 8,663,308
Commercial contracts [Member]    
Disaggregation of Revenue [Line Items]    
Revenue $ 4,951,574 $ 5,648,727
XML 51 R36.htm IDEA: XBRL DOCUMENT v3.24.1
Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022: (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Net adjustments $ (1,450,502) $ 1,755,576
Favorable adjustments [Member]    
Net adjustments 2,601,615 4,962,675
Unfavorable adjustments [Member]    
Net adjustments $ (4,052,117) $ (3,207,099)
XML 52 R37.htm IDEA: XBRL DOCUMENT v3.24.1
REVENUE (Details Narrative)
$ in Millions
Dec. 31, 2023
USD ($)
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 118.2
XML 53 R38.htm IDEA: XBRL DOCUMENT v3.24.1
Schedule of contract assets and liabilities (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Contract Assets And Liabilities      
Contract assets $ 35,312,068 $ 27,384,540 $ 24,459,339
Contract liabilities $ 5,937,629 $ 6,001,726 $ 5,122,766
XML 54 R39.htm IDEA: XBRL DOCUMENT v3.24.1
CONTRACT ASSETS AND LIABILITIES (Details Narrative) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Contract Assets And Liabilities    
Increase in contract assets $ 7,927,528  
Decrease in contract liabilities 64,097  
Revenue recognized that was included in contract liabilities $ 3,816,336 $ 3,598,601
XML 55 R40.htm IDEA: XBRL DOCUMENT v3.24.1
Accounts receivable consists of trade receivables as follows: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Receivables [Abstract]    
Billed receivables $ 4,444,504 $ 5,139,757
Less: allowance for expected credit losses (92,308) (281,985)
   Total accounts receivable, net $ 4,352,196 $ 4,857,772
XML 56 R41.htm IDEA: XBRL DOCUMENT v3.24.1
The components of inventory consist of the following: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Inventory Disclosure [Abstract]    
Raw materials $ 1,187,008 $ 1,892,157
Work in progress 75,795 685,438
Finished goods (Includes completed components) 1,617,077 3,038,859
       Gross inventory 2,879,879 5,616,454
       Inventory reserves (1,443,233) (3,123,386)
       Inventory, net $ 1,436,647 $ 2,493,069
XML 57 R42.htm IDEA: XBRL DOCUMENT v3.24.1
The components of property and equipment consist of the following: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 11,662,280 $ 11,521,829
Less accumulated depreciation and amortization (10,868,224) (10,397,273)
Property and equipment, net 794,056 1,124,556
Machinery and Equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 4,004,779 3,978,662
Machinery and Equipment [Member] | Minimum [Member]    
Property, Plant and Equipment [Line Items]    
Estimated useful life 5 years  
Machinery and Equipment [Member] | Maximum [Member]    
Property, Plant and Equipment [Line Items]    
Estimated useful life 7 years  
Computer Equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 4,242,437 4,191,040
Estimated useful life 5 years  
Furniture and Fixtures [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 709,350 709,350
Estimated useful life 7 years  
Vehicles [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 13,162 13,162
Estimated useful life 5 years  
Leasehold Improvements [Member]    
Property, Plant and Equipment [Line Items]    
Property, Plant and Equipment, Gross $ 2,692,552 $ 2,629,615
Estimated useful life 10 years  
XML 58 R43.htm IDEA: XBRL DOCUMENT v3.24.1
PROPERTY AND EQUIPMENT (Details Narrative) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Property, Plant and Equipment [Member]    
Impairment Effects on Earnings Per Share [Line Items]    
Depreciation expenses $ 470,950 $ 563,096
XML 59 R44.htm IDEA: XBRL DOCUMENT v3.24.1
GOODWILL (Details Narrative) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Dec. 30, 2018
Restructuring Cost and Reserve [Line Items]      
Goodwill $ 1,784,254 $ 1,784,254  
Welding Metallurgy Inc [Member]      
Restructuring Cost and Reserve [Line Items]      
Goodwill     $ 1,784,254
XML 60 R45.htm IDEA: XBRL DOCUMENT v3.24.1
LINE OF CREDIT (Details Narrative)
12 Months Ended
Feb. 20, 2024
USD ($)
Mar. 23, 2023
USD ($)
Nov. 10, 2022
USD ($)
Aug. 19, 2022
USD ($)
Apr. 12, 2022
USD ($)
Oct. 28, 2021
USD ($)
Dec. 31, 2023
USD ($)
Dec. 31, 2022
USD ($)
Mar. 24, 2016
USD ($)
Debt Instrument [Line Items]                  
Current portion of line of credit             $ 2,400,000 $ 1,200,000  
Line of credit, net of current portion             $ 17,640,000 19,800,000  
Bank United [Member]                  
Debt Instrument [Line Items]                  
Maximum leverage ratio, period 1             7.30    
Maximum leverage ratio, period 2             6.30    
Maximum leverage ratio, period 3             5.0    
Maximum leverage ratio, period 4             4.0    
Bank United [Member] | Debt Instrument, Redemption, Period One [Member]                  
Debt Instrument [Line Items]                  
Minimum debt service coverage ratio future periods             1.5    
Bank United [Member] | Debt Instrument, Redemption, Period Two [Member]                  
Debt Instrument [Line Items]                  
Minimum debt service coverage ratio future periods             0.95    
Bank United [Member] | Debt Instrument, Redemption, Period Three [Member]                  
Debt Instrument [Line Items]                  
Minimum debt service coverage ratio future periods             1.5    
Bank United [Member] | Minimum [Member]                  
Debt Instrument [Line Items]                  
Net income required under agreement             $ 1.00    
Minimum adjusted EBITDA             1,000,000    
Revolving Credit Facility [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity                 $ 30,000,000
Revolving Credit Facility [Member] | Bank United [Member]                  
Debt Instrument [Line Items]                  
Capitalized fee first installment   $ 250,000              
Line of credit oustanding             20,040,000 $ 21,000,000  
Current portion of line of credit             2,400,000    
Line of credit, net of current portion             $ 17,640,000    
Revolving Credit Facility [Member] | Bank United [Member] | Period One [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity   20,520,000              
Revolving Credit Facility [Member] | Bank United [Member] | Period One [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity $ 19,800,000                
Revolving Credit Facility [Member] | Bank United [Member] | Period Two [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity   19,800,000              
Revolving Credit Facility [Member] | Bank United [Member] | Period Two [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity 19,080,000                
Revolving Credit Facility [Member] | Bank United [Member] | Period Three [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity   19,080,000              
Revolving Credit Facility [Member] | Bank United [Member] | Period Three [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity 18,360,000                
Revolving Credit Facility [Member] | Bank United [Member] | Period Four [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity   18,360,000              
Revolving Credit Facility [Member] | Bank United [Member] | Period Four [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity 17,640,000                
Revolving Credit Facility [Member] | Bank United [Member] | Period Five [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity   17,640,000              
Revolving Credit Facility [Member] | Bank United [Member] | Period Five [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity 16,920,000                
Revolving Credit Facility [Member] | Bank United [Member] | First Installment [Member]                  
Debt Instrument [Line Items]                  
Capitalized fee first installment   116,667              
Revolving Credit Facility [Member] | Bank United [Member] | Second Installment [Member]                  
Debt Instrument [Line Items]                  
Capitalized fee first installment   $ 133,333              
Revolving Credit Facility [Member] | Bank United [Member] | Period Six [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity 16,200,000                
Revolving Credit Facility [Member] | Bank United [Member] | Period Seven [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of credit facility, maximum borrowing capacity $ 15,480,000                
Term loan [Member]                  
Debt Instrument [Line Items]                  
Debt instrument, face amount                 $ 10,000,000
Term loan [Member] | Bank United [Member]                  
Debt Instrument [Line Items]                  
Repayment of principal under agreement     $ 200,000   $ 750,000 $ 750,000      
Repayment of principal installment under agreement     $ 250,000   250,000        
Debt Instrument, Periodic Payment, Principal         $ 200,000        
Debt Instrument, Basis Spread on Variable Rate     3.50%            
Term loan [Member] | Bank United [Member] | Prime Rate [Member]                  
Debt Instrument [Line Items]                  
Debt Instrument, Basis Spread on Variable Rate         2.50%        
Term loan [Member] | Bank United [Member] | Prime Rate One [Member]                  
Debt Instrument [Line Items]                  
Debt Instrument, Basis Spread on Variable Rate         5.00%        
Term loan [Member] | Bank United [Member] | Prime Rate Period Two [Member]                  
Debt Instrument [Line Items]                  
Debt Instrument, Basis Spread on Variable Rate         6.00%        
Term loan [Member] | Bank United [Member] | Prime Rate Period Three [Member]                  
Debt Instrument [Line Items]                  
Debt Instrument, Basis Spread on Variable Rate         7.00%        
Term loan [Member] | Bank United [Member] | Prime Rate Period Four [Member]                  
Debt Instrument [Line Items]                  
Debt Instrument, Basis Spread on Variable Rate         8.00%        
Revolving Loan and Term Loan [Member] | Bank United [Member]                  
Debt Instrument [Line Items]                  
Line of Credit Facility, Expiration Date   Nov. 30, 2024 Nov. 30, 2023   Sep. 30, 2023        
Losses Incurred Under Agreement       $ 566,025          
Reserve Under Agreement       367,045          
Expenses Under Agreement       $ 795,997          
Revolving Loan and Term Loan [Member] | Bank United [Member] | Subsequent Event [Member]                  
Debt Instrument [Line Items]                  
Line of Credit Facility, Expiration Date Aug. 31, 2025                
Revolving Loan and Term Loan [Member] | Bank United [Member] | Maximum [Member]                  
Debt Instrument [Line Items]                  
Maximum leverage ratio       5.0          
Revolving Loan and Term Loan [Member] | Bank United [Member] | Prime Rate [Member]                  
Debt Instrument [Line Items]                  
Debt Instrument, Basis Spread on Variable Rate             3.50%    
XML 61 R46.htm IDEA: XBRL DOCUMENT v3.24.1
The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows: (Details)
Dec. 31, 2023
USD ($)
Debt Disclosure [Abstract]  
2024 $ 44,498
2025 26,483
Total $ 70,981
XML 62 R47.htm IDEA: XBRL DOCUMENT v3.24.1
DEBT (Details Narrative) - USD ($)
12 Months Ended
Mar. 23, 2023
Nov. 10, 2022
Apr. 12, 2022
Oct. 28, 2021
Dec. 31, 2023
Dec. 31, 2022
Mar. 24, 2016
Line of Credit Facility [Line Items]              
Payments of debt issuance costs         $ 54,334  
Financing leases and notes payable         70,981 207,414  
Financing leases and notes payable current         $ 44,498 136,433  
Prime Rate [Member]              
Line of Credit Facility [Line Items]              
Debt Instrument, Interest Rate, Stated Percentage         8.50%    
Bank United [Member]              
Line of Credit Facility [Line Items]              
Commitment and agent fees         $ 62,833    
Payments of debt issuance costs         962,000    
Debt issuance costs included in other assets         $ 82,000 131,000  
Revolving Loan and Term Loan [Member] | Bank United [Member]              
Line of Credit Facility [Line Items]              
Line of Credit Facility, Expiration Date Nov. 30, 2024 Nov. 30, 2023 Sep. 30, 2023        
Interest rate         12.00%    
Revolving Loan and Term Loan [Member] | Bank United [Member] | Prime Rate [Member]              
Line of Credit Facility [Line Items]              
Prime rate Plus         3.50%    
Revolving Credit Facility [Member]              
Line of Credit Facility [Line Items]              
Line of credit facility, maximum borrowing capacity             $ 30,000,000
Revolving Credit Facility [Member] | Bank United [Member]              
Line of Credit Facility [Line Items]              
Amendment fee $ 250,000            
Revolving Credit Facility [Member] | Bank United [Member] | Period One [Member]              
Line of Credit Facility [Line Items]              
Line of credit facility, maximum borrowing capacity 20,520,000            
Revolving Credit Facility [Member] | Bank United [Member] | Period Two [Member]              
Line of Credit Facility [Line Items]              
Line of credit facility, maximum borrowing capacity 19,800,000            
Revolving Credit Facility [Member] | Bank United [Member] | Period Three [Member]              
Line of Credit Facility [Line Items]              
Line of credit facility, maximum borrowing capacity 19,080,000            
Revolving Credit Facility [Member] | Bank United [Member] | Period Four [Member]              
Line of Credit Facility [Line Items]              
Line of credit facility, maximum borrowing capacity 18,360,000            
Revolving Credit Facility [Member] | Bank United [Member] | Period Five [Member]              
Line of Credit Facility [Line Items]              
Line of credit facility, maximum borrowing capacity 17,640,000            
Revolving Credit Facility [Member] | Bank United [Member] | First Installment [Member]              
Line of Credit Facility [Line Items]              
Amendment fee 116,667            
Revolving Credit Facility [Member] | Bank United [Member] | Second Installment [Member]              
Line of Credit Facility [Line Items]              
Amendment fee $ 133,333            
Term loan [Member]              
Line of Credit Facility [Line Items]              
Aggregate principal balance           $ 1,583,333  
Term loan [Member] | Bank United [Member]              
Line of Credit Facility [Line Items]              
Repayment of principal under agreement   $ 200,000 $ 750,000 $ 750,000      
Repayment of principal installment under agreement   $ 250,000 250,000        
Prime rate Plus   3.50%          
Debt Instrument, Periodic Payment, Principal     $ 200,000        
Term loan [Member] | Bank United [Member] | Prime Rate [Member]              
Line of Credit Facility [Line Items]              
Prime rate Plus     2.50%        
Term loan [Member] | Bank United [Member] | Prime Rate One [Member]              
Line of Credit Facility [Line Items]              
Prime rate Plus     5.00%        
Term loan [Member] | Bank United [Member] | Prime Rate Period Two [Member]              
Line of Credit Facility [Line Items]              
Prime rate Plus     6.00%        
Term loan [Member] | Bank United [Member] | Prime Rate Period Three [Member]              
Line of Credit Facility [Line Items]              
Prime rate Plus     7.00%        
Term loan [Member] | Bank United [Member] | Prime Rate Period Four [Member]              
Line of Credit Facility [Line Items]              
Prime rate Plus     8.00%        
XML 63 R48.htm IDEA: XBRL DOCUMENT v3.24.1
Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Leases    
2024 $ 2,228,784  
2025 2,283,354  
2026 850,276  
2027 111,065  
2028 9,226  
Total undiscounted operating lease payments 5,482,705  
Less imputed interest (383,076)  
Present value of operating lease payments $ 5,099,629 $ 6,895,046
XML 64 R49.htm IDEA: XBRL DOCUMENT v3.24.1
The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Assets    
ROU assets, net $ 4,740,193 $ 6,526,627
Liabilities    
Current operating lease liabilities 1,999,058 1,817,811
Long-term operating lease liabilities 3,100,571 5,077,235
Total lease liabilities $ 5,099,629 $ 6,895,046
XML 65 R50.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES (Details Narrative) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Leases    
Operating lease expense $ 2,142,338 $ 2,101,596
Weighted average remaining lease term operating leases 2 years 6 months  
Weighted average discount rate for its operating leases 5.43%  
XML 66 R51.htm IDEA: XBRL DOCUMENT v3.24.1
The (benefit) for income taxes consists of the following: (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Current:    
State $ 14,248 $ 21,332
Deferred:    
    Federal (12,608,425) (6,428,448)
State (755,237) (146,015)
Total $ (13,349,414) $ (6,553,131)
XML 67 R52.htm IDEA: XBRL DOCUMENT v3.24.1
The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows: (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income Tax Disclosure [Abstract]    
Taxes computed at the federal statutory rate $ 808,876 $ 550,850
State income tax, net (585,381) (98,499)
Research and development tax credit (133,089) (190,656)
Change in valuation allowance (13,531,626) (6,616,952)
Other 88,308 51,696
Accrued loss reserve adjustment (253,738)
Permanent differences 3,498 4,168
Benefit for income taxes $ (13,349,414) $ (6,553,131)
XML 68 R53.htm IDEA: XBRL DOCUMENT v3.24.1
The components of deferred income tax assets and liabilities are as follows at December 31: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Deferred Tax Assets:    
Allowance for credit losses $ 20,632 $ 60,100
Capitalized R&D 1,420,263 864,969
Credit carryforwards 2,278,642 2,193,146
Inventory reserve 350,073 722,991
Accrued payroll 151,986 267,819
Loss contracts reserve 75,402 46,205
Restricted stock 94,809 92,677
Acquisition costs 74,136 77,762
Lease liability 1,139,836 1,469,551
Accrued legal 159,849
Disallowed interest expense 1,067,063 943,089
Net operating loss carryforward 16,356,545 17,513,901
Other 45,057 20,659
Deferred tax assets 23,074,444 24,432,718
Valuation allowance (569,143) (14,740,034)
Deferred Tax Liabilities:    
Prepaid expenses 143,126 207,980
Revenue recognition 1,224,106 1,341,105
Property and equipment 140,449 178,107
ROU asset 1,059,496 1,391,029
Deferred tax liabilities 2,567,177 3,118,221
Net deferred tax assets $ 19,938,124 $ 6,574,463
XML 69 R54.htm IDEA: XBRL DOCUMENT v3.24.1
Accordingly, we have restated the balances as previously reported, where needed, as follows: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Deferred Tax Assets:    
Allowance for credit losses $ 20,632 $ 60,100
Capitalized R&D 1,420,263 864,969
Credit carryforwards 2,278,642 2,193,146
Inventory reserve 350,073 722,991
Accrued payroll 151,986 267,819
Loss contracts reserve 75,402 46,205
Restricted stock 94,809 92,677
Acquisition costs 74,136 77,762
Lease liability 1,139,836 1,469,551
Accrued legal 159,849
Disallowed interest expense 1,067,063 943,089
Net operating loss carryforward 16,356,545 17,513,901
Other 45,057 20,659
Deferred tax assets 23,074,444 24,432,718
Valuation allowance (569,143) (14,740,034)
Deferred Tax Liabilities:    
Prepaid expenses 143,126 207,980
Revenue recognition 1,224,106 1,341,105
Property and equipment 140,449 178,107
ROU asset 1,059,496 1,391,029
Deferred tax liabilities 2,567,177 3,118,221
Net deferred tax assets $ 19,938,124 6,574,463
Previously Reported [Member]    
Deferred Tax Assets:    
Allowance for credit losses   60,100
Capitalized R&D   864,969
Credit carryforwards   2,193,146
Inventory reserve   1,130,788
Accrued payroll   267,819
Loss contracts reserve   46,205
Restricted stock   160,989
Acquisition costs   77,762
Lease liability   1,469,551
Accrued legal   159,849
Disallowed interest expense   1,268,226
Net operating loss carryforward   19,493,530
Other   20,659
Deferred tax assets   27,213,593
Valuation allowance   (14,916,923)
Deferred Tax Liabilities:    
Prepaid expenses   207,980
Revenue recognition   3,966,404
Property and equipment   156,794
ROU asset   1,391,029
Deferred tax liabilities   5,722,207
Net deferred tax assets   6,574,463
Revision of Prior Period, Adjustment [Member]    
Deferred Tax Assets:    
Allowance for credit losses  
Capitalized R&D  
Credit carryforwards  
Inventory reserve   (407,797)
Accrued payroll  
Loss contracts reserve  
Restricted stock   (68,312)
Acquisition costs  
Lease liability  
Accrued legal  
Disallowed interest expense   (325,137)
Net operating loss carryforward   (1,979,629)
Other  
Deferred tax assets   (2,780,875)
Valuation allowance   176,889
Deferred Tax Liabilities:    
Prepaid expenses  
Revenue recognition   (2,625,299)
Property and equipment   21,313
ROU asset  
Deferred tax liabilities   (2,603,986)
Net deferred tax assets  
XML 70 R55.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES (Details Narrative) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Operating Loss Carryforwards [Line Items]    
Valuation allowance released $ 14,170,891  
Valuation allowance balance 569,143 $ 14,740,034
Income tax benefit $ (13,349,414) $ (6,553,131)
Effective tax benefit rate (346.60%)  
Internal Revenue Service (IRS) [Member]    
Operating Loss Carryforwards [Line Items]    
Net operating losses $ 74,700,000  
Internal Revenue Service (IRS) [Member] | Tax Year 2018 [Member]    
Operating Loss Carryforwards [Line Items]    
Net operating losses $ 14,400,000  
Offset taxable income for regular tax purpose (percent) 80.00%  
Internal Revenue Service (IRS) [Member] | Tax Year 2017 [Member]    
Operating Loss Carryforwards [Line Items]    
Net operating losses $ 60,300,000  
Offset taxable income for regular tax purpose (percent) 100.00%  
State and Local Jurisdiction [Member]    
Operating Loss Carryforwards [Line Items]    
Net operating losses $ 17,300,000  
NOL description The state NOLs begin to expire in 2034  
Domestic Tax Authority [Member]    
Operating Loss Carryforwards [Line Items]    
NOL description As a result of the Tax Cuts and Jobs Act of 2017 and the Coronavirus Aid, Relief, and Economic Security Act of 2020, federal NOLs arising before January 1, 2018, and NOLs arising after January 1, 2018, are subject to different rules. Our pre-2018 NOLs totaled approximately $60.3 million; these NOLs will expire in varying amounts from 2034 through 2039, if not utilized, and can offset 100% of future taxable income for regular tax purposes. Our NOLs arising in 2018, 2019 and 2020 can generally be carried back five years, carried forward indefinitely and can offset 100% of taxable income for tax years before January 1, 2021 and up to 80% of taxable income for tax years after December 31, 2020. Any NOLs arising on or after January 1, 2021, cannot be carried back, can generally be carried forward indefinitely and can offset up to 80% of future taxable income.  
XML 71 R56.htm IDEA: XBRL DOCUMENT v3.24.1
Accrued expenses consists of the following: (Details) - USD ($)
Dec. 31, 2023
Dec. 31, 2022
Payables and Accruals [Abstract]    
Accrued purchases $ 7,132,847 $ 4,153,237
Accrued payroll 1,143,913 1,285,122
Accrued insurance 855,190 837,371
Accrued interest 601,200 703,354
Accrued professional fees and other accrued expenses 542,545 365,506
   Total $ 10,275,695 $ 7,344,590
XML 72 R57.htm IDEA: XBRL DOCUMENT v3.24.1
Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Total stock-based compensation expense $ 770,626 $ 355,878
Cost of Sales [Member]    
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Total stock-based compensation expense 65,470 36,794
Selling, General and Administrative Expenses [Member]    
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Total stock-based compensation expense $ 705,156 $ 319,084
XML 73 R58.htm IDEA: XBRL DOCUMENT v3.24.1
The following table summarizes activity related to outstanding RSUs (Details) - Restricted Stock Units (RSUs) [Member]
12 Months Ended
Dec. 31, 2023
$ / shares
shares
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]  
Non vested January 1, 2022 | shares
Non vested January 1, 2022 | $ / shares
Granted | shares 173,718
Granted | $ / shares $ 3.43
Vested | shares (139,969)
Vested | $ / shares $ 3.43
Forfeited | shares (33,749)
Forfeited | $ / shares $ 3.42
Non vested December 31, 2022 | shares
Non vested December 31, 2022 | $ / shares
XML 74 R59.htm IDEA: XBRL DOCUMENT v3.24.1
The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023: (Details) - Restricted Stock [Member]
12 Months Ended
Dec. 31, 2023
$ / shares
shares
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]  
Non vested January 1, 2022 | shares 130,583
Non vested January 1, 2022 | $ / shares $ 2.37
Granted | shares 111,447
Granted | $ / shares $ 3.82
Vested | shares (39,331)
Vested | $ / shares $ 3.07
Forfeited | shares (35,628)
Forfeited | $ / shares $ 2.04
Non vested December 31, 2022 | shares 167,071
Non vested December 31, 2022 | $ / shares $ 3.25
XML 75 R60.htm IDEA: XBRL DOCUMENT v3.24.1
The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023: (Details) - Performance Shares [Member]
12 Months Ended
Dec. 31, 2023
$ / shares
shares
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]  
Non vested January 1, 2022 | shares 31,737
Non vested January 1, 2022 | $ / shares $ 2.65
Granted | shares 48,050
Granted | $ / shares $ 3.27
Vested | shares (20,971)
Vested | $ / shares $ 2.65
Forfeited | shares (10,766)
Forfeited | $ / shares $ 2.65
Non vested December 31, 2022 | shares 48,050
Non vested December 31, 2022 | $ / shares $ 3.27
XML 76 R61.htm IDEA: XBRL DOCUMENT v3.24.1
STOCK-BASED COMPENSATION (Details Narrative) - USD ($)
3 Months Ended 12 Months Ended
Jun. 30, 2023
Dec. 31, 2020
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2016
Dec. 31, 2009
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Recognized tax benefits on stock-based compensation     $ 174,617 $ 101,497    
Performance Equity Plan 2009 [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Shahes reserved for issuance           500,000
Shares available for grant     2,364      
Long Term Incentive Plan 2016 [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Shahes reserved for issuance 2,200,000 1,400,000     600,000  
Shares available for grant     619,055      
Increase in number of shares reserved for issuance 800,000 800,000        
Restricted Stock Units (RSUs) [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Weighted average remaining amortization period     2 years 8 months 12 days      
Performance Shares [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Weighted average remaining amortization period     2 years 10 months 24 days      
Unamortized stock-based compensation costs     $ 274,415      
Performance Shares [Member] | Share-Based Payment Arrangement, Tranche One [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Vesting percentage     0.00%      
Performance Shares [Member] | Share-Based Payment Arrangement, Tranche Two [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Vesting percentage     100.00%      
Share-Based Payment Arrangement, Option [Member] | Long Term Incentive Plan 2016 [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]            
Shahes reserved for issuance     200,000      
XML 77 R62.htm IDEA: XBRL DOCUMENT v3.24.1
EMPLOYEE BENEFIT PLAN (Details Narrative) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Retirement Benefits [Abstract]    
Defined Benefit Plan, Plan Assets, Contributions by Employer $ 300,600 $ 343,077
XML 78 R63.htm IDEA: XBRL DOCUMENT v3.24.1
MAJOR CUSTOMERS (Details Narrative) - Customer Concentration Risk [Member]
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Revenue Benchmark [Member] | Customer One [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 30.00% 35.00%
Revenue Benchmark [Member] | Customer Two [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 26.00% 17.00%
Revenue Benchmark [Member] | Customer Three [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 13.00% 12.00%
Revenue Benchmark [Member] | Customer Four [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 12.00% 10.00%
Accounts Receivable [Member] | Customer One [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 30.00% 38.00%
Accounts Receivable [Member] | Customer Two [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 17.00% 21.00%
Accounts Receivable [Member] | Customer Three [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 12.00% 17.00%
Accounts Receivable [Member] | Customer Four [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 11.00% 13.00%
Contract Assets [Member] | Customer One [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 26.00% 27.00%
Contract Assets [Member] | Customer Two [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 23.00% 20.00%
Contract Assets [Member] | Customer Three [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 18.00% 16.00%
Contract Assets [Member] | Customer Four [Member]    
Concentration Risk [Line Items]    
Concentration Risk, Percentage 15.00% 16.00%
XML 79 R64.htm IDEA: XBRL DOCUMENT v3.24.1
COMMITMENTS AND CONTINGENCIES (Details Narrative) - USD ($)
12 Months Ended
May 17, 2023
May 20, 2021
Dec. 31, 2023
Commitments and Contingencies Disclosure [Abstract]      
Attorneys' fees $ 585,000    
Settlement amount   $ 3,600,000  
Directors and officers insurance retention amount     $ 750,000
Covered settlement amount     $ 750,000
EXCEL 80 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( -"BA5@'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 " #0HH58+5B&ULS9+! M2L0P$(9?17)O)\U*#Z';B^))07!!\1:2V=U@TX1DI-VW-XV[740?0,@E,W^^ M^0;2Z2"UC_@1Z^"VA68JG^B2T=8.?DG.R:FJ:IGC8EEW=HX.WI\:6L6]DQ MD1HUYE?)2CH%W+++Y-?-W?WN@?6"B]N*Y]/N.)="R*9]7UQ_^%V%G3=V;_^Q M\46P[^#7O^B_ %!+ P04 " #0HH58F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M -"BA5C>=@'&PO=V]R:W-H965T&UL MM9OA;Z,V&,:_WU]A9=-T)S5-##1-;VVDE"9;MKM>E+0W==,^N. FZ !GQC3M M?[\70D*IS)L@.?W00L+[ +_:^'G 7*Z%_)$L.5?D)0KCY*JU5&KUN=-)O"6/ M6'(J5CR&;YZ$C)B"5;GH)"O)F9\716''ZG9[G8@%<6MPF7\VE8-+D:HPB/E4 MDB2-(B9?KWDHUEGG&R';Y:WZ.#]Y.)E'EG!7A'\%OEI>M?HMXO,GEH9J)M:_\^*$ MSC(]3X1)_INL-]OV>BWBI8D245$,1Q %\>8O>RE O"FPG9H"JRBPWA70N@*[ M*+ /+7"* BD*LKF5K#LC%RX4JZ3E[N:,IO\/(_TACVWM7MO7(V M]@ZPG>O9*.!_AH^)DM#(_]41WB@X>H6LYW].5LSC5RWHV@F7S[PU^.4GVNO^ MJJ-C4NS&D%B%G+,CYV#J@QOAI7"%4>3N=<5UV/!RVFW_J>.#5C7E8TBLPN=L MQ^<,/<$AP/%S0..0+72 \/HG%B8ZKBY:UI20(;$*H=Z.4.^P%C2,XY2%9,97 M0BH=*5Q'R50+"JUJ"LJ06 74^0[4^8%=33(8TO,1N1X6KE7;K-"RIK0,B55H M]7>T^H?1FG(9"#\;^ @,OMIKU!ZE[5!7.]:A]4VA&1*K0+O80;LX#-HX2#SH MBP6[,7R M.H',^$+^Y*]:AKA4%W[Z_0O;T;<[HS[?E%J56NGT*6[5"VIW[(5,?$ 7/ 4> MRUT:TF5Q24K;UIG5M6E72\]H!C"E5J57I@"*V_>"WB3VA 1/FX,[(7,% P,1 MDK@BA<8(;5+X^JZ,J]]JK0A>U!C@,<(!+=,!Q2U] 7#H^Z">G&P7R!?8CGR+ M]=1PR0OZX7<8H57(8(B^#I]]_:7/:&8PI5:E6*8&BIO]]Q3=; W:WYU8QUJ" M>^3\!5\+X6NY&8T-IM2JW,K@0'&O_Y[;KN-.I7@.8D_?_'#-FDYK-$"84JO> M1"T3A(6;_O?8IB)1,.+^':QJKW1[%"D]I^?:&[)&W)$3DUR M5H\)%_C8LZGN1KJ+US7&=(S<8)6YP<(M_Q>1I_BEB+'CY,/ M!'Y^/NUV*5E!W'UFH?Y&):[9F.4Q(H151@@+]_UWDOE!O"#SU^A1A%J$N(#[ M_5X+R6AB,*56A50F!@NW]]L61D8OWI+%"UZ;5/<(W3[,1\.OHYF6F-&48$JM M2JQ,"=9!*>$O'H;M'S%X,NBE+('+FT\F29+67-_V9 .AQ68T&YA2JV(KLX%U M4#;X+D)(44QN[B1)[5W*/4HUL(Q& %-J55AE!+ .B@#;6Y6;1RSYM0P\K?[6 M[A[%!ZZKF0)L MW,07].81"T-RG2;P=:+MGWMTZAX=XV6-81TC"]AE%K />H8PBKA<9%>SWT!! M+2$_12L6Z]L<+EC[#!FO:XSM&*' ?C,SZ*"G"?,E6 X4%BY3#\OL5*!CN'Z[ M=/WV00\.INEC&'AD' JFO?#C*HWG4AF-!(7:6:Z63>7G6<= MG=+NVP<](*B$0VA8#(Z*?$M5HEB<928M,9,FWBW4>F_.D5K],\>Q^KMS+&@< MP^[;I=VW<6L^<<?.. M0>;S\W01G8_@8 %$= 8 >&PO=V]R:W-H965T&UL MK9E];]LV$(>_"N$5Q08X,5]$44H3 VF2K0&R)FC:[6_%IF.ALNA2M)/LT^\D MNY(MOC@!6J"Q91_/OZ..?.ZHTR>EOU=S*0UZ7A1E=3:8&[,\&8VJR5PNLNI8 M+64)W\R47F0&+O7CJ%IJF4V;08MB1#&.1XLL+P?CT^:S.ST^52M3Y*6\TZA: M+1:9?ODH"_5T-B"#GQ]\R1_GIOY@-#Y=9H_R7IIORSL-5Z/6RS1?R++*58FT MG)T-SLG)!1/U@,;BGUP^53OO41W*@U+?ZXOKZ=D UXID(2>F=I'!RUI>R**H M/8&.'UNG@_8WZX&[[W]Z_[,)'H)YR"IYH8I_\ZF9GPV2 9K*6;8JS!?U]$EN M ^*UOXDJJN8O>MK:X@&:K"JC%MO!H&"1EYO7['D[$3L#2.090+<#Z&L'L.T MU@2Z4=:$=9F9;'RJU1/2M35XJ]\T<].,AFCRLKZ-]T;#MSF,,^.+V\_WMS?7 ME^=?KR[1Q_.;\\\75^C^T]75UWMTA+[=7Z+?W_UQ.C+P4_6 T63K]N/&+?6X MO9238\3($%%,F6/XQ>N'T_WA(PBPC9*V4=+&'_-%N=):E@:=5Y4TU8DKGHV# MR.V@7DPGU3*;R+,!K)9*ZK4G&OQQRGD4BCT]%Z5[MMQY)(4,I;NSU942LK"LHZGTS4JC05K/V)S-?9 M0R&'J)3&)77C*=Z1$#%.21KWI#KL$BZ$H&ZIO)7*@U*ORVJELW(B:ZUJ+?7+ MCFB7WJ []^U&KK3A5CPLQO4_=SQQ&T\VS_/&>$XCCI MS;MM2 4D"8\\0D4K5!R8^#6L4J5?7.J$]:,D8G$U?U4F M*]#^5NTD#[9G+DX)$XSTE+HL&4D3R!N/V!ULDJ#8VZ74FT* 69@WL\*AQTA-.+<-]4=ST@8:)=R)B$GIO6"VTRM4R>S?S]- M60(:^DIMRYB+*(J91VF'.!)FW%]*39_RHG#JLV%%1!)1;LD[;+@OK\,:"7/M MMMD' LEI\X 6L9$T;[$FU+GD:1 MP(EOF^H81<2K:LF;/'O(B]SDTEU0DB#KWEI1_BIO^T%W\"-A^K75VS)[\55! MQ"8:P5$B,+'NCFT)G$G3U+=7=/@C8?Z!3KV2'?^<.FV $4P%CU/>UVE;"A9% M//4D$>U81\.LNX&\>BBVGSH[E*#+-Y29U,9BL,ZD'15I MF(IMI5ETB\,9BDTWGC(1T[1W!QR&H)0(ZLD4NM,1AC%XHZJZ%VGFR2G1YAF# M$H/W:PR''1#6[6CEHBCM-QX.,R)(*F)?.G1LI ?8 MV*OG#B6P Y6P?V%N*78Q%7A.B$=Q!TL:AN7U3A<2VI:IHZW#!/?;)H<9(NPQ!!7PCQ5".U81\.LN]E;94UAW%SN MY[53OH. (G8U?R[+- FMOPZ!-(S FW:QJ3?FM$T[1C#FPMKR;$..A:#,,O7,9AJ-HZ3?5CG,!$X3SV)D'?A8&'R;+#^0WBO M\K8?^\[)Z &DJL6BKKB,FGQ'1^C=,902L'5JM,Z*E?R LI69*YW_!P4DQT-8 MB_5_5-4S5@T1H4,AR#!B4=,ZPR7'\5"DO+6 /TO9/)PU?:U_Y3FE.PY9*8;2@?9+#(=E!#41]IW(L8[= M[#7LWMG5FF1^8QS">I[@Z=D=EIZ>?;3SO*M^V/AWIA_SL@+,S6 H/A;@0V^> MWVTNC%HVC\ >E#%JT;R=RPP"J W@^YE2YN=%_52M?8HZ_A]02P,$% @ MT**%6+0)U@^@ @ +0< !@ !X;"]W;W)K2D0*8))PA :NQ-7%/D]#DUPE?"6SESA@9 M)TO.[TUPF8TMQP@""JDR#%@_-I I89(R_C9M9M&"MH""L>>*' M=A]V .[P!8#7 KQ# 7X+\&NCC;+:UA0K'$>";Y$PV9K-#.J]J=':#6'F+2Z4 MT*M$XU2Z>9F8OD,Q9KPB2B ML-)09S#2OD73G)M \;+N;TNN=+>LA[F^ST"8!+V^XEP]!:9E=C=D_!M02P,$ M% @ T**%6#;1HZ]!! IPX !@ !X;"]W;W)KB#[)%V\)*HI>D MX_3?=RC9LB-3VBVP+Y(HS0R_&8XXG,%>R,]JP[E&;T5>JJ&ST7I[X[IJN>%% MHJ[%EI?P925DD6@8RK6KMI(G::54Y"[%.'"+)"N=T:!Z]R1' ['3>5;R)XG4 MKB@2^>^$YV(_=(AS?/&7Z6>Q_YP>'?&-O*7)5 M7=&^EO6Q@Y8[I45Q4 :"(BOK>_)V",29 @DZ%.A!@;85O X%=E!@E:,U6>76 M+-'):"#%'DDC#=;,0Q6;2AN\R4JSC',MX6L&>GHT?7R8/_YQ-QN_W,[0_ 5N M][@'1,0BNY% MJ3<*W98I3]\;<(&V0:9'Y GMM3CCRVO$R =$,646H.FWJ],>'-9$D%7V6(>] MNW(I"H[F.M$<\ENCO\<+I27DYS^V:-7&/+LQ\]/>J&VRY$,'_DK%Y2MW1C_] M0 +\J\W3[V3LG=]>X[?79WWTS%]YN>,V'VM%OU(T^\CK* J\(&"4#-S7RP&+(/$(K$5H M=R!J'(AZ'3C\ERLI"@15SR"+THH:7:XQPR'&;=)+.2^*/1+[=M"X 8V_ JHY M_)[Z&$X;8GPQ]17U?)^2-J--D(:$8&*')/A4*/"WQ'/!X>Q@;B6'U$4P0%G] M12=O]E0X&#Z'8I%/PABWX"V"D,<,QQW; 3FKI&U%LF8A &E'6E+3H6/ M]-:78T; OX7@H8!#F=HDDE_!L2I;6J%K>]$Y]/4%[Z40O@Z[,N!4K4A_N>J" M3;-\I]OGD@.N9\%E[0W8(M7#>ZI@Q.\]5LP-G4([Q5-( \.\W6G8D(_9VW;D MQNI!;YG\OZ>-[V7M?41.%9/TE\Q)9UI9:B!EA% 2M]?**AG%T=E6])[N5"Y) M?[V<]>21I<11+R1QT#X/626M?.[9D;_@ M3TP75K42)S-U"W>?R'56*I3S%9B$G(;EEW575 ^TV%:-Q4)H:%.JQPUTDEP: M ?B^$D(?!V:"IC<=_0=02P,$% @ T**%6*),PI+>! #1@ !@ !X M;"]W;W)KJ9-9D)L2;Z1 C,) M.!-F3BXGD'8ZG3XHM@!/;(MCBY#^^TK&,?B"$EJ?O@3)WOUV]:VTJW7Z&Y:\ MI$M*.7B+PC@==):!C%]2$"ZCB*2_'U%0[89=&#G_<%CL%AR^4 ;]E=D M0:>4/ZT>$C'3"A0_B&BY&3B M#SJZ](B&U.,2@HB?5SJB82B1A!_?<]!.85,J[H_?T:^SQ8O%/).4CECX>^#S MY:#C=(!/YV0=\D>VN:'Y@DR)Y[$PS?Z"S5;6%L+>.N4LRI6%!U$0;W_)6T[$ MG@)"!Q10KH J"M@ZH(!S!5RU8!]0,'(%HZ( \0$%,U?(EJYMUYX1-R:<#/L) MVX!$2@LT.J;)7PTP(S7,I>\'1$#R0P.\&,1B1 M5<#%7 $Z5H,^4BZ.%_6!2Y(XB!>I"LM58\V8\*6LIHGX%$%"19!0AF,!U"A+'5UU[W MF:Y+V:6=X<\_04O_M6G?M0GF MM@16"H!1!,!0!N!.U*\@]EA$F\A5ZC9[!IK.?DLX8Z,6[!ZT+83,RG;]6*Y$ MEEF092K)FJ3I.MND; Z\;=Y+L[RW7LDAY3RDHO!R^5XLA">!QT7VR63.0$QY M$\=F_4S;E>,W4KIU!'\MX;AF_=#M^5SBUBJXM7XLM_N9HXEGJ\EG""LY<:3T M\M@TT2:8VQ)8*3IV$1U;&9VLO'?E+-R4.)>$3RL&N! MPZ9IZW:EF+5DSOW07(E IR#041+HQO['-1\UT>@TU'RSNOJ14_/:QM#I&4:O M0E-=L&OU=-WHHS$2O8*)W!!.J>M](1Z^AWINZ9?-?R0'7/\\-K>VZ_XK:% M>U7"E7X>FQ1:17/;0BO':->(074G]F\JO!KRF(12[^)L46FL:L/:ED'W8X-E M&G?M%%3W4]-LDX)-P)=+&OI@SA+ R=OV 0MEZ4L;J6RKU8+UWJ?KV!#7J&S) MH/NQP3*5NV8+JKNM3UV9<".9#3T5LFM=58.8C1T;B4I<):LNV36AHV,;H6JA MJHLBI#NB6#D'"-EU2%#=(GW^YM3,2D,')%DQ<*TNM=H$M8KF?F856WZUO2^I M\D/Y+4D609R"D,Z%JGYNBQ@EVV_/VPEGJ^SCZC/CG$79<$F)3Q,I(-[/&>/O M$_F]MO@/P/ ?4$L#!!0 ( -"BA5@<_4%&Y < ,LB 8 >&PO=V]R M:W-H965T&ULK5IM;]LV$/XK@C<,'3#7(JG7+#&0EQ8ML+9! MW6V?98FVM$BJ&7Y>'J.=[SGCM3E(^-?Q892Z7W; M5K6XFFRDW%W,9B+?T&TF7K,=K>&7%>/;3,)7OIZ)':=9T0S:5C/L^]%LFY7U M9'[9W+OG\TNVEU59TWONB?UVF_&G&UJQQZL)FAQN?"[7&ZENS.:7NVQ-%U3^ MN;OG\&W6:RG*+:U%R6J/T]75Y!I=W ;-@$;BKY(^BL&UITQ9,O95?7E?7$U\ MA8A6-)=*108?#_265I72!#C^[91.^F>J@%W%Q- MDHE7T%6VK^1G]OB.=@:%2E_.*M'\[SUVLO[$R_="LFTW&!!LR[K]S+YU$S$8 M@**1 ;@;@$\'!",#2#> -(:VR!JS[C*9S2\Y>_2XD@9MZJ*9FV8T6%/6RHT+ MR>'7$L;)^>VGCXM/?[R_N_[RYLY;?(&/#V\^?EEXG]YZM]>+=][;/S[]O?"F MWI^+.^_5S[]>SB0\5 V=Y=T#;MH'X)$'(.Q]8+7<".]-7=#B6,$,T/:0\0'R M#79JO*/Y:X^@WSSL8V(!=/ORX=@!A_0S2!I]9&P&,['Q5K 36!]"LH?Z&3^RT\H\G^WV7PF94SAZ$)IF"*X@CCL)<[ M0A?VZ$*G?ZZ+?V 90>:1PI,,4D_.ZKRLJ%?WL-5]]2U7KMQQ]E!"I'K+IY?[ M,CRG+\^D[&BVHGZV(J)''(4+1^R M965W,#;\$OIA&)^N%XL''M 9C*N6:LI6TSW\XH!OX=TXB0)BX+<(XMA'P5@$:8I&;H[N MH_Y500=>Z=//+GM2:[8MD/*<[ZEVE=4DDYE#Y,<8G1*C17"*4 A&C9&*9G'D MIO%7=P-3M'L4C:S; @0<(BNJ*F6/+:ONKM4<"W^/)"93,DRC>,Q#6/,\=O/\ MB#5]BAI0I,T";#+W- K\06W7M9*F'-13:3225[&F>.QDS:,54C47SR%&ELB( MTS! !F:;)"+P-[*NL>9B_'(NKIA0/-P0OA6P2:Y33%*4GC*!31#$4#0&5_,P M=O/PD+R&Q>MA_5IAFU2*DMA8J!:Q").QL-9TBY]OI5_4A5JAFY1*4IR0P !O M"J9!0/!(CL&:>;&[US[="U'L*U[2/^.S-M#GTG8\"YK3L9O3[_<\WZBP@XX4 M_ C>DT\-5=!_]^5.Y5?K%%C8& 5^8+32-L' AZPTXCW-VMC-VGWP[473[5G= M9X5N$O$(=(N@"[HF;)Q\5^"MRAH*[9<$GK,0^.[ .Y.VXUG0%(_=%'_/(LF%"$7%J4]]"Q\GD86.K<)8D>?032?$S>?CT!G]7HJ*=\V M/;UU$]5"Y"A&:1R=-GLV22#%$"4C69MH,B=N,K_G+*>TZ)/>HBNIXC) MV&H[*CEM0]PP7K1Q<6RA)G[B)O[/5+ME]2,66C@^2,/8L- )XP545;<9@& "9MQZ>+NC8(W+5!X[LF,Q=[KD)-;FCC00\F M :8""@0H4ZUGCR;GXP!6>'0:>!9!:*YQ$HZAU;2O>7S(.*Q_X55T!2K]US%@XNV;$^T7R7;-RP=+)B7;-I<;FA64*P'X M?<68/'Q1#^C?7YG_#U!+ P04 " #0HH58\)1%;#\A #V8P & 'AL M+W=OZ77E9G:C._AF8?MU-<"O_?*AV_2Z M:NBE=?OP]/CXR<-U9;I[+W^BSZ[ZES_9<6A-IZ]ZY<;UNNJWKW1K;W^^=W+/ M?_#1+%<#?O#PY4^;:JFO]?!Y<]7#;P_#*HU9Z\X9VZE>+WZ^=W[RXZLS?)X> M^,WH6Y?\K!"3N;5?\)?+YN=[QPB0;G4]X H5_'.C+W3;XD( QI^RYKVP);Z8 M_NQ7?TNX R[SRND+V_YNFF'U\[UG]U2C%]78#A_M[7]HP>1D@6)N._ZWNA [)"\^.#[QP*B^<$MR\$4'YNAJJES_U]E;U M^#2LAC\0JO0V &7%^?M/\,S%A\_O/UV^_T5= M??CU\N+RS?5/#P> !U=]6,O>KWCOTP-[GYRJ=[8;5DZ]Z1K=Y L\!$0"-J<> MFU>G7UWQM:YGZM%)J4Z/3Q]]9;U'@3J/:+U'!]8[KVL[=H/IENK*MJ8VVJG_ M/)^[H0=I^J]]&/-Z9_O70PW[T6VJ6O]\#U3(Z?Y&WWOYP]].GAR_^ JT9P': MLZ^M_B_FY5?WWH_9R4P%F(J_"I/ZM-+%A5UOJFZK:@MFP0U.V86ZN+I4Y[JW MP)6Q'D;8O527'0C"_1_^]NST]/@%/$ _G;QX4*K?==L@/]_IH6K;L5]N)T__ M_BX\K:JN4;1EK5[K&[!@&[!' T#1;VQ?H5DI5:5N5[9MM\K>=KH!ZS9WIC%@ MX! V6$S=!QTE(P0+;-6PTLK#QUZE,7_?5 M8E";J@>LP1BKA;F#[6X1E_ MPKO2(*AV,^C>*=.IN1U6M&EMUVO=UZ9JZ3&P M7&!:-=B2_HL&NTYD7%?=N*B8B 6\L&GUG:I2VJK*.;V> UQ YC#J\!/CV>CFV50^MK:L!-H3?<3%! MC(B ;'# 8( 2 "#G#(2<%1^F9'"PV9:66RX!%UK/=BB(%HC2FK7!3_0=L&*8 MH8ZI1"Q/GKYP"H$O"8 +POC-G:Y'E&;U8;$PM>Y+(8TK%@;YB2)F.@X8D!YD M$#K>F!C1.3"F#8$"'M6P/&Q&4"I "MD#]$$4(D<26@7D\?.X84:%! VU NEL M-/ :O"?2H5P%@#:%2/#F.'35[T! M"$!3V!@%Y/![-%E573,D(K,1]PB\@_4T%KJ)CVL3]E[H#/- 6P?<:3$!3P+O(N<\=L?D:]R$XS\$6F+H*5H\LSB_G MYU>9JE6HM351HA]Q!R8/:L1 W("5=I>_!OGHP0" #<'GW]S5JZI;$D?6QI&* M^&VOWUQ$\_>)K-2W" 38MF.C:5\A0X##\QRW!=4HV#(?32PS 8FHT4A!;&H M_3M^+7P9#$OGJIJ1C"S1J"\=P0:$K5->S]1GIU% WKC!K(D.R'UF(DL#?'D M(UP*I=<,6^9O8 =0^\_1]&@4 +\1S=1"Z; %F"(0>8B>64K/P4;#VMY^ 4)M M4S1FL0![M.CM&A>!)<+[,_41W%HWZN*CKNVR,T%J/2470$![ZU02"0&7NZ;J M&[ ,%M8&^>"W[,;4ZLGQD]);/5F;=[[PUIH1O*#0%GR4L#](Q/GU!2X2I**X MW)5^>:;,>-XS!O\ JO2R\>T*> :Z3MQ5M%<&-'GX^F1OUH)U]8?M41CLHACVF.3$V"D+SG@IZH@.R\'/;F$T>](C MX#0Z[8Q4]\T#V*]M'9*@&0-3.L"[!94 "4?S#M)6B.M)%>N^@=?)?*(3!3AJ MS18"$R!$$SD!6P-E'.OKV*,9V[0CFEQ('1V$!O@&[+X @D$(L@32($4PA5,< M>*#U@L70$H!N08+ ](I(>2[WB>BN;:/;,GR%X"XA,'%^*_;H(BA,(<]$DDZD MK+$-138 "D9C0FOV5>+#6,TF^)'![()RH8SQ$X"%1TD,**HGJM)@(0@-;S3R M/$B8/$]V!=4Q$0CUUP1"_?,"4:#Y^5\B$)]6P!KX[TL'QMVC$_$[*!M34?K& MXYDH%7]%E-3_2)20+O!TC9'&DD2)1*7XJJAXX? 0S#)+7K7.$I="W,S&#/'P M-@R98L$KHJ5"PJ34RK[X'HH9E]"G(%NX0H)I4@;*-)! MQ[Q$9GA^D, M95X("JE7"'WD*T(#6 E>!U6^+#;5EA8ADDR_S066A2/@@O'20!:%X:$DMIJ; M5J@Y<7RD&'-4XYEZ*\Y-L"^+;)^19$J<.+XX;"%TH+@5Y!M6,&X%#!U!-L!? M4K+!PEUAD@#^$Z.@'M?0P!;X9U^ G++1>_( 8!'J8BC4 :>U)R( ,]L$9(% MIFN/R<%>>4=60L86Q:2$=%BM83>E@8TC.@'@+X$XW%K<=6U[G8B56V&$AC(, M=)]C?D(1LP@+1L H+4FBXE\MB2=A\55<@&*)_.%DFYV5$?7$>131>01PP4IT MT^<2)R.V6##F6JV$K,X J3! !/G[8VQB]HH AW29W2,"7U3HK<>-2)<0"67) M@GNB.%JGR@,&"7)I]*6;]A!X$@4K";LH:^!0#C9)XP0VZP4R&&2+LRZQX1!8 M'UB=2PL22)+DF2Z%$,V86#7XN#%@OCOX>$_ F5J[8AHH>B6FO$92 1!"T@GF M*#WFS2W7, BU_2G](5*9CM*FB=WS8+'YB,I*-8FJY92DJE?P>F-N3(,.3>(( MHH0&!^5SILP0D"D483T@A) ^<<)-R3D2S' "&P,5M*#9LOA#90"=*!K^X>#Q MQ+@-)L%DK7.;C?:0V@?LCU)*!T\377JU&'0?/=P-<=R388][BQD&ZN%B;!?@ MSJB\2)T*RI]GZG?$;J]')0%M;IB'"XD=J/#C8:,0P=MXC!9ZW6;U)/\@$@2P MZT?=S(KK['7V&)QR2](K95?DO,O$"[$%]@-_;JN^1^(BJ[ >UI'#H&*5<.*% M6ME;0*LO40#J*/L@?577V2&:>C>":"4K>DO0;KTMV:K&*GJ' ?!Z!?FQWEIX MQDG*BI6CL4>2H:V.2R*2^+Y?NCB@(& (@G($94IJ!5B,J8E/6?&.E",H_P%+ MPIE!X&XU26/97 ^K0[#AIB'29P\\4>/O,>9Y2NV18(N3X%DPGAZU Q"%N P9 M'R/7Q.EBSB$U+$Q]2=@/?1VY5-U4IL5 @^.*;]!_=%S7D[Q<0F=./B31H, + M$:D%2IF1];$F^(X",*XI9^D.+WX"' MWVJ,KUIU7H-'=1QU? SEMU S>7O^,38X;E<&62*J6"Q'PV&10 G[:9?DIMX@ M(L%N*0DS70S#$NHC0=!O<8$L:)ALU$A4-T$O4H M14K=_6$S 1,DA\P4L VC MB$!R2FF&\3>#"X'H>5Y?(D[06.EHT;A=F9 MV]PK6? #B(UIMY2^]%1 HLK>'8E6&A-7KDC=>L)K<.@8./!+"\U>GG5)/(:S M;9-;U\8"Q"3_S1\88^X/9;CJE"1>S)?$VP0_Z4M0>K&@@I5D$I3?831'?F4- MBKB-3G; NA2<4U1HUS-]7"KR4G5VFP(EB1<*8+7H[QLM^"%)&VQE1$LTU97 M_?]7/0Y4/2(,H],N^/:CP1Z163/=9H2E("^PY'K6L VV[6"/98]DQN4G7:., M=G-=5X@Q #0',P!A.LCLX**E77!'T@B$?,GMH$H$?0CX1],L1<)QDP:^@UWZW*H: MN /@0/3;JL=, I^!2!2VK;%SZA4JJP\Q.UD80>GKL4W<$:G=I)8#D!62T.+7 M23"=!LP3*KBD1S-3U_L2+E"PT7$@$E-;9E-"!("2B$#BYG&W"-0:XUB_HYCQ M73;@+LPIZ2\&D\'E3J_#2>?*L#D+?IE,5X$DZ3DL]U9F8.-@%HRL+Z;OT">7 MH6 F_G64 MUSL0G4B@]'M?TJC!/F#@U>E;E8!%1RU^HP;&F\2IU0MN]<0-D+5(@- MIOZN#-FZMR.<>4530N*X/_P;;,%29@;)/'!D(*^:PEI(79F-2$0&IP,01XXX MHKM@'H98FO"EC'M<4U1T@\HVU*NC<5-P0/;=BZ(L^H7_#Y5.P3[I'O/AQ+I) MADS:37[_!B(:DJ,L@"DY I:HF,B>]$A3MF]T!R[33!/":,5#R['8OU5B%ZG, MVYHOE."Q,8_E\DZ:_VL_R('C)SX?R*8.[IN9GI5J!1RUV.INR=#T!H.6LB!G M+!45> >\N/4"25"CW7K J6- MO&04T!%V)4Y!Q$,2 #'@#29SEUV!AF_K*730X^?I&W6V?>MX?Z.!]!*51E#< MWY#R%KK(VPV90Y'DGBW# *D$-H@Y"".X#\<<;&-L=)*"(P#H0,9I6HOEH#C@ MU#G=990S](@W4AO@0.:;<21J:1JR1KTK=LW&1-5R\DMBX7P:23X> CJ2#GQ&:@_G)F+ENC%X_/ -SLZ'S?&307@JA$ M),,XDWC@1C5C2"U:L]A#BCB0PT(E5I.@G"Q(E+K\*F;^N&),^ MW*3'0[J[ 4WQQ%(6[(#3F MAB6W]2:&3A%0'$?K2;U)OGP6AK5/8DHAAITZ3F5P>RT$0#$GI%2)D]Y0B^5G MT[=YJ$RDE[]N=;>$9 ^70:^<-NDG04V1UL=B0VJ^I>Y/K@9[MB;QXK09ZP0C M6S0_CI,8CS#]J"LI4O44-!7 !'R95,J[S]VP$S@SLJ^5YA-5P3R=%E)>F=2 M$^Y ^&'<%V92=$4XQ66Z%8?AH8HE24?>=3[@E))2K\'^+55WY[QU,-)1*GQ7 MMT+GB%EO<9E)MR\"RM>EVE$V%G?"D@-06K)B[4Y62G4V-]VDL6Q?T!))P>5; M>HNOQ4E#+F<6/G)GVR,V*U1>@CUA^^)WL&D3J92IK7RE.'AP(/SE>J0? /3Q M3FQHI0%+M'58@/&-OT@J;J$)!:4K"C8C4:[T/?P5%&._!H'<9OSTHPUQ5F:N MHP,''ZIUL__Q-'K,_6Z8OZ*:U V$>Q77*9VWSGD^T&+:;B==)(G!?2\PX3C\ MQG)%9@3?]09;WU!S/98$BBJIW,:&RD #QX EIY 1>U2%/1430,7.*6)/1P>X MSQVKBS+9>DO,0AW!LD41:&ERQPC?\E,TV )= MV7=^?=0V+[#/U#OIK@U)OR&9]F@@Z.5)ZZW8D;W+S]2UKW+0T#Y9RK'R)'\2"GAE\3CKT M9CZ*0ZP:6!MB90"HY&EA+(FB@>F<%$; "C_S/S8F!)U4:/'R)E$W M[1-:97DP#@Z2:2%P @8#U_^B+;=:_UQH)-A+Q=NLTJ.3%4@&L6 MXM#I"^3HOZG3Q\?E\?&Q.BN?GSTJGYP^4X_*IT_@I^-G.*H.LH1N%+7A C:$ MMWZU6 8.ZX- M 0;78[*$RLMT[J,Q^)4@U*NBGVTD;YS!X8?48HS)?9'K,-R);;1>^YHTAL-RAHM6NNQ 7 &1;?@) MA_**4%/'HVE4^ZENTZR#QT"[),?OZ(P#C[N1E?,%4BRP#DXXW&HQ0/L$B)9J^K<8S;,[MJU.FP$V/76$@ZXD.@H9#]3)= M J$K)'R+D4ZGA:&1.#XI/MR0!^ 3=2[6M6,$/CH?SOH64=@10]:]<_@,&]E- MGI/ OA[EL!S'Q#7G>/P92-[W5 TCKI5<&8?GQ8PA:R.:V..0#R._"WISIJYH M+!'DGD[80 Q&)Q/SCW7XF'M0?6]\J0)M+R[, V2M:B-S?:^3W]#[ M8[8T$JFHT>.K+G@:%F7N",^$BJ0581PZ); &1Y85:K] MUY^&XI]6RS%&/O:4G&^4.0.*&FBRQ\?D@GINQEO^J%+ST?!955P.\WX[NLA4 MWV# ZM"SL]/2+Y4>I('/XV!(-23)38?GPY"NMSI&=44^4!H3(5%L]BU"YND M*G^:3+2V6$FB'ALWR>,A.\K8VS,5#BX6'O_)X!EUN([LX@@+7A[)CQ\^ MQP-K,:B/6S%4K6$]--S9DZ'=]!0B.75%Y^CQ5-2'SX4L%P80]X8SH=D_$D4X M+N5"/;V?52>#=++YV04MVVLGE+#(BA40/'=V#3$W"G%'-0^9B>71G.TD[B"PXI'15&:S>L\. MQ%A59?!0+$F"0X+J20N2D@I>RLU)G8;+36O$B&QR4\EQ(*G^-[[D[V4@C.#0 M5D7@,H;_/ @:;82*,# MVM:%KOU$%D5'\XBF#R,>Q%O$PB]>?&UQ=!X] M2(9,=:5]P8BDR"/OLL,;WHZ_#%Q.V[)3AJ+:4 +DI^N]+8\*FB2=!CN_ 'F: M<95\YI;NF'O@L0_[;=>I=FJ3>]QGM',"!S)2"*.A^*UQ#FK^>PK[^E(Y/U./R^/ESR)V>JR?EX],G\--3^.G9<_C\[(EZR_XF=2\##5E$Q0N'2Q:^ MT3PP324A!/&2C%(*2%R&R#R9BQ.8?DXPFO5U5:^ *_TD/BM]:-.GGP6<=R*C MQ;GK8G_X" MN0V9>_]#$6CB9UHH@\ &J&=":&PB*Y(J8Y#@!=X8$6P%1K->6&HNLR?[BJ$+ MJE+,QX&2>TQH4(=\$DNQ_QJC.)E@E)Y*1< ET@MZ!CDX4.)7-#.%"$0:QTGB M0B:1:-:201(@)QNAD](T+9@,()D>0G-NKKF09$1'&K*)./)6=:*/6)B1/@OH M;KO-:DYS/QNP.XJ&W2GGSPA1861!Y[_3(2TI^(0H0SJ0(:PN=I,KWT;,9[TD MK_%GO<("(>3!LA"5@0 H*JF0/_?BG&=3>62/3:,#- H/27=!&NU8G4-6P!9) MQZ&)(!\B3=K4C(\7*MFXC#%\:>-?@]?(ADRZ- WNVS[&G)%R'HC;%%C M*$K(!7J?.9[>F[$KQK=::IH,,1T]@'^+WX@EJ Z)FJX@]ZY O=G.#ZM>H]&\ MT:W+)[[!3IFDM\31# TP[ XRICC]BFNI$^RV:^Z:X+><,F?%Z[#;GZ,=I,3- M.L>WA/E;<5A+J12% T2^)L;[G$[V4;)/ZCC10::Q*_=P[1P+V5+V)KQ0AGC5 M1]ZNNZ\MF@7$8[>SX'Y?2]O #Z?EQ(!.+]"(Y5H_)A7=L/\H"W5Q"O3.MS)7 M&M;ULNFI[^>*92,*/]B+0!8APR_$9''6]0B_\*;N5:LVW',4^>6Q4 MT:5+8$!:2[,^Z00IHO'V_/H5Y?)\C\;ID^-PCX;?55WY77T;BEKU3OOI;+(G M6_!,MO[B9XM\_U>&J\2M:[\D(N)PR9EZ3]4G;&32IQC;TIEJBC62ZLLH\<*=NF"BM:,D$]^$ M+4X1_C-PS-3KG;V*Z5Y9C,_2$_,06=-W3MA8C1T$[OCSQ^O/+-*]9L-Y EQ^ M>G:JCO$*,B3B)SJZ(K_P.18YG)<_,5.EV M,:JG(@@4V8&P:NYZ9#TA&1K4:VQN]-OD6(@+YT)V@L.]=^!,7!FI!$-;[$#; M>1LC/2V:7P1 YQS8Y_4?*W5VPH1-!>T%2-*,XBQV@ ]3B)IZ(4]G(=-=Q9$, MO$5S.EEP0_.:7OGP1(M+QP:L.T0U7RG,@B2*W/"@&8X>#GB;C.3",K#6?1>7 M>?X[3K4%N'>.E48]E*$"\4AD9@CO)$O>2SX2*"QLD[FH5#P<'GM'&/*6?CLP M>IW8ICA%5DHUB:9*>"*XH), -)* D#G24I^N].G TSZ24"X@8;&//:=]AW"+ MT+#*1N<[;^APO1#9T7RP693Y84>\7,L?O0V/YHBHB AQV8%1J?@ ?\?=5=]5 MA/U(,>*YM?W''#9X0R75LF+(F)9BQ,?QZ+:,:Z<5B3#SI5(,^5 XFT/\7,K8 M,W6-7N;H%:)-H,"G\=*SO==>D%^2H8(Z?6//Q =ZPJ"7>'"4?))=*N-0A3T&J>&;9'[QG.XAGU^U6*KU03T MXB"^/"+GDLH?)W1+/(],:E7F 7&>ZI+E1V#]U^E[:XL8",5\#U>."=CWL%G&ZH M7N7)O [-C^RPOAPTA"VQ4\JCK7&D@HZ]+[6O2&(8BAP= MB6XRP5/$JPO66O-UFV(A[;211KI7,?X!MZ4#A=-DER!5/7%%2O11^U[93+MX _L^%B("GS&]G[N M.KF1L-=)GXT934?VY.*.=.C3U]>K4$4Q?G RPEP$F!%D2C:P_*C[H(]O6-=] MC>G3Q[\J-ZQL?6HY4\"0<*21;KD_63;!Z6_3" > M'P3;%8^PA5,X'.FJK_-@NHV*"]BU)AX&BN$&W1AL<%XY!RG>,53Y";PY\@:+R'3CXC98 MRJM7;]*K=R4%UV4AQ\FHPLMU?;S,&4(%'#S9"QMSGV_B"I>SI561VI]8@Z7F MO?V"@[6CW%,DII%JAX->TLP0%^F\90V[T7$I-"J+L2>SFJP%!E *)GS.HS<. M1SRE*\RU](%;R#1C3.O(&'65 ('5-X>JS3=LRAQ$21&T]N,UV=!Z0KQ=#H5Q MDEZCL?5S99IJ'LG5PP#^@J?D2I;FASA\V):%/X@';H(P@P-0V7!2#-UI1[(]JS=T\DA-O@>=Z M:3KJ7/*89M"HD\=4:SLK_0T5=,*HD=;Q!BN0PX";GW=>4M?5EL_W"8:Z:\+% ML'31'0I_?E)V[B_;\>4.;#8XG5:8LO.Y:/XUUUJF5<''=-1&SH_PI93A'AWI MRAXA 'M73KT2G<3 OL->7#)#.<&@^!H&*)"Y Z.S%3Y-CA3"(7G*QL2RCGVV MEK_:@;_FF?JQ%^-,5SO;X*#+I+Y?^C$]L<$U'DGD,85]=_8_3/X6 X0>2_J+ M$W2"HAOXSS*$3Y7_HQ;G_+<R0T"K5[ J\(I! BBQ)3_3)@&<1SLSV+9!VDXP&,P'6J(M-9+HDE12SZ_?Q^L46)]_+<5;HBUYBS/IUOZ^C1.16[OW:G+<,-OSQ7\IDIV@UM=&%-M=( MEQ;DE$]&X6D*.7-Y?_O[[8?9F$P?:.1?TXP;E6*F"TV+*J)-9NU8+R(FZU* M1')5I#;Y.;=*10*MFKE6J$@\&>CT ]&8S;S)Y.A/QS,/%@'[TB@/13" M;/=.Z-UO4_,W*"PU>8"0,T-&[&5/QL*B"/UI,/1'PPD6T[%_!N/"47!8[5JF M(",M_DDU6!R'_FPV9E-_%([\<3C\)]/96_XD%05._^A+L:P7Q]X\_HKLRETD M2?9.2:W9G9++U+ 'X0$$U6I9@C<-6(@CS;BQ 9<)B^F(HBX;=R.]VLB+"/H66>J21_MVLW"0"26)6XIJ6BGV(PF(G.*OL2;5U>J[ M3^'\%>W( R0+(2W6I8%JES86KV8ZA7.6:<3ANJ]EO+(!C4R#!-JD75$[:R+W M9+$Y:;(0'2K5IVP..\"3LQ$(UDI&0N.D5DGE"0T0KK=;L$64E3%"QV>+TK!" M@O8T3XVED7""-B V $SQ]2@Z!0 JX!B<@<-0(32Y_YFK6'?9($N)2"4RJB"> MW=-ZC+I%@\G:F*"(2#W)) MPM"L$-W7+A.\W4PH,-]KGI% S4.UW,TE1P-9!)HI+JB/N/*-R&W;9:?9M-V+ MJVX7\ER=*O.2J$-.1-Q$R4FY=F7*9\])&B6M@!L].OO%K\_;[HUOL(.A#V)W)YTBW<107'G>$TH[1N%6@' MAO;*0E"SX(X^UB2[@+LG;FK,*,BB$.7*D*"3DX+I6=2K%_@_E*,T$#U@_CU-": M0W.5FROU?S&(-\\W^$/< M?7CW&[M#K>C/WW^R"/XEHT>\2,?H@@K%G[T]"2;LOHS1'MFO.G-%YO_#17C8 M;1Z\TR6$[27DL^*%YG9(H+QY]D+$^[)20CVT)P81([X,_ M^*AJ4?4K'G67LG 5N#V1:BW4\>Z)KH74IQXH7.R9HZ2L8<9W6Q:SC8=$"&:G MX;XWYG[GLP9ZX,I^O+&5M##N"T=SM_D^-'>?1=KM[N.2\ZA&VUY"=' Z'?

SRWU!+ P04 " #0 MHH58?/3W2#L$ #4"0 & 'AL+W=O;M,V$].Y9V MH*DL^28;07W\KVSBF M)'FX%Y#6N]]^N]I=:790^J?9(5IXSH4T 2'S28,L^9/EZC4(>Y/_!/ M@D>^W5DGZ"]F!=OB"NV/XD'3KM^B9#Q':;B2H'$S]Y>#J^NATZ\4_N9X,)TU MN$C62OUTF[ML[H>.$ I,K4-@]+?'&Q3" 1&-?QM,OW7I#+OK$_H?5>P4RYH9 MO%'B'Y[9W=R?^)#AAI7"/JK#G]C$,W)XJ1*F^H5#K1M'/J2EL2IOC(E!SF7] MSYZ;/'0,)N$;!E%C$%6\:T<5RUMFV6*FU0&TTR8TMZA"K:R)')?N4%96TU=. M=G9Q\_W;T^/RY@F6J]67IQ4LO]W"_=WR^N[^[NGNRVK6M^3$J?;3!O"Z!HS> M !Q$\%5)NS/P16:8G0/TB5U+,3I1O([>1;S%M ?Q(( HC.)W\.(VY+C"B]\* MF>AIJ@98&H/6P%)F<,_9F@MN.9K70JX!AZ\#NKZY,@5+<>Y38QC4>_07GSX, MDO#S.W2'+=WA>^C_YX3>!XQ[<,+T7L>$4XH\5J=(8Q68M+3:HRR1_E.UE?P7 M9D"]E3;Z!K@$?$[1&% ;8+DJ927<*YZ2JE5@=]C4-6I@E'HGN%%YP>3QTX=) M-!A_)G^NETC;(V##,]2L:F%NG*>,NPT3SK$A&+OC<@N*<#2!,5DA%L2"YZ2QX(= M=CQ= <'2G=3'LR\A%373J\MID8 C-RF@C9\P^D$G$FI M=6U=6SQ=EH37PHJ75NW499OJYHC<>G M]S;]CE8/5G1]9J5 C[#3WS- 9=^%I F'^9H8G:8!3$@R@( MDPEMHG$03X;!:!A"- R&HVD0QU/OM4!@%$SC<9!$4TB",!P$XR@AV2"*@G&2 M7(P 9N&2)I@ND$NOKK>(S8&YP9**TBEQ>=Y.7<]K)IBD8W9'18?Q%Y,E/3^@0?,<#B4Q MF P2RE5"J]%T$B3AX+79W>_.K>^=%MI^V19UC?UBWK]WOG* M]-;-!($;,@U[XY%?S[W3QJJBNK?7RE*]5LL=/;M0.P7ZOE'4^LW&.6@?M==7W/)6N ML6"J+2HLZ60I9,$T+>7*4Y5$EMF@@GNA[U]X!W=R-! ;S?,2[R2H M35$P^7>"7&R'3N#L-^;Y:JW-AC<:5&R%]Z@?JSM)*Z^A9'F!IQ\;<.3SENU8$-II*%$,]F<9T-'=\(0HZI-@1&GQ><(N<&1#+^[)A.D]($ M'MI[^I6MG6I9,(53P7_FF5X/G:X#&2[9ANNYV'[#73V)X:6"*_L+V]HWC!Q( M-TJ+8A=,"HJ\K+_L=7(EIFV( A="/XQ.\**FS,CRH@]X>H/#.$W%IM2J)9O[@510QRFM0"R!KBE#D >7QQ0L M!:=65OT6/1(6"Y3-0\'A3FN2SL!NXO6X"YZT'H1FG#J^K M.4CI0DF#S:2-DM ->A?6[B8=M],)X=B3>0>]5*!:+=,KO)2 <&UL?53;;MLP#'W/5Q!>,:R 4=\OZ9( O6Y]:%>T78MA MV(-C,[906_(DI6G_?I2=.!G0YB$Q)?$<'HHB)RLAGU6%J.&UJ;F:6I76[;'C MJ+S")E-'HD5.)PLAFTS34I:.:B5F10=J:L=WW=AI,L:MV:3;NY6SB5CJFG&\ ME:"639/)MU.LQ6IJ>=9FXXZ5E38;SFS29B7>H_[9WDI:.0-+P1KDB@D.$A=3 MZ\0[/@V-?^?PR'"E=FPPF#:+JV)JN480UIAKPY#1YP7/L*X-$:;P3-1/K-#5U$HM*'"1+6M])U;?<9U/9/AR4:ON'U:] M;^!;D"^5%LT:3 H:QOMO]KJ^AQU ZGX \-< O]/=!^I4GF23AGA].SJYO'BYN''W:^)HXG.;#KY&GK:0_T/H)X/UX+K M2L$%+[#XG\ A'8,8?R/FU-_+>([Y$02>#;[K!WOX@B&YH.,+/DJ.OR#70K[! M.5-Y+=12(OP^F2LMZ37\>2_EGC!\G]!TR+%JLQRG%K6 0OF"UNSS)R]VO^Z1 M&PYRPWWL^VNQ%_J^L.@(!DIXJ'"4BZ85G*Y$@5@ &VXG%]1D2IM-72$L1$V] MRGAY/***8#-'::HR,E4QI?%'=]F*'J%&R;):P0%XMI 4HA"P9;R0'X=IJ,S8_LB!"Q'4;A:/L2UK=#X3P[ M# /;#P(XA"^![?F!':0Q'&Z=;> T%DU*81#;<9AT_.&8XL=C>*_BSDXG-BC+ M;MZ8A)9<]TTY[ XC[:3OY*U[/P^O,UDRKJ#&!4'=HR2R0/8SIE]HT79]/1>: MID1G5C2641H'.E\(H3<+$V 8]+-_4$L#!!0 ( -"BA5@>T5*X?P, #T' M 9 >&PO=V]R:W-H965T,-P M!83:EM_B+@F0MCGL@/:6]=H-P[ /BL/$1FTK)\E-NU\_2D[3=F@#[(M%RN3# M=VJ\D^I>5X@&'MNFTQ._,F9[%@2ZK+ 5^E1NL:,_:ZE:88A5FT!O%8J54VJ; M@(=A%K2B[OSIV-TMU'0L>]/4'2X4Z+YMA7HZQT;N)G[D/U_Q X7KBSZ*S\\3*.X'?:]SI5S382)92WEOFRVKB MA]8A;+ T%D'0\8 7V#06B-SXOL?T#R:MXFOZ&?VSBYUB60J-%[+YHUZ9:N*/ M?%CA6O2-N9&[7W ?3VKQ2MEH]X7=()N0Q;+71K9[9>+;NAM.\;C/PRN%4?B! M M\K<.?W8,AY>2F,F(Z5W(&RTH1F"1>JTR;GZLX6Y9M1]+D!_^M,/41;^?,3OY.!W M<@S]?U3H.$YV"L]0WALHN*W0*V6[E1UE0H-;,X^*A>T2E2O87)N:Y@57GBV=K1^'.XWKOH&K>HWPZ0F%TB?>M2@K M%T3'K,A'+,LXI)![%^1G;\C0BWC">,)9$N=$147$PB2$ MU/OJVLQ;#;"$&T4IGZ MG^'B4Q2R439BG"=PXKBXR!G/8SC9^_"^=08=V@+D!94@S8B*6,03"C"#RU<6 M/7RD9T';'E"N%UQ) >WLPYMF<"U@;;@VV EMRYN'K*#DIUG,PB)[;TB"5RNM M1;5QBUM3!_:=&;;;X?;P-LR&E?@B/CPLUT)MZDY3,=:D&I[FJ0]J6-8#8^36 M+C_6DKSS%@#AQ=S^B]02P,$% @ T**%6'3^2]C" M @ !P8 !D !X;"]W;W)K&UL?51-;]LP#+WW M5Q#>L%-@.T[2!ET2(!_["-"B1=NMAV$'V69BH;+D2G+=_OM15 M(DKB^#PJ&9?!;.)MMWHV4;457.*M!E.7)=-O"Q2JF0;]8&^XX]O".D,TFU1L MB_=H?U2WFG91QY+S$J7A2H+&S328]R\70^?O'7YR;,S!&EPFJ5)/;K/.IT'L M!*' S#H&1K\77*(0CHAD/.\X@RZD QZN]^Q??>Z42\H,+I5XY+DMIL$X@!PW MK!;V3C7?<9?/R/%E2AC_A:;U'0T"R&IC5;D#DX*2R_;/7G=U. ",XR. 9 =( MO.XVD%>Y8I;-)EHUH)TWL;F%3]6C21R7[E+NK:933C@[^W9SLWI<7UU-(DML MSA9E.^2B129'D/T$KI6TA8$O,L?\7X*(9'1:DKV617*2<859"(-^#Y(X&9S@ M&W2Y#3S?X%AN2N4-%P*8S&$M+9-;G@J$N3%H#:RXR80RM4;X-4^-U?1"?K]7 MAS;*\/THKFLN3<4RG ;4%@;U"P:S3Q_ZY_'G$SD,NQR&I]A/WL]IY$4(>S \ M%'BV5&7%Y!OUP7/-->;P>+T&Z@NJ.I8I:JJZJWQ_'#KWULUPWSH-,[3/5"TM MX6@2@#- 6AN*:0QDJDRY9-Z72^^J5,4S&,>C$.;^F,NM M>.N!I5![91K= 45PQ@WC&EZ8J!'4QEM8>VWN,@5G*1.;,> M<: _/)L[N70YU*H=VT%^9/J_&(-=,8XH[)X603]"OWZ_[NV(O&9ZRZ4!@1N"QN'%* #=CIUV8U7E6SU5 ME@:'7Q8TJ5$[!SK?*&7W&Q>@F_VS/U!+ P04 " #0HH58/_0J@7 % @ M#P &0 'AL+W=OFHPHN<6:F=,XL=O6\:PK- MV=0IY5DW]/U^-V="MD=G;NRK'IVITF9"\J\:3)GG3#]?\$PMS]M!>S5P)^:I MI8'NZ*Q@M[$R%3F71B@)FL_.V^/@Y*)'\D[@+\&79J,-Y,E$ MJ1_4^3@];_L$B&<\L62!X6?!+WF6D2&$\5C;;#=+DN)F>V7]QOF.ODR8X99A0V'H[U$(:X70X:X6JT$9R0M"GW5N.L0#T[ M^O3Q]AJ^W,#EW?75QX>SKD6;----:OV+2C_5M9:NWVQ9ER(DI6,+/VY@"ANL%;X_>OPOZ_ND!I+T&:>^0]9_8BX/ZN]$- M.T!V6XU=^");GYE.4@A[1'+0]\"F'"Y57C#Y#%Q:KOD4A+0*F(0QIB#N+#:G M<,>-918[ER@A+(SGFG..;%*CNM6X[ MXPX[@4+4-V&'QR:W@P=5A05LW@ MI4MPA*.L0EZY5Z]5 6\UP.L50>E-J34BN&&)R(1]7D'KP /*[1! $V(N),NR M9RBT6@@B#:LFXM5\H;*%D'-(JN4SA<0F*L^%=>PA_C\@\B'P:7?&A189!*%+ M@?#0[N"P-#CDP7>&Q4T[?FYQ+JVVS1D_VG!L:Z[A&XVY5;;8Z< W8MK-;:E6 ML JFK> -U1M&-F)C\HS;\0'XDT4A8H&DL*"6FFBC320":/!N153K$S%$WM#P M ]<\+R_,)HHK\JDC (/8]W_"WG6% A./Y% M8A_X?F*WYMY"[);JVXD5$L.*F36S3R(O<\Q$!(X'*VB&!R"PHLA$PB89;\WJ M:)]A5609/):X&(*I=^<5P2%Y$7=\B/M]SP]CB/H#S^_%,#B.O>/C 7%[JQ:5 M3N#_/[L2K@G<2S9?,+7AY";+K]6:M&RM"7TM]7N#U85F:V>P-K0TL=K$9AVK M$<;HNB)'E=3!T'Q8\FSV9NI>::T+FF.NY;!O"[V-N).?I:[VC" $@U.#*L)8 M2OMUI:3#C<2KBNGR3]BU)%BB.=M#OFP.OW M7NY*@*=BOS^ ((J\*(JHYK>V/?9@\XS1_+$4>.I":0@1W8?@GU M# \(F0A,N@0A8QM=.C+EY%^\I*ZVD3\E64F77O/B'&G5QO!H7PB%J^"NL+EF M1?JAXAUOAR[OIW3AH=-?)-PMLU$$D%"IL#(8!)DB=P%&G]\YCEUCT,$CJ$]_ ME.P]_ 4=XH+B\X9/-):)9R+6,7PX1%.!%>47$GR7XJX4WR7W6Y)\*U);3?SM MC51TLSYHZDML_*8(Q, [#IOFJEH$L=>KU<:FA8OA+;F.^/JF[#)D>W2K"J=L MBO<,LKX*]X ^5=/K^:_ 4-CONNH(@P&6E+3C2"5>>?8E-C.&XZ,1=MV.NQNO MEISKN7N;&8S84MKJ =.,-L^_LGGCU,AC8,U3U.X.X#;IZCU4= MJPKW!IHHBR\JUTSQ"#\3"F[ZM "S:-X]!]02P,$% @ T**%6),/ MZ;0\!0 %PT !D !X;"]W;W)K&ULK5=M;]LV M$/ZN7W%P@Z+%5%N6_)8T"9 T*5:@+8(TW3 ,^T!+9YLH1:HD%>/3AVMAO;H7HX:94VAWU5MY7!X.!RU=8"M6'!U60J[.45EUD>] M8>]VX5(N5YX7!L>'E5CB%_1?JPM+LT%GI9 E:B>-!HN+H][)\.!TQ/)!X ^) M:[NV9,7M\:WU]X$[ M<9D+A^^,^E,6?G74F_6@P(6HE;\TZ]^QY3-F>[E1+CQAW69\.+XT)HU6)8F:SP(5(,V@9.:@_+% M6_HJ2<\?GYV?7AT./%GB^2!OM4X;K?0)K6$*GXSV*P?GNL#BOH$!0>API+^3N?.6([M-?8.W[Y8CA)WCZ#=-0A'3UG_AR*^=8@)B;:XQ!:LB-UFW>KZ5?@5\A7*U1+6A\0C55T,_'8?F=*2NA-R!T M :="?_NJI6=;2XOT\@8$RS>B%@OIX80_L0&8;PZB5^(UX(TG&:F708QJI;;2 M;Z 0'L$LMK=Y^6*6#J=O':E(YUG#XK51USQBCBR>-]LP(.FW)#W:$I01FE%] M)JKE'&V4)2%I1O2(Q_1+D@2&^_$LZ8;)K!W.XFS2#J?Q9-0,TW&[-)S$D\D4 MAED69UGV,YX]5WA-[OC%KOU1SUYV#OS(OA&MQ2OVUL<'WH+66QD][M//^N.? M2J9?SQ>(;Q0D[NC>R+*FF)-[+;4(L()0@*@J)7,Q5PC4E8+D@BI=*/A>"TM9 M JT- OP%*W^/>1H'>*_FKYF7HZW#;H97H[60P9$Y6B\"1S_(> M^CYI>F=YE)3+M)_V?2[P&X'TR_II@>5Y)K M2RG:44KWRNA1-F4P'=^OHVY^6U]45V.8P!1F\$%';0:ZD'R2,D4$8K=YK)"S MA\X\=B'C()[F_QE70A)/V(-)&L_H[-JG-V\^:UY#:JS\I@A&+7'9D:8352_? MA+.UX*;Y"F]R58?ZJ;4HC?7R7W)?^":=JT,!Y,9Y]YIYD!'JW:U3VOX=AQRG MCPNC**O<0?07BJXJM\6C<'+OP6@4C_9G/!M#.HE'LRRZ,IXJ>@^F2;P_&Y+O M&!4649O!#U#SA@M)M9J'3H)T46OJ0!N.+]5"."\\&V6)SFZ:3./1<-0B(%?1 M[N1!=M56#KT7N52<+M*!PYQN% 6?6$*II_J;< Y] V%NVJQ]-KWF[**N=(2/ M6./"T@T8+OFT_XV/: HI/X9IG\)Y5G.*!+E-ZU^"M2,:]]O!F@-3*[4)9X0L MJ/#\(ZWTH197.F->4C4M&4]%F^>R$BJ:"Q62HJA#3]J#83R>A2:ZZWHTV+JL MEFB7X4K.]5!KW]Q;N]7NUG_27';OQ)N_#)^$74KM*-P+4DWZTW$/;',-;R;> M5.'J2Q&@BW08KNB?"UH6H.\+0]G13GB#[K_0\7]02P,$% @ T**%6,N0 M[YZU! R0H !D !X;"]W;W)K&ULA5;;;MLX M$'W75Q!J4.P"JJV+=7&:&$C2%"V0;H.DW<4^,M+8)DJ)*DG9R=_O#&7+3N)X M'Q+S=LZ<&N($K M)?\1E5V>^X7/*ICS3MH[M?X"&W]2XBN5-.X_6_=GH\1G96>LJC=@5%"+IO_E MCYLX[ &*\ U O '$3G=OR*G\Q"V?G6FU9II.(QL-G*L.C>)$0Y=R;S7N"L39 MVMC,L-[K+'Q6_@HIA]4XU=&G;=5% ])QBCB$%)O%5R&1]E M_ 3EB"51P.(P3H[P)8-GB>-+WO(,\++,(<]ZW.0PCJK@U+2\A',?T]R 7H$_ M>_\NRL*/1U1-!E638^Q'XGT<%X4CUF/9CR5X5ZIN>?/$I',2$Z+IYIC@G1;- M@O&F8FH^%R4PYPCK\(HT+C.^T !84I:5DALCY@(JQ@UM89EK;@GN.$?L>\/^ M4BNH'Q :A>Y:XH#9);"-<0\>H>PL,M"B@5*A78[LE;-@E5MW;'N&\1UAPOZ? MY("MEZ)<,GBTR&<.,;U_5\11_M&@C%:0=*SQBEL@PQ>M%I(EO>IL1"%[):12 M&+A&62::4G85;F$\-32PYA*C07RF1^XPK58K42&.O,"@B498P:574RG()_<^ M8 A41V=E1X%M.J0#4W+I))(K6G6+I7/)@J[1[YU[(_85;ZFJA'-G$\(#[ 9- M[U#>H/#9!3%AT*'?G=!T1XJUG!QTNC@6B\,FS[(\$+8=YQO[T;ND-Q.M<<=D! M.?HFZ0G2AM-ID,53ER6]WRZ)7. ,6%>F]+0NW"4WHX]8 WV-B=L$N23,(BF"8ZS((TS%)I[-SLSWE6G-;EZ M3,H)BX(I.AFFA1L748Y_D7>CFL6'OIR/H!/,O#!(\XA"E>=!G*2;>SMD:1=. M4EQ,<3[)]@MPR/RU:SZHME9H? %8YM20[40X9=NG]U4&XSL1CU*6CB8'/[SC MO?:B!KUP3126-&59WVD,JT.?=M&W)[OC?9/WC>N%P$=0PARAX2A/?:;[QJF? M6-6Z9N5!66Q]W'")O29H.H#[&ULG5I9<]M& M$G['KYA2G)14A5"X0P 0 ME$A9V1<)QTQ/WU]W@R]N=//5K)1JQ>VZJLW+HU7;;LY.3TV^4FMI9GJC:KQ9 MZF8M6]PV5Z=FTRA9\*9U=1IX7G*ZEF5]].H%/_O8O'JAN[8J:_6Q$:9;KV5S M]UI5^N;ED7\T/+@LKU8M/3A]]6(CK]0GU?Z^^=C@[G2D4I1K59M2UZ)1RY=' MY_[9ZXC6\X(_2G5C)M>")%EH_95NWA4OCSQB2%4J;XF"Q+]K=:&JB@B!C;]Z MFD?CD;1Q>CU0_XEEARP+:=2%KOXLBW;U\FA^) JUE%W57NJ;GU4O3TST#@W59V__RMM?#9,/<.[ AZ#<$S+<]B+E\(UOYZD6C M;T1#JT&-+EA4W@WFRIJ,\JEM\+;$OO;5N]\N/OSZ5GP^_^?;3R].6U"DYZ=Y MO_NUW1T %X2/T MPE&^D.F%A^2K<[U6XK.\%6]*DU?:=(T2_SY?F+:!1_QGG\R68K2?(D7)F=G( M7+T\0A@8U5RKHU<_?.M" M5*5+I MKG%HGZ[*0A*A95E#V%)6PK1XL&82=!H.:%3;-?5$7%D9+?)*-N6RM,*(7I=E M?<5,=F"F:9'YH (E N0E&*J MS':%-RM=%:R_M9+DV41'R+;%AJY5Q*3SI*-W*-^G![-)5M%&F_YL^575+IMA MM)&&!887Y%H3I;)@SH5>;V1]A_,K]KY!68/F1:^GWV>?9F*I"M6 Q2]=4YJB MS$?&L.@:)M&=L>SOK.A5.)QTI6HB4L$ZQJFUJ'1]I0B1%E_ -+',9T$,2TK= M2J18UKL1BSOKHUV[TLW$,>6M7%1*W"G9&%BGI&<:Z$^0F[ M@KRR8I\86)-+^!$K% H'%P[,^(1#K 9)'^1 V%.5Z[+M=0)KEXT]$"Q#'0"] M>M<"K"1DE8UN2*43RL[6'(V$(:!BU=Y0U+8WFFV[!$#WW!<*94=!RM/6*Z:' M6'\Z7H#>LFQ/'J8V\O?24&POK09TA>H#U,Z.9_8*9X)/W*#:(Z+P'?#,'#>]#GLS/FI]])C/W 3;^Y&02Q.Q'&" M"]Q@STE/Y#B-8S<(4WKK1XGK^5CH?-8M-C_#H] -H\R-_ @+GA&!. Y=/_1Q M2Z(6Y1)'4N[;ZHQ3Q1A#R+_7)5=*>+3I*"*1&%GVGD=K4MV0]L$1Z=NFM+;# M6Z+1ZY/SO$UTY*M((=+T&C1GS@&E?>[U_J2SGXDYE#5/$US%L>?.8Z_7TU8B M&T/'\3QVPSGIX3B#2K,,:KL$ZLH&:$,R% BX2F\X43%.P#"0 2H-76^>L<(S MSTWB!#LO5N1X-H=4G75D28(Q!)(98HB5!(FU8N(G;A8'V/@!TC1B/G=#;RYB M+,D2YSS/FPZR4G2+OA(0LOB"HHVYX> *GHOC +9,0W*&CPJ%9$TOMQ8U(H1< M.#23_ 2TKZN+:9-D';B)0< E_+*UL9DO(F5ST9_YRKJG$F< M34Q_/BJ00]_JWZ8\BAGH/@QPD7BN[WG.A=P@G=@\>/F#7&^>OQ$^XL5S@R04 M\R1RLR1S+BR57#;-':C>R*8P(G"#=.XF48 K/X/D4>*\JZD.8,_J+1#"H;PT M%&D0N%GFCV;:R+L& @H?YLOFB0B2U)W[F?.>S(>$P?7@UI!I[$9>(!"K@1>3 MRP%3&>A0DN=?11:Y(^37$&*IX>&W--B2>%.<-$I*F;)H'S'FBJ)O62 MCY>9.\<"B)YDL..6STI=(6(&Y_%CK(LR!\4K.RK;$XD=_##VHB@"#0^R>%!? M%K'3.[\]@)\=50KX=1C#?:)8^*D;P[$RS^^=/(I=+T[9;G&VM?W$?0(< OFB M*!(!_H6!F_ISYX]]$15#.#\*;=IS456Y7@COW76I]UM7/',^-FHCRV(0SB#[ MPM*(R,!+83P-<(Y3K&DAT36ULCUE]$=-#M!FI.M.LWQ=DAL(7 M^QXD9U?<*.R$PZ!2((Y60V8>$'&2L6PBJ)4J;#U'/&V(*11;!-H*F-Y.<-/I M3PF>5-4O9$4^85S;:J <*R&@K63HI'J_YEQ1P-A88P%/%C E(855ELNKC"'V MJ<"A0RV?K-3]FD3-2]4)58C"6U9WA7HL[,C!/Y&$[;FTHVKET MI_,&/9+)]U@'NQ#%RK%F=,4N=N]/Y($XQK*/6V*7/;$3<:G&)D&<3R2UN\[- ML* X^08.V/2/BR&S/8H(/0Z,B[^!"ST:C,L?PP?*O9Z;SN?B.$)*23,JR@Z! M10\26\*/@X9%BW'U(?#P(7F&VN0X04'AH[YX!$<80$:*!_&D1Y$M;AS E1Y/ M_B:^! EEMT0@ M4BT+45O!DB@@4ZJ[OP5&0*",*KH@Y/,3=TXV^']QJ<>C"<.'\0ER)F@*O(@8 M3J##(&,=?!.L -)I%G'CX8=[,:M'JHGAGX!=L4L.#XZIC*36)>22Z.2)4+9% MKYUP'I^>&V<_&$VR,3);8>=&M^4:"019YQFJIED**6<0-9I%Z!($Y0R0H]&' MZ:IV2.EDGHNN1YE?],(@5 X.A^Y$$?&]L77[[\!['H_*QVV@>J8D)+=O2 MMR35$JA8TKJ^/AE'(Z!?-LYV=# 3[Q"61<&AX0Z'W/E!.6A(8 M4NPU);?!$JS\NFJ0KZDT6//T%L])41H^WTH[&&':/*=:DU.BM*M% M[ FH*(<9))C;Z)*;P6NP*%&85.I:UH3)^NM" H=(F[K8G9FMI&WCJ2Y!@.Z( M9LN45QV+7T=(-\#8%_1K/"PS=]= M7DR50W57F:^@.V+.E(@M*A/K%K'&K#KW6;730&9W,GTQN\/2FQ)5R#96Y>Z@ MYHF#9;:7K+?SZMUIKJYI0KJ$W#6\AG8,I;*SK:XI%XS=P[@5#_OH81^LRJ^4 MGM@5:]WV822.RYF:P1_L^W*E84GXM[0#2G;;[T_Z"?)0A=#X%7H@1G=FP/0) M#OK5%1W4SP9;E:]JJLG%&FZR'?L-;%I/H"9HX'8J_\!E0UA'&1>,#N\3J28-C[?+]X[#[32\]ZW)3M9F2<7CLK*;L-#.W2D..M=VUG8C6E'3I!@8O%-. SJN.$VYOPH9&_$@K[&;JMC2LX*%; MW-MU62"?\Q#-)=J^X; M_O9,VK\"[UP":"XR< K;O*2LU,E/P9;?Q&P"VD MG&8TL2GQGJ1_H"X^&N?9COG\T%!B8A='YBM"B&+GXP6V\0>_O&/R!WIRL$:? M=.Q H=?F[82*[] N&G:',R7PP3-0*)23K8_1CR#6P.Q8V\-U$^ M06\7);/D^Y-]'[%/)S\P0(J]XI]14)V TL3^UF!\.OY2X]S^0&&[W/[,XU?9 MH$HU:$>7V.K-TOA(-/:G$_:FU1O^N<)"MZU>\^5*200N+<#[I=;M<$,'C+]? M>?4_4$L#!!0 ( -"BA5A)[*[?OP( .@% 9 >&PO=V]R:W-H965T MX4BJ8/*PF.^/_!*D5?.;%*OK=5L(@^FR"M< M*]"'LA3J98&%/$Z=P#DM/.2[S-@%;S;9BQUNT#SNUXIF7D=)\A(KG,(E%H4%D8P_+=/I MCK2!Y_:)_K'.G7+9"HU+67S/$Y--G9$#":;B4)@'>?R$;3Z1Y<6RT/47CHTO MYP[$!VUDV0:3@C*OFE$\M_=P%C#RWPA@;0"K=3<'U2KOA!&SB9)'4-:;:-:H M4ZVC25Q>V4?9&$6[.<69V7RY?'A"!"\QG_ J/=SGRFL??X*W%B]@6 MJ$%4"'G?*N-HK_BUZ6<&V)XF6@K9:SW(L:I0Z6@43VA,WO_+ACX M'Z[H#3N]X37Z?[W)5<)E?0'K0XONG=#-=6#2PV1BD) T,? KW M?1CZW.51^'J,DBEJVT9$ 2FV/X*D[!1$(7.C, (^B-S('_2^2D-.-Q#X+AM& M[N VJK/@8>A&=/:EU_7.JJ]$M:M[C+W(0V6:0NQ6NS8V;ZKWU;WI@?="[2AA M*#"E4+\_C!Q035]I)D;NZUK>2D.=H38S:L6HK /MIU*:T\0>T#7WV5]02P,$ M% @ T**%6!!1+!GA!@ (1$ !D !X;"]W;W)K&ULK5C9R] RE(CN>GR8I' Q<'=S@'HRXU4'_2:"=6:T,#H^O+AJWXG)M?FCN%;Z,=2B$J7FLA:U!\ M>368A>";_3>,U D"RD_T,NKXFH0D$.\Y+DA!(8_#_R6ER4!H1L? M.\S!;DM:N/_:B.K;C%Z4(G:_;)/71[V%DR"$PNB;D%D_78;62]?,,.N+Y7< M@")K1*,'&ZI=C MOKD<&40GFU'>(=TXI.@$4AC!:UF;M8:7=<&+0X 1NK7S+>I]NXF>1'S!\R'$ MH0]1$,5/X,6[6&.+%Y^*=WS;[.%-@K[Y/=C MT3OLY#@V<>=<-RSG5P,DA^;J@0^NO_TJ3(.+)SQ/=IXG3Z'_HRH]C13&0]A# M\_;18&YD_N&,FKSP%9DJ'7FW4AM:IEG)-7P- MZ=A/L@ ?XM3/IHDW1PZ+>N7#BM<(7 *K$:I =@BJ']$/$2[%F#$P M;%'RQP)H)XK";#&BTA8.O47IQO+5!2T@'SSKR*]6W]!BACNA7,/WE I T>'P M'1/*>\_*EGMO9'U&/J,A92 ,+^!'5J/_6^B([,:C"\QP]^19*%P19K&?A1/* M_3")O?<.YUD83_UI.H7G_03J\9(+.Q?CBF0W%1W;'V6$5PM,3WS2@V,UUJ06 MMGVQ.!4FWE5Z5^/'%K"T@=D&"WQ0=G?V *^:4FXYUWUA.^0UPSY]P$+(5GOD M,R6\^LJ,^AA/KAQ;G(Z+1DGTL'*4V(BR)(G'BYT[W'"L;FVH"&&WPPZF3FF8**AU M0+@61Y*L\"+=[(51<8K"$]1V:X'$N9;,=,Z+ MGV9AU_YHO<>,,/"S-'V<^B)F'.SBDDB4?^@IS[#CZ)CUNPQ1W4X)R7ZOV(M7 M*;5M1C3F?9,?T.NS@V/HS0XW])_2 MYRCMVD.'CJA[6W<"WE^ACMW*P!P+ M=\/0?4P4, X"/P@"B/PX39P'87K: YJ%GU'JX)ZD[M5.ZBSJH0MH>.:LX(K,L#Y MI92F?Z$-=O\5N?X34$L#!!0 ( -"BA5@@2']2E , *8' 9 >&PO M=V]R:W-H965T# J99PER4E<,J&B MZ3CHEF8ZUK630N'2@*W+DIG='*7>3J(TVBMNQ:9P7A%/QQ7;X!VZ7ZNE(2GN M4+@H45FA%1A<3Z)9>CX?^?/AP&\"M_9@#3Z2E=;W7KCBDRCQA%!B[CP"H]\C M7J*4'HAH/+284>?2&QZN]^A?0^P4RXI9O-3R=\%=,8G.(N"X9K5TMWK["[;Q M?/)XN98V?&';G!V2Q[RV3I>M,%:. M_SE;6&2J,OUZ+N,$;O8[GF^7< M5BS'243=8-$\8C1]_RX]22Z.L!UU;$?'T/__M1R'24<#V$/U#J'@1O7NL')8 MKM! 2FE./W\^Z8,K$"YU63&U>__N+$M/+RRL-#,<]!HX)3!WVE@0RCKA:H<< MF.\!W= MZ :V9R_8 J.KY9Z/XF =?8FT^)L4_J(# M&V9IBCS4% 3OK7:M,<:B;%6I",927U#M%2 ^Z> MPR4#J-#D5%HTQMKXA $J"\>> *78B)5$,BAIE%KFD]%K72T#,:)\&,I62$DN M7%[\!QD9*?<\NALZS/P 9IP+OV)2[E[FJ* 4$*+15/T_VX(9H3:]D)M&73T]+7&C ]F9XEF$UX(GU*":<9HI^T>H5DS>Y^/-R_8-3,;Z@R0N";3 M9'#Z*0+3O J-X'05)O%*.YKK85G00XK&'Z#]M=9N+W@'W=,\_0=02P,$% M @ T**%6,V;G'54 @ / 4 !D !X;"]W;W)K&ULC91-;]LP#(;O_16$!^Q4Q):<+W2)@:3ML T(6B3K=AAV4&PF-FI+GJ0T M[;\O)3M>!B3!+K9(D8]>2J(F>Z6?38YHX;4JI9D&N;7U31B:-,=*F)ZJ4=+, M1NE*6#+U-C2U1I'YI*H,>10-PTH4,D@FWO>HDXG:V;*0^*C![*I*Z+#> M'(W!5;)6ZMD97[-I$#E!6&)J'4'0[P5OL2P=B&3\:9E!MZ1+/!X?Z)]][53+ M6AB\5>7/(K/Y-!@'D.%&[$J[5/LOV-8S<+Q4E<9_8=_$QH, TIVQJFJ324%5 MR.8O7MM].$H81V<2>)O O>YF(:_R3EB13+3:@W;11',#7ZK/)G&%=(>RLIIF M"\JSR6+V[6$)MT^K[P^+^^5J$EJ"NJDP;0'S!L#/ !B'A9(V-W O,\S^!82D MII/$#Y+F_"+Q#M,>Q.P:>,3C"[RX*S'VO/@,;UF89P-"9O D4]26;JHMT,"O MV=I83=?B]ZFJ&V;_--.URHVI18K3@'K!H'[!(/GX@0VC3Q<4]SO%_4OT_SF4 MRP VZ(&'7'40H$M\97.$-Q0:T)T5T$YCM4;=[?8UQ!'P(; 8Z%SC ;"1&[ ( M9O;J='0;P2 > V?>C,]$$Y@3> QL 'Q$3F"TU/#4AH5'-[I"O?5]:R!5.VF; MR]UYNZ=AUG3$W_#F75D(O2VD@1(WE!KU1M2)NNG5QK"J]OVQ5I:ZS0]S>MY0 MNP":WRAE#X9;H'LPDW=02P,$% @ T**%6#ABQ7)V" 014 !D !X M;"]W;W)K&ULK5A;;^.X%7[7KR"\@\46,.)+KIU) M B29V3;%YH))VGTH^D!+QQ9W*%%+4O9X?WV_0U*RDSCI!NA++$4\]^]\YTBG M*V._N9+(B^^5KMW9H/2^^3@:N;RD2KH]TU"-)W-C*^EQ:QJIGLK7%M5TJXO29O5V6 RZ/[Q52U*S_\8G9\V M= YZDRRX?=UI_SG$CEAFTM&5T;^JPI=G M@Y.!*&@N6^V_FM7?*<5SR/IRHUWX*U;Q[.%T(/+6>5,E87A0J3K^RN\I#UL" M)^-7!*9)8!K\CH:"EY^EE^>GUJR$Y=/0QA C7_V96&:.1@MQ'NI(^N MD3F=#= JCNR2!N<__C Y&G]Z(X2#/H2#M[2_OV9OJYL<[8DME=D+E>*QI QY M:V2]!O;68D9"U4NCEU3@0BRE5:9U(M=256Z(!E<>/](YLCGR7FUD-R+ M_!"IU[206C36Y$0%:N"$+Z47T.9(S*VIA$?_"V_";P9+OB1A+,Z"/T1N6HN# M9BY@3LQ:A[B>MS'/;HJY2:"5G2BN_%JN2:H@(!2'C2W9@)F>:GAPJ M)9X2'ZSSUEHJ,O:8[\\TTIW;;5G%#DN5BJ/"0I9AM)J\&)L0"(GBS4:EI*A*3J2/+0![=-B(^^ M>VC,:M#KUF/.G9EY<#X0T"4F!?GC#R?3R?$G)V*H)E:M3S(&0VXJE 0NO0,P MF;$[\)*7$JT[3+].)(@\]R2BH.C+RYV^,JTN8M5R0"HB.7A*0',!G_(2](YJ M@'6#$QF"KF1!>P+S0#@$@5N/ _#V*3 V,()(;?Q6]';[*'##3U^!#B3I)R["+$S,IY'P]!_Q MBUQQ%=ZIYKK.0,OCH X78.DYFE*X+:EB(R63U H1B;G2'.("& +P<[*,)A%Z M#9EAA8PV**BHFB''G%?6/3/2%GQ3*%3.&^M"9W8*TJD=>LQ\CDZP((@+K;/@ M9^KAY%> R_03R5!XEULUBZB8MS8T"M @E4;2LXHX3@X%&$O@HK))^$:RA5\8Z%AI$ 6Q6I!=2'#G&(%5 <,\ON M46@X99'$HLT5DV'1!E1#_0@86RJC&4*9(V0B EZCPF*V9GQC /+,$W. B8)+ ME7)@(&XJ@0A\I!%FWD#UN6ZW&N1Y=UE:*)Z4 4>]-*O-@'N.SF,XN+9I$CVA M*UP;]>6FKM-^ME+@XEWZ[U!E($!,CG@)F)R(K:!05. +7J? G\27_;GXN']> MBRV2@<(8I<98B$38SLBON/5NI 58IM/D&%OZF69H4E1DDCH((UO L>"'YJS'%FGOAN:CH M1'VI["[)2[(+Y'.GW%V=Q: F?QVFE@ZDB+G$^?9Q*G1><\!)VS7OZ.+J_EI< M$'1ZVZ+LV'W$@S?YMY<4\HOJR#WFQW"3[0H30][W[L'G2_F'E';;X7^T-8G) M?O 7I6C07NC!^;R?!\B@,UH5@57G!$\P1Y*I.-5B1X65PF]:L-\BN !:;[=D M*0N1>A'\ QZS%&$/DPT0F2N@/6*:);=\0@KCJ XF7J%*'>G8;1&1G)DE<;PB MQGN4XLW>%V_BW5JTM6D:P\Q5F?@$_8-M5:LJ[E>R0?LN(9EHEC.(U(JF=B Q&]ML8CSM8)4$7*<,AL3O;"\=@0IDXH1=CF8 +G[=; 3X7BT M;>-J(TU,,J_[C+L8XU/G@7$TZ'&G\_^9P3DB\GD945D81K?V>D-QR;G'H(F MXE6:]RU,]& _S*&GYA/);'*6IJ9Q?#B4!Q-W3]R#&EJHR'8(=/V(K7(.HS'* M5,< OI[B_U?!$@&^@$C'OUE@J.>W%RYCSGQ-7<\L[&?!$;>H$%:8;R1^ HJ M/TR,*F82:QF_CO0GD$S-'V#6?]GL3<9B/G'5%V )6\LZIRSLC146'G"S+ K% M=1@^)S:>FEQEK&&@:QMWRXU;#1I%XL+'U'P0AR>'P_%XW/\^6QAW+I47V9-^ MRL.9U$V)Z;8I_ZLIK%JT] ?3_\N]C40)8(S)W M9H45O;E?!Z; &X:Q-:U= BQ0C+B8:<++:^B&7?GLWLK^S"X>0DAO&PO=V]R:W-H965T44J:^^OW MO)*4++NY]V*!Q6*!P32Q)?+P\+P\YX7,3[>N_>K7QG3YMTW=^)\?K+MN^^/C MQ[YJQW[:FJ.BE3?WX]/CX_/&FL,V#5S_19Q_; M5S^YOJMM8SZVN>\WFZ*]>VUJ=_OS@Y,'^L$GNUIW^,'C5S]MBY6Y-MV7[<<6 M?GL<1JGLQC3>NB9OS?+G!Q'<5_SEJOKYP3%2 M9&I3=CA$ ?_'-I:O_:JMN_?.# MYP_RRBR+ONX^N=O_,+*@ISA>Z6I/_\]OY=GC!WG9^\YMY&6@8&,;_K?X)HRX MSPNG\L(IT?7QXGW^^LOUU8>WU]?YQ>7GJ]^O/O\MO_CP)K_^\NNO%Y_^EO_V+K^^ M^N7#U;NKRXL/G^&9R]^^?/A\]>&7_.-O[Z\NK]Y>YP\_NMJ6UOA'/SWN@#2< MX'$I9+QF,D[WD'%RFO_JFF[M\[=-9:KA (]A36%AI[JPUZ<'1WQCRGG^Y&26 MGQZ?/CDPWI/ J"N;SC:K7->9_^?%PG_+4KS\P-0)V_:&_/@U0]_.3D_?GF VK- [=FAT5^]+KSUN5OF'W'LIBM8 M!9H*/K!-:;>UH:\O7>-A-15]/[6(>TR3_8/3Y)_7)BN G9MMT=PA0\OPM:GR MI6T*>+6H8C.BXUI;5GD#W_XR_/3T^.77^;7 M\_R7BXN/]/O)RT>TMF*[!0$H%K7)VQYGP ];L^IK6A^-M#O\M2G[UG8@-QD^ M__9;N2Z:E0'>;#;6DY73::_?7NJ$<^36/1@$JZW[RM"\PH9 QR5SFLBTG<]N MUPZX<>1N&QC-]PMO*UNT0-@\OZAK&*HS;:GOZ%CX,LAZXXN2%QFWQ-06+!/1 M!HPMT[V>'Y#EIT&6GQX4LB_>X$K>^LYND)-38OK=$;)T!)) %B262/AR#U=Q M.>C[;'?',A9$ G;\S]Z"W!./>R;2A"D6=V"F&W!L.!(PMNQZ&!L>!W?A8=2^ MKK+*+I>FS9>MV^ @,$1X_Q#CS@/CS@\N^Y.Y,4UO\D^F="N0Q3TJ?J]!LF00 M8I\*U1)DR=WZ/+&/(/!-5;25!\F#)8*J\%MN:\O\_/A\EHN<*X'$ + 19$L] M\_F2?)]IO6A"4(Z+ZTL<)"A(=K5K".29V4#\6U[!WV%S6IGX=@WB:SL6;-@* MW!B@ KPP[&4!1L2!:H)8KYRK<@=@!LRTA4DZ!]^60B%:DP+^V^#Z8<:B0[B" ML(-% Q7"5D9$#68SW[;\I0/]R4$\;%?#)/ KC&34+H#4T>NCN=D@;(H_7(LR MZ999LD9DRLFSES[?FI80&W+$+6J[$LL$EC/W\+-?6IC1W9CV" 0.3(8?L.JA M?03SU;5'%E1]V)0&UEV#=0!E!RR%0I\!U6,;\]#"Z^L";0:L#N@H#1M+1$BX M3-P)F!HXX]ET]2U:]&W=PSOP;>%=0V_ [$M@&.#%%; &.8(8+T?C5!LTY# 8 M&L4YV%K@,%$2%Z6[W":BNW&5J6?A*R1WU3KO=2ID4! 4YI!N(DDGM@''VCDN=! MPN1Y-+&DCHE Y/^:0.3_O$!D: 7_EPC$YS5L#?SWM0$_I\N)Z]LK&V-1^L[C M U'*_A51RO\A44*^P-,E@JX5B1*)2G905%0XE(+YP)(7M7>T2V6PQ&3,U'!U4^5FV+>YH$&+)^-NAP+)PA+4@=.S( MHC ]-?J\8F%KX>;(\9%B+%"-Y_D[<6ZR^EDVF**N]!-L!? JY6X0:=Z%OPGPC&6AS#P+; /U.Q0KJ-ZLD#!4 >ZAYB08 R M\"0)D<4]T3BLP*]=;\5Z1(FH2PY<$\$YTVJ/&"0'/ ;?.FVWD>>@/%<8!<% M4 SE8)(4)[!9SW"#0;8X !4;#OA^S^@HO0%(DN31:X%"-&-BU>#CRH+Y;N#C M"<"96KML#!15B2G$DX@$A)!T@G>4'E-SBR90EL9X\KYPP38408[LGI+%YB,J M*Y+ABYHCHZ)!(2!3*,*Z1P@ABN/< ZZI0(99 MCN4C4$$+.A@6?R@L+">*ACXTCY1?9'*:>#IXDNO5AV MIHT>[H9V7-DPX=YBA(%ZN.SK);@SW.6,4IF42ICG?\7537I4$M#JAO=P*=@! M20JT$410&X]HH36\#R)NX4%D"*RN[4TUSZX'K[/'X.R#Q/^>G0[NO!^(%ZX6 MMA_VY[9H6V0N;E6#@3(Y#!"ML!,O\[6[A66U,Q2 ,LH^2%_1-*Z+IM[W(%K) MB&H)ZCNU)7=YY7)ZAPE0O8(PW=PY>,9+R J<]GV++$-;'8?$1>+[.G2V1T' M$ 3E",J4I$TP+U72/H%8N5*93'((.QN,0ICV5QWZWVTX:0!Z;,' M'JGQ?8SY,*361;#%2=:9\3IU:7LH"K@,-SXBU\3I8LPAZ3P,?4G8]WT==ZFX M*6R-0(-QQ7?XWWL2\4;B!H!7R M1\F+7!P@E<:L'%@/ M#$H0B0PYDW<7 MGS1? F*]MK@EHHK9JK<,BX1*F,_X)#95@X@,NZ4@S#81AB7<1X:@W^)<8= P MF:@25#=:7N0 6XJ4N].PF8@)DD-F"K8-441@.;DJ8BA)7S2C%("#-2^^ 6$6 M8@L8)5O<)?0@N.Z[M>-,+O)7H-#1^# +RT->WG6)?$8WM75T+I6#B@F^:_^0(PY#64XZY0$ M7KPOB;<)?E)34&:YI(251!(4WR&:([^R 46\BTZVPUSP*N?4ID&Y6ICNUI"3 M*HW=$BT)7,F"UZ.X;#?AA2P%1^*C9;HS1?O_68\]68](0^^-#[[]J'-'9-9L ML^UA*(@+'+F>#4S3MS3'JD4VX_#DB/?P;F'* E<,!"W # !,!YGM?+2T"&45 MGP/0&4%7,3^NA-7Z,<.)!UXA!/N%H8$(V"M6=2#ZJRFKRTF(MENZVKIHL]$) M:.[VX"S\$ZAX:X3D\'I3M7AI(AGV9P% MOTRF*T.6M S+UKR?0=_@QE*)B)X2H=X'3*55$*9 SL.>C2TI"$ MS^* U+H04*,0E\I(0[54#Q"%2>;2UU%>OX'H1 :EWVM*HP3[@,"K,;=Y0A;) MS3="DJM=J\.TI7@U^QSL.R=0)HD*V&#L[V8A6E<[PI%7-"4DCM/PKW,92YGM M)/( T#W*FL)8R%VTLT.1P8X37",CCN@N> \#EJ;U4L3=;P@5W:"R=>7ZJ-]F M#,CN/2C*H@[\?RAU"O;)M!@/)]9-(F32;O+[-X!H2(X& &;&"%A0,;$]*1>G MV[XU#;A,.PX(HQ4/E<]L>JK$+E*:M[9?*SI0@/I)2J-+'&Z(*46.AN6&P8.18)[M@P=A!)8 M(&801G3OQQQL8UQTDK)&(-"#C%<4OI$<9'N<.H>[O.3!\FAO)#? 0.:[.!*U M-(6L4>^R7;,Q4K4A^R6P\!I&DH_'&,,2B0E.FS*N IUXX62@2&2D]!R3::R9 M.Y6?RV%T1],%>GE;Q-!S7GU/3D':3D"[7#L+KEE"P'Z1Q&W"3$TZ.?)B%?A( M2LAYL1FHOQR9R]3HQ>,S0#<[.JT[@^8"B$I$$F/V.XYPR -7>=6'T**VRPE6 MQ+X0=CXWUMS">W_V10O+B5FDZ"8]32E*]%NNWE-U=\-3!2$>IT*IN@YL>\1FA2,4[L:"5 I9HZS ! MHX6_R"HNH0D'I2H*-B-1KO0]_!448UJ#0&X'^ZFM#;%79F&B PP7E*K]9Y& _4&+:[415),+C6 I,=A]]8KLB,X+MJL,T- M%==C2B KDLQM+*B 6GA:)8>093WE 3V?#]][L1K_M%1PV)3\Z.C\Z.9YFDRG\C(WH!,81XO#=& MPB9"3(1B3E_N:U:<2YK]0/?FL]"]^>Q@X^4OL0009IMJW[SO*%FD>2H'DE0< MANF04<4!U 3VEWWXX>[G8:)_GO\J5;XNJ7LD72<5@&^R=(L[L6>3P\_S:\VV M@+0Q3#GB\$]K!P,K*V4'*I9@J!,?*AEJ"6-;UZ_66M9]PZB:,#L5M@E#1'7FL&%"J@:.-!.P7O25 M#>"7$CXJ;X+^:9Y0LAL&!>"HF1=")ZR@XSRDEY$Y*) \(Y7%T5]3/7>CR4= M']3WR\*OIZS$]]\:)+30\7&+!%&-7V-_G;9+Q&9YQ/:VZT4U/U.5LZ;ZN825 M#.%8IT.Y\HW9.O )^54CU7;@5KMU[*LS@":R*7BP@"3IW_+3I\>SX^/C_&SV MXNS)[/ST>?YD]NPGP)),.\[QUFDJ:X><_! MLIW!]C!9HMY(0.#FWK5 M@.8#,^XF#[?=\]US2R46#QF^S%U5=RF02AW!3=)RJ>ATS_<_4C.1O/E M6&_A+ /LM-;?/-6#&H-VG- 3;A;7;2F92O'[+9U;Q'?1T*\X3)/ ;!1!*@J# MC>!\3R!V-@QRLYU U6N7\Y%MCA!":'D@:8! NQVR:9BS1@]T!]1O"^^GTM8I M<8P04)@Y?X-QC3(=!!W/6$BS$40R$/\O^XZJGMI#%+MI!=)9XUNM&(89L0(9O)8!M-&[HO;9K#,2RD-AK5QS 6>EP66MRTE1VG79EPH M@>?%F^#6QF5BR4L^C/N=T9L'52 Y*GIR4(P_4J>K)"S> JS?(K\F]>'@0--G M'W7T;#!Z/OC8A(^Y:-JV5G-KZ*1QZ=SQR-$N)O^P/;"TTHCZ)OD-82*&]SUM M)E4F-4V(ASI1*XZ0<-&%+/3OIR)@ /$,LHIDAN?Y>P-"M7809MD-8DTY3U;M MFS\,[M>HR:T.5^,XA"TRQ(GWF/FBJFS,I0UFYSP*UBA8EL,@-T:KT*KA%0'E MFDQ+85L^LDC^RC3<\4V-,00OJ15-@\AY?DC43J.HG1X4->+?I.N]UXL#-UOS M1T6^Z&U=*6C%-)GK?10IK<=A,O7YV>DLEZ'2>RC*KHD%]#@R5+=8TQ<)R*J:HMVRG+A7#I<8]'5 4#YG0N M'4 )#)O)<*%?=Q)UA]Z8GCC"X1/7M>C]03(_Z :;YUW2!G/M1+R#2C2GHGD( MZ4Y"EE%$%5.QPEMT/+K)@Q1G3!E'XJ@MD#-CW&SFMDF=GY01\TV:DDR6ID<_ M*-$DS4#@ACGONIL*HB2F^88=D6%9IA4QE('2LT519V&6&C!L S=$,Q^T#B^JEW4:B:CID M (85+P'H-//'+TC#"EZ/@?U_L>Z\I-2G#TTN(UD4'1T&CM2_->R,31." ,# MK%+-A@@:UG'V+SR(MXB%#IX=&AQ=5PN2(4V0:1D]+E+DD6?9V1N>CK\,NYQV M,8PW%-6&XG0]C**V/"IHDANQV"@!E*>)@1G?%L /IT8B2+HP(=@GFG0#+CAF MSH=@@%M&8MO"]QUWOI/*GW#>TY$]GQR]>0*C](C^?/3T]AY^> MP4_/7\#G9^?Y._8WJ7OIJ"2KY Q O.54E^5;.E@T\F8\- MR]I6&\WZIBC7L"OM"!W.%%BUZ6=AS3NX;+;C'+56? VCSZ*98:]_O00Q(KWF9P4#-#W$UWKMRXF>_)4K), M3[+WOF-DHAK*0THE+NC4B;>V4]&P 6]*W M$&*;;#<&U^:#88>HA+]Z0C0,$) ?)G$I:0M$42*28(UJ]3#H'H976&K>PZ/P MD-0DI3T'<^FX%3!%4J>L(LG[6).V0L3'LY1D2J28:H0;!/^D[4%*7R(9TA[5 M5KO;=FAQ64B.1-JBYA)8&BK6E%=*JC,D=;MB?&ND L$4@_(?TLYXD\S)X8M@ MWB&EOR.EDVKY_9IGT,;%7:PL: ':._6VW;@TZKQM3^^%!%? 7-BF),ZJD MOJO=_NN4J>]QK/P$FX0,%WOQ6T[M#&I=8;8_>]=)18R5GF\_PY[SK\%,4,H6 M^QXU=\SSG([FR66>%, @4$EC"&X]<0O,Y4B5C-:%0LRC/E'_Z@\-.@A,^F9G MP&G,0]/ #Z>SD2<97X$4JSO:W1GAD'XT"#FP>?V;=F"L#8RKRJ'@V(:E+'[C=(%@89^#YJQ[$F.2V7 M])PAI]"4UHYZ)=,.?.3GNXOKUY3.D2M3M[HZ1:R MK'> %5SY57LSM7]&FE,%YYF4&QZ'G.<:!'TLQC$PE3&UXLM6LV\@DL.?/UU_8=UJ#;N0$]CE M9V>G^?$A$8\=&2>'FRFNF.C/>'QP4KCO\WI&K^?R"Q]%E//5R8CH4V9/< ZN@2 )%&V OA@NW [*Z=+W;398GVWODI-]/ASM MVPE8)F]3&^$*TDJF-MNAME%[*^T U((.A"XXV!SF))W4QF@E;#9I+E@DM9G/ M8Q//?@Y1/T3(';&[S#"\$D/R,]Q\V]=IF/\,3&Y$#WSLT T11(7YAX9[)TM.XD+]'K#=C_#'3Z<#N-F(>8R/P3#*KM">'1 MX4+RN!#:90]VK> [6!IN3-'&")B/%",>/9X^J;;%JTYH>%'_/IV_D MQ$V:)0MMNWFZ0K[7@XT;?BZ%G8.X(#:DG!SN+;E&9WGTFEB'RX&1]]XV>O^A MLG2H_16]K R?6.BAQ"QP;.3Y[,!E?E13K,./TQK0O!*O(M0/DBN*?(I M1!F35/ I&+W*AK#,7\CBXC*89S%BCAC;5L MX6BE2TDFZUU=WJ2CMF%&@MOB)N5D$-98\'[5%J]0X0/$84TWE-)5MNSCPEZ3 M!2*R-+;K&0;QK'0^86V2[S(^8'U0A6-SU,GAAB9@KL'X5OIA("S&[%7C^YU M61FM(6"<@ +6TS9*:V@6[^;9&$,"J*83O X9\<&9J%9BX.%9X'A $EPKA+92 MA1C<&[)#$1[E&J)!NR"EMIF^2; M2ZE?40.H!D@U'^TSFU (ODQQX'5$?_"FU*2Q5?#0#=^Q)^OT<%_51U"4%H,V MM N?C%;(R[W^Y3[C97O&"Z=D%;U2F0 )D,-.R8W(K4FJ]2Q\=$Y>;LM*3UIH ME:X(24BKIQ4B'[/ 1V0C1:A8Q#!M,%EOV1QJBO3 )E"OYSM,,1[>]W-+A:5PTN^P2E^R4^/3\Z/3N"! M=R$@N8II&'#NP^[,AYP;>')Z_NC'_%=VE+A2O M$P#/$X^TAU.Y'#14MI+Z<6A4#BUVE DM0WEH7$#^;O2%+O(>'*4!0:\_ !D7 MPDC@UING&4D^P MPU"+UGW%@S:]W%LHGH2J IU94=,HI]_5$879Z/@TVN!EWY(72L8"?R&92#[W MV5J/1RVD[86K=1WWR-"9(QI'CE45"1&8UO9H=?C&;6DSFU$X9K2_ M[@Z%;KW6H&_2QF9#.;QBM<*SGY(,6W+7^(RE^3$> JAGF1[,!Z]**X,'!XN3 MTTQ2P[ $EK#\V^5/_SV>$DNBGM@HL(B-<'(-*>F.VF-KO.IS\HE%)W11W M?-Y?5FB:*MQ73Q??HO /;\Y8Z.5[FK[#,J(W:<9T<%\'>B;#N<-QNOTI';V5 M\Z1\276X5T_:3HZ0@,F14X=))S.QHCBYEH&A'*T@.[0"%,BA;Z6SEIISB1S" M0W,4VHME[=O!6'K5$W_-9^SZ5HPS_=4+%_#,+*G&UL MQ5;?;]LV$'[77W%0@\(&B$BB?MFI;2!QTVT/+8(TZ3 ,>Z M6M(JD2Y)V_7^ M^AXIVW$ZQ]U>MA>;1]Y]_.[XGV$7KL5\8LKX) SRO>,GTI MEUS@RD*JEADT51GHI>*L<$%M$] PS(*6U<*?C-S!W"O2J;9G: MWO!&;L9^Y.\G[NNR,G8BF(R6K.0?N7ERT>X7-CO?T(?Y M2AO9[H*105N+[I]]W=7AGP3070!UO+N-',NWS+#)2,D-*.N-:';@4G712*X6 M]E ^&H6K-<:9R?WMI]L/C[?0>V"SANO^*#"(:M>"^0[AID.@+R!$%-Y+82H- MMZ+@Q7. .D<.-$]IQMZ%O$MGU]"'!&@(8W/X,6''&.'%[^4(U]SL>*P4+*% M*7)5J 6LLZE@ZBK,%?Q^/=-N_H]3%>CPD]/XMF^N])+-^=C'QM!?TJ MRL(W9]@G!_;).?3)0X7,98/=4XL2C#TF<-L(H\'@XE2V2R:VKU\-:)2_T=@J M7;I%K5E9*EXRPPN8;6&^3]ULEQR8* ZNBL]E*6K7)RTWE2RN3I7A+-'394#V MWO_ WON-,]4)TD,Y\7:&9VPE=6QX/\DU5P(_,08_2K/]!AHN(!N2+*G<(O$I1/<4]!440&"251DL* 9%E,XG#@87:HKGG-FB//A S3B*1Y M BG)D@$"Y]Z#-.AS 8.,)%E&8AI9 T'BE.19\F(^MD7@^QGJW3\OS5]8PI6V M)V"9@[%)G*R>++AC04D>Q22),S3RE PQ.9I$+\,N98W%J,6/H+&**26#00HY M26A"4AK_*'4XTT/IH8?2LSWT 6^WV^LIL.)/;/C6B:]BA1/@DSIK5"+J"\G* ME8)22:U1JW)1&RA6RND7_;=X$AJX/8J_%3YVNK0G<+)_SI(\W3_(W/N/F3NM MZ7\AMG=L+97K[&.6%V#[)R)9E.(8-9^AG:=>[U$L]@']9Q&]A(2HCBC*H0^] MF- P)^%P"'W/GM]S[%Y$DC0D*39H'\T(=95B2V4GU1(JK(6&AB\P-+S,\4Q5=_-WAI%+=]O.I,&;Q0TK M?"QQ91UP?2&EV1MV@\/S:_(-4$L#!!0 ( -"BA5A]\BKO>P( )<% 9 M >&PO=V]R:W-H965T([\=>15GM M))/6]R"3B=AJSFI\D*"V547EGQERL9LZ@7-P/+)-J:W#2R8-W6"&^GOS((WE M]2P%J[!63-0@<3UUTN!J%MGX-N 'PYTZVH.M9"7$+VLLBJGC6T'(,=>6@9KE M">?(N24R,G[O.9T^I04>[P_L7]K:32TKJG N^$]6Z'+JC!PH<$VW7#^*W5?< MUS.P?+G@JOW"KHN-(@?RK=*BVH.-@HK5W4J?]_=P!!CY;P#('D!:W5VB5N4U MU3292+$#::,-F]VTI;9H(X[5]E$R+7\/M M(ITM;A?+Q4T&'Y=TQ5%]FGC:9+,8+]\SSSIF\@9S0.!.U+I4<%,76+PF\(S, M7BLY:)V1LXS7F%]"&+A ?!*>X0O[VL.6+WRK=B-/FM\"4J50*TCK FX973'. M-$-UJN2.,#I-:!OH2C4TQZEC.D2A?$(G^? NB/W/9^1&O=SH''N2F88LMAQ! MK"$_2*>==&JD\_/2SY*?E@Z'E!?_3WEA7@>K%"5Y]BXF/_#]1["@1L& MQ/7CD3'(T U'D3N(?""1&PW&;AB.7T!'66'@CL.A&Y,QQ*[O!^Z0Q,87$.(. MXQA.W;IWU"P5RDT[$I0I;UOKKF]Z;S]UTJ[97L*[D75'Y8;5"CBN#=2_' X< MD-T8Z PMFK;U5D*;1FZWI9F<*&V .5\+H0^&3=#/XN0O4$L#!!0 ( -"B MA5BM?^?&H0( -(% 9 >&PO=V]R:W-H965T9+2=-]^E)QX M*9;FL(LM4>2/?UHF1ULAG]0:4<-+R2LU=M9:UT//4]D:2Z8N1(T5G2R%+)FF MK5QYJI;(2E";LF3R]Q2YV(Z=P-D; MYL5JK8W!2T.;P0AQTP; J/7,\Z0" M?R]RO1X[?0=R7+(-UW.Q_8*[>A+#RP17]@G;QK<;.I!ME!;E+I@4E$75O-G+ M[CL)K,I/3+-T),46I/$FFEG84FTTB2LJ?4XF5Y?PMD]6W!4YR-/4P;CYV4[VK2AA6_0@A!N1*77 M"BZK'//7 (^DM?K"O;YI>)+X";,+B (70C^,3O"BMM[(\J(W>'/,L'BV]<&/ MR4)I2?_%SV.5-ISX.,?TRE#5+,.Q0\V@4#ZCDWYX%W3]CR=4QJW*^!0]G629 MV%1:T6^_EPN9H$Y09!-+(-4Y'APJ8 J6@E.+J>&Q8DZF.U[,7D/G?S1TZ-ZP M7*!L[PX.+9UIP3GFKZ+?0^S&<>PF?DSKQ VB@=M+>IUK5&H(S'!9E2&ED( O M-74U 3*)>:&!"Z4(<38(W21LE MH1L,NG;=3WINKQ?"L5OT#OJL1+FRTT2!)3S/M;IA<%94" MCDL*]2]ZB0.RF2#-1HO:=NU":)H!=KFFH8O2.-#Y4@B]WY@$[1A/_P!02P,$ M% @ T**%6 X:GGKA @ ' 8 !D !X;"]W;W)K&ULE57;;MLP#'W/5Q!>,;2 4=\OZ9( [;I+'[H57;=A&/:@V$PB5)8\ M26G6OQ]EITX'I 'V8)N2R,-S))&>;)2^-RM$"W\:(AF85B.KNZ!&!'$8YD'#N/1FDV[N1L\F:FT%EWBCP:R;ANG' M"Q1J,_4B[VGBEB]7UDT$LTG+EO@%[=?V1M,H&%!JWJ T7$G0N)AZY]'91>K\ M.X=O'#?FF0U.R5RI>S>XJJ=>Z BAP,HZ!$:?!WR+0C@@HO%[B^D-*5W@<_L) M_7VGG;3,F<&W2GSGM5U-O=*#&A=L+>RMVGS$K9[,X55*F.X-F]XW2SVHUL:J M9AM,#!HN^R_[L]V'9P%E^$) O V(.]Y]HH[E);-L-M%J ]IY$YHS.JE=-)'C MTAW*%ZMIE5.U8% _H#=[_2K*PS<' MZ*8#W?00^NQNA5"IIE626!M0"^"#@$I101CK)BVY+92@NN)R>;9/Q,$T^T50 M[M%_YQ[1@6$S1^T.;>0.S9U^\K_B=>]\WKYE>&ULI551;^,V#'[WKR"\ M86@!H;9E.TZZ)$#:YG 'M+>LEVX8ACTH#A,+M2V?)#?M?OTH.TV[(AH.@$K+VI^-N;Z&G8]7:4M:XT&#:JA+ZY0I+M9OXD?^Z<2^WA74; MP73W M^+*>^*$CA"7FUB$(>CWA-9:E R(:W_>8_B&E"WQOOZ)_ZK23EI4P>*W*W^7: M%A-_Z,,:-Z(M[;W:?<:]GM3AY:HTW1-VO>\@\R%OC575/I@85++NW^)Y7X=W M 6;U?154IR=+NY_ M6D'\ &'&X4[4M M#,SK-:[_#1 0NP-%_DKQBI]$O,'\ N*( 0]Y? (O/DB..[SX(\F:CK2V+PP6 MI:@MB'H-\^^M;.BL6?ASMC)6TV'YZYCV'CDYCNPNT*5I1(X3GVZ(0?V$_O2G M'Z)!^/,)WLF!=W(*?;HL$')5-:HFG@;4!IJ]DDX"'B3DBNZ,L<[#4LQ&E73U M9+V]/*;H9,[CBHB(]_^(>-13K%:HN[[.C95TOW#MN0Z[-G-X,+AI2[B5&X2S M%Q3:G'MW(B^(G_YOFA\A86&8L"P;D1VS439D@P&'%#+OFGBVEA*]N2>,)YPE M<496-(I8F(20>I]:74O;:NS -_+9V0:R<,3B-'Q[>[.6[J1:2;H>G:O5;?YH M((I91#GWK]2[19H5A2K7("LJSQ-67;$X&XPX2U/N+#YB@RB%6S1465>ET@4! MT:U :8A";ZFL*&&KE3$?%3F*G%C&AZ$S4QZQ(1]Y#I-&7MY6;>E*2Y.*&IA+ MT<]"0A"5TE;^W6^<12$;#H:,\P3.NU4\RAC/8CC?G4&-K@'9B%J0#LB* M6,03$CB 8T<^>#>I*M3;;AX;.BAM;?NA==@]C/Q9/^G>W/O_Q9W06UD;JMF& M0L.++/5!]S.X7UC5='-OI2QUK#,+^FVA=@[T?:.4?5VX!( ( , % 9 >&PO=V]R:W-H965T)DU; 2'$@Y-<&VN.7>S+ M6OCUG)TT%*FK>.,E]OGN^_S=.7>3C39/M@1 MJVDLM.@1%R/P]#F)53@:I5!P;YBMJXJ;GS.0 M>C,-!L'NX$&L2G0'83I9\Q4\ GY:WQNRPHZE$!4H*[1B!I;3X'HPGB4NW@=\ M%K"Q>WOF,LFT?G+&QV(:1$X02,C1,7!:GN$&I'1$).-'RQET5SK@_G['_M[G M3KEDW,*-EE]$@>4T& 6L@"6O)3[HS0=H\SEW?+F6UG_9IHV- I;7%G75@DE! M)52S\FU;AW\!Q"T@]KJ;B[S*.4>>3HS>,..BB3>*$SH)D2B=(\Q;^*R!QR_ !S&[TPI+RVY5 <7?!"%IZ03%.T&S M^"CC'/(S-AST61S%PR-\PR[!H><;OLB7(9L+FTMM:P/LVW5FT=#/\/U0M@U7 MK@0I+_W7_3WO@(W#)1GW0_O47C"7K,DZ2=7 M(V>=L_BBGXR&O85&+LEU&?6O1@-VZ/G"O:ZJP*S\[+ DKE;8-%AWVHVGZZ8K M_X0WL^V.FY50EDE8$C0ZNSP/F&GF16.@7OL>S312Q_MM22,6C L@_U)KW!GN M@FYHI[\!4$L#!!0 ( -"BA5BE+)\.5@, ),( 9 >&PO=V]R:W-H M965T/"7\SS+5OC YI/VSM%6CB@U+Q% MH;D4H' U]R_CBZO,VCN#SQQW^ID,-I.EE%^M\J&>^Y$EA U6QB(P>CSA-3:- M!2(:_^XQ_2&D=7PN']#?N=PIER73>"V;+[PVF[E?^E#CBG6-N9>[][C/QQ&L M9*/=/^SVMI$/5:>-;/?.Q*#EHG^R;_LZ_!^'9.^0.-Y](,?R+3-L,5-R!\I: M$YH57*K.F\AQ89OR8!3=;!WCUR)8-ZM>ST!"HO0JK/D(7CJDF#J\]*44 MD;JF3V76^TU.^]G7X4)O685SG^9=HWI"?_'G'W$>_37":C*PFHRA+]YUIE-H M6\K;KH7&DH0M^TX#;S1T5$L%0HHW%1,5S:QM#]"KJ)CA8MV;:V :Y JH8-@N MR?Y0--@A0=/E2C;TUNF+4\F/TCN=?,_9^SV6:6$*?GEWJ,TK+&.'E1;0R\2BER5.3PVKNSQ1(&GEC3H4WT M1= S@HVFTR!/IC R3]DP3]GH/#UN<%\Z&\NXVFLTMI[*;,#0]?W?GZC [I") M^C_,&LZ6O.&&CS3)^I&0G)RH48*G)XI8>[^1M>=4*WJ7#M([H@<@: >>P20H M)E$03U.2\R!+PWC7G5*VQV-4SB .IM3=*"N=7,8%_6+O5HKU&QJ; M=M0[#>(H"K(BMC-2%$&29ON!/17I.$>6<3DE?9*?G*GPV:)H4:W=.M3@7H!^ M9PRGP\:][!?-T;Q?UQ^96G.AB="*7*/S@KJO^A78*T9NW=I92D-+S(D;^FI M90WH?B6E.2@VP/ =LO@!4$L#!!0 ( -"BA5A'$LOSWP< "<5 9 M>&PO=V]R:W-H965T8P;Y(O%17U^54 MG6H>WVOSM9TK9=G#HF[:D]'J@9O9MHLI,6MN9VT2Z-D MZ18MZHGP_62RD%4S.CUVSZ[,Z;%>V;IJU)5A[6JQD.;Q7-7Z_F04C-8/KJO; MN:4'D]/CI;Q57Y3]97EE<#<9M)350C5MI1MFU.QD=!8UE_Q(I5:_6B7PP+ M%E73_&WW/#$E#&UTX5]UJ&%:=&/*,F$.R3;NR\ M9>^;4I5/%4Q@TV"86!MV+O9JO%3%(0L#SH0OPCWZPL'1T.D+GW.T*?1"L1OY MP"ZKMJAUNS**_>MLVEH#:/Q[E\^=QFBW1BJ7HW8I"W4R0CVTRMRIT>G;'X+$ M?[?'WFBP-]JG_?1FKMAXJAHUJ^P!0_6QJO/ R@?5LD*C+EK;,CUC%J(S7:.^ MJN;V:)L"#B M(LIP(0(>AL*[5#,%D?+(^U&5RLB:C0/!$S_CD8C9 1LGN, -UAST2L9I'',1 MIO0VB!+N!Q#T;K3%XC=X%/(PRGD41!!X0PKB..1!&+"#/7F)A[S$+^:EK&8P M6C6%8E-E[Y5J7& V46-+H^\JU[CP:+FR")"T7?1Z+UNXLK+:/#)#/LFF=*\! MQ17>DHX^(ZQJ\;30JX:T4'9DV^>@W9GL%^WW_K_V>UOV>\_ YJ9'WJOV?L,R MP"5+$US%L<^SV.^1LO&(LP8,-XZSF(=90,C) :H\!W"N4;O2%'/G0ZGN0%1+ MT(YU3A2 )GP J$+N9[F#7.[S)$ZP\F(NFUO:A=W)>B4[FB'')(66@!C#K40D M'8Z3(.%Y++#P,[PQ+,MXZ&>&=%85;P%9VI97T_8;+\#SC 6?/VATP$ MXAT;"Z Y#:D>9^#;XKZN^LD&>HD>;%.*'^: M['.]H^PK?1MGLFT5WE+DZTI.J[JR%:R3:,T;E%#ZMW"R$_1[C=G=JJD2_B8+ MAZ[F^.;,J3C:@O?9 !)*3(\Q2KS+C "^0H&+Q.>![WL7836>VG*E@DNTHPGD)]:.[@ ML*N>'F4ABL9/0Y8*P?,\&*"XE(\&#K( $,VSA(DDY5F0>Q\)HJ %QYP;L*8Q MCWS!T)&%'U-965,55+Z88HJO+(]XYN:-X5H\NG176T MEJD'3+/0&W ?OO@(7QZYPO9^1GO J(N& F;KBG [E RU&\8HD2AF0!IGWZZZN$<.Y( H[*1=V744E;EVKD6'(M,H^L(/T7>?*0"&5\I)*K0MTT7\X +6!+X M%,\P0G21LBM#$4"P">T*^>GZ8 ;HBB'WQG$4N_Z\R^=7Q1&!#O*G9(<=^(/ M[F^7#(#-8T0]2%-A]A31%0,/*8((F5[NE,Z=*=T M;W<"GZD;-[Q>;RCL)#Q*(Z(IO*6KIVBBI'S[BK]*JMJ626VD &JY!Y M!58!)^'N!4[>:\WN]G2Y,H1$O3*,ML?YII^_+M"S9//HX)Z^:X?8>=O\K;O2 M D";=G:Z MH.Z.I%5@ X.SZ1,^78](=+3LYASY0.>DGB4.HHLB'WNYNNG'UC^X%][3I@N/T+FOEQBI9/\*/0_97(=;;@=AGZ4JP,<2N M-LJN>V4'[+K;VC6(LRU/NU5G[5J@/'B![3J2P\6Z?^_EO9[M!N$7V*_GO$%\ M'PL2P_@\S3(VCM XTYP.&,]18D^%&\7[J;'CQ$'Z.8K$V1$-.\*@"=D'T?$\ MS3$HTWS]#;MVM+J)]!Z63;F@H3L/,24CDS@*I'2&?(ERP;,YS>8B=/LG/*,< M?"_[]JR[9?#S+ P_$QQP_8@,3A!#D;L8O$C)&$72/'*'Z"#?$#])EAP@( /<% 9 M>&PO=V]R:W-H965T/: M2+;CJGU(9<5)6ZGJPQD6@P(\QHI.4BY*IF@I=I:L!;*D32H+R[7MD56RO#*B M:;NW%M&4-ZK(*UP+D$U9,O&RP(+O9X9C'#;N\EVF](8536NVPPVJAWHM:&4- M+$E>8B5S7H' =&;,G[+G_#D<)8_N-!+=/<%O=7:%6Y0U3 M+)H*O@>AT<2F@]9JFTWB\DI?RD8).LTI3T7SY?+N874#JY_KU;?-:@,?[MFV M0/EQ:BFBUR K[JD6'97[!I7CPBVO5"9A5268_$M@D:Y!G'L0MW#/,MY@? 6> M8X)KN]X9/F\PZ[5\WAM\:_;2F@-6)3"/8]&P0L*O^58J0;_'[U.>.T;_-*-N MF8FL68PS@WI"HGA"(WK_SAG9G\[H]0>]_CGVJ)6("> S]: DW3&G;I!* D]! M90@I+ZBK\FHW.27]+/EIZ7W%B_^H>$&W@^46Q7!#<+QS<1!?-R+.F.:ZA-!T M/-<<^R'%OND$GNEZX2N2O0BB!\=T?,^\=CR*W'%@.JX[8/)*-H)5,<(XH)-K M&\9>:'JA*0)?@V*8;!N;H.FA=>+YO!E3[U!U;1\U8HMBU(T=_R*9275\. MN\-4FW?-_ KO1N(M$SLR# 6FE&I?A8$!HALSW4+QNFWM+5&ULO5=-;]LX$+WK5Q!J4;2 8GV+=F(;L)-T MMUTD,>(T/2SV0%MC6X@D>DDZ3O;7=T@I)& MK@ 4N2OR4@[LE5+K0]>5\Q443';X&DJ<67!1,(6/8NG*M0"6&JV;S^\N,R6*Z5?N,/^FBUA"NK; M>B+PR6U0TJR 4F:\) (6 WOD'XZIMC<&UQELY:,QT9',.+_1#U_2@>UI0I## M7&D$AK=;.(8\UT!(X^\:TVZ6U(Z/QP_HGTWL&,N,23CF^?5.BE3)7 V0S\UG%Y='/]Q,!Y-3T_(\<79 MY/1\.KKZ,0$'8TQF2B;L'C6FR$@( M5B[!C/\40OSJ&$> MM:$/IXK/;PYFAOF<%UB:DAEUPYT> \$RQ5I!]ME*O(G2Y;O;!EGUOTS=X][F9OL4)]BE<1/+5#M<3K_)?2EN771_BI&)]4HF MEKZ0[Z:IHL7H%G.P!/(;%JDBV.F ?&:9L*Y9O@'KG)<'MZ@8-/SPKAOX_A'Y MRLH-?F1(W32J]\$1[G@]L@P4>O@T=*C?U;GH1*%U7>%\],.>TTMZY-/#!'X$ M%I"9N1 ]HF8JV+<^MBPH9B":MO4S@[:<)TW.DS?-^:[,3%F2T9:)5)H2U.5V M#TP0T%W\YX#V]H-6MF\CEM>$8#WG_2OA$2,\W3^>07B))OW0<^)NB(H(.B'= M"=+WG2BB1ES=H!$DZC$,_5IT'GVBQQB[2==,!1TO>ID>_80Z'O4-7!"WB9$V M8J1O*<;)Y73T"NFUI%RGJRR5SCNHP-I 6)ICMT2OX:;4E5GT^9M<[(? M50?:G7GU6W#&Q#+#;WH."W3U.A2_1Z(Z:E9_9_@#4$L#!!0 ( -"BA5AP!:,O7 , .$( 9 >&PO M=V]R:W-H965TU MI53#MX*7:N1LM=[=N*[*MK0@ZEKL:(DS:R$+HK$K-Z[:24IR"RJXZWM>Y!:$ ME:LI L)JBH*(O^>4B[V(Z?CO P\LLU6FP%W/-R1#4VI7NX6 M$GMNPY*S@I:*B1(D78^<2>]HY<54306_'>6Z^W(Z3N0TS6IN'X4 M^]_HP4_7\&6"*_L/^T.LYT!6*2V* Q@5%*RLG^3;(0]'@$[T!L _ /Q30/@& M(#@ FNT5F9MS8@FXZ$4>Y F&ME,P^;&HM$-*\U;3+7$688X/5X\)O,X64P^ MP729)O/;-(5)_)1\3IZ^P&0^@W1Y?S]Y_ (/=Y F'^?)71)/YD\8$S\LYT_) M_",L'CXE<7*;POL9U81Q!7,B)3%OYP-EWBJX+7.:OR9PT6;CU7_Q.O4O,LYH=@U!YQ?P/3]H$13_<[A_04[0 MI#ZP?,$;?),L$U6I6;F!A> L8U3!'Y.5TA+W]I]M":OYPG8^<]YOU(YD=.3@ M@594/E-G_/-/GM!(3M86J9 0D' M81#Y_1,SW3//02\*(N]'W"N=4:,SNJCS84?-H<3-QBE>>R#-_78EUE<5=HA2 M5*LVU=&YZE[H=0;!B>KSN*CK1Y'?:U?=:U3W_I5JSLB*<:;QK+2I[9WEKNL- M!I$_.%%['A?U!UTOC-K5]ANU_8MJDS*3%$N<)AS4EN!F \QN#JR$C/"LXL26 M+K&&G/%*VYE,%!30)6"CP$F+:_/6/\LP[N!>Z)]8.P_S3DRY1]6BH')CBZ@" M>QG5EVDSVM3IB2U/)^-3K-]UN?U!4Q?_>R(W>"+PI:V1TKON8:IE75#KCA8[ M6Y-60F.%L\TM?H-0:0)P?BV$?NF8!9JOFO%W4$L#!!0 ( -"BA5BE]2"8 M# 0 "\3 9 >&PO=V]R:W-H965T5* (T+ISRSB>,$=DY39HV'Q=Y4C(=\K;*4P50@N/A]1[]]R)YG0I MVWW3'R41!PXX..- 2@=R[."=<7!+![=(=!=9D=8]570\%'R+A+'6:.:BX*;P MUMFDS)3Q20E]-]5^:OR\!+3@F:YFRA*DZ"P#I/4@@2F)E+XYX?F*LI>W;R*" MPX]2EVX#; TH3B5-$@$)51"CV0N:3Q M+7IW#XJFF7R/?D5?G^[1NU_>#VVE$S)AV?,R^+M=\.1,\)B@!_W4I42_L1CB M)H"MF:CH('LZ[D@GXCW,;Y"+/R#B$+)>6I2>P1NI!E7IP)64&?5+0 M$UB#@K"B(/Q99>X<@T/!D1"[GAL<*?/4,/0'&!,/MRLSJF*+7JU,JM"4ITRA ME/V_0#MA+ZU.3V -!@85 X,K"730)P4]@34HP$[]Y^[\K$1+ST/IN:%/HL@_ MDFB+8>@1SS?_CVT2Q0>M!^Z,[@]S9C+=$RK=1<[V_8/LU&?I":])0=SVXLZ/HE&IP M(D",(X]@[^1$/;6,=-OJ.M$9I=8=">YN2?3+6@YBGM+LM1KMQ+NX.#VA-;.O M>QX<74NCO;8]?:$U::@;']S95'1J='#R)N0-?.R'WK%$3PW]P(M"$AY)U#X8 M/6CI)<5$1FKUK9G:O797N]74YU,QZSC:OS/3H&*D4)Y<;D$&H,P!OK^@G.U7Y@'5#.R\7]02P,$% M @ T**%6)KY%,O2 @ .@@ !D !X;"]W;W)K&ULK59=;YLP%/TK5VR:6FDMX 18LP2I25IM#YVJ5MT>ICTXX1*\ F:V2=I_ M/]L0EJ1IM*I]"?ZX]_B<>\ WPQ47]S)#5/!0Y*4<.9E2U\EKEK,1K ;(N"BH>QYCS MU1 @BFM)%FZP9 M%*QLGO2AK<-&@A\^DT#:!+*;T'\FH=*N$WF4Z3\7?](MR<3X!FOS6AVE[E(2,)J RA)3GVF16+H 5E:XW MZ++S6L!"<"FA$CQE"I):F @3_XA42, RP02F.,=BA@)Z_D<@'ND!+1,S( ,X MFJ*B+)?'< )WMU,X>G\\=)468RBY\Y;XN"%.GB'N$[CBI/G^YR?QIH!\%01"%7=P6Q7Y'L7^0XB5==-*#U[K3 (0;12>AYX=^L&/. MT[C^64C"*-AO3M@Q# \RO"O3%]MS$/&E]KP1V);XJ!,?O=:>Z.G'T_<"XOO1 MCC][ GO$B[RSLQV#W(UKN$"QL-U)PIS7I6JNH6ZU:X#G]M[?61_KQMCTL7\P M35>]HF+!2@DYIAK2.XTT+=%TJF:B>&4O^QE7NG788::;.PH3H/=3SM5Z8@[H M_B[$?P%02P,$% @ T**%6 /[H886 @ -@0 !D !X;"]W;W)K&UL?53;;MLP#/T50BN&%ACB6V_+; /-9>@>6@0)TCT, M>U U/ @#L/;H*%,D#SUOH7*4[DSG E<*-"[ MIJ'J[P2Y/&0D(D?'DE6U<8X@3UM:X0K-NETH:P4#RY8U*#23 A26&7F(QI/$ MQ?N %X8'?;('E\E&RE=G_-AF)'2"D&-A' .URQZGR+DCLC+^])QDN-(!3_=' M]N\^=YO+AFJ<2OZ3;4V=D7L"6RSICINE/#QBG\^-XRLDU_X+AR[V^HY L=-& M-CW8*FB8Z%;ZUM?A!!#'9P!Q#XB][NXBKW)&#!L=(P3F"]FL'EQ=7_-(%5.TB.!\FQYTW.2<8]BAU"J60# M4RF,LD]KRV9JF/J"H8)?#QOM_;_?T]WQ7[_/[\9@K%M:8$9LGVM4>R3YYT_1 M;?CM _7)H#[YB-VJ=Z/"1 4M*C]4HD"0&\XJ:LX5NJ/\ZBG=F.WS*+H?Q6FP M/U42G+2!FZ@GJBHF-' L+2X^,C32V;'Y;V\%&Y0+L>2FE M.1JNV89?1?X/4$L#!!0 ( -"BA5A]4XQ,8P( ,$& 9 >&PO=V]R M:W-H965TTDW=_/-H0F*:GRT!?PM>\YU^=@7Y*=D$]J#:#1<\DK-?;6 M6M=W&*M\#255-Z*&RJPLA2RI-J%<855+H(4#E1P3WX]Q25GEI8F;F\DT$1O- M604SB=2F+*G\=P]<[,9>X.TG'MAJK>T$3I.:KF .^K&>21/ACJ5@)52*B0I) M6(Z]27"713;?)?QFL%,'8V25+(1XLL&/8NSY=D/ (=>6@9K7%J; N24RV_C; MCWV1AXJ8$DW7#^(W7=H]0PL7RZX7PX-C.#;.=?:1SC[B^,(S?-.]99/&LHFQ[.>+97WV M-(11/Z&]Y7>JICF,/7.-%<@M>.FG#T'L?^TSZSW)LGWW&-00#1V"[V38-!V% _'B4X.VA*:\3R3 <18/(/T[,>A*C:' ;AK==XI&8 MJ!,372:&OWT4HE?U3?%A3&Y/!+W.BWT_&)+X1$\/7T#(,(Y/Y."#?F&;^R\J M5ZQ2B,/2(/V;H:&03<-L BUJUT(60IN&Y(9K\X\!:1/,^E((O0]L5^K^6NE_ M4$L#!!0 ( -"BA5CP0,?FO@( (,' 9 >&PO=V]R:W-H965TN:[,"BBQ MO.!+8'IGSD6)E9Z*A2N7 G!NG4KJ!IX7N24FS(E[=NU!Q#V^4I0P>!!(KLH2 MBY\#H'S3=WQGMS ABT*9!3?N+?$"4E"/RP>A9VZMDI,2F"2<(0'SOI/X5\/( MV%N#;P0V=]QS,) 85,&06L7VL8 J5&2*?Q8ZOIU"&-X_YX MIWYCV37+#$L8FH8P\Q53)?0NT7XJ'GZ]GTZ2X10E:7H]35%R/T*WXV0POAU/Q]DQ'Z.S]><]5.@4CY&;;<(,J7' BG!^@.\Y4(=$U MRR%_*>#JW&N 8 ["&5\P\@MRI JLT 9+#9K1E3Z:_T(/PC Z8#YBU[[L1IY?VU4X M[EX_*T$L;)N7.IT54U5GJ%?KFR2Q#?1@?:!OF.I"^"-374]W6"P(DXC"7$MZ M%QV=E:A:?C51?&F[YHPKW8/ML-"W) ACH/?GG*O=Q 2H[]WX-U!+ P04 M" #0HH589I(AA8P" "J!@ &0 'AL+W=O[T%L"0^U)4>N%MC:GGOJ_9%DJJSV0-%>X4 M4I74X%1M?%TKH+D#E<*/@F#LEY177I:ZM2N5I7)G!*_@2A&]*TNJ_ER D(>% M%WH/"]=\LS5VP<_2FF[@!LQM?:5PYG# M[HV)=;*6\LY./N<++[""0 SEH'B:P]+$,(2H8S?+:?7_:4%]L;B$UH\3R*30[DD.;6S@$;;31I8M&!64O&K> M]+[-0P\0CEX 1"T@>BL@;@&Q,]HH<[96U- L5?) E(U&-CMPN7%H=,,K6\4; MHW"7(\YDYXS)764T5H0!W].U ,(D%DGCFBR(432'WJ8F5)-""JR^GI.C%1C* MA3XFI^3V9D6.WA^GOD%9EMQGK82+1D+T@H05L#,2AR.+7^"[[GG]>;[6F %F?@W9:GA&PSSV^LUU31DL/+Q?&M0>O.S# MNW 0D7@OL9V@-*9@IP;(J36P^(; M[G%/U.DLBH/I$^T#8=$TG$V38>U)ISWYU_+UG]^DH0([V[,K>4(J,$.VDN&5)@(*1 9G$Z1036=L)D;6KKFL MI<%6Y89;_)B L@&X7TAI'B:V7W6?I^PO4$L#!!0 ( -"BA5B7O'WK^@( M !H) 9 >&PO=V]R:W-H965TX[/ M<>ZU,]X*>:=6 )K<%[Q4$VNE=75BVRI;04'5L:B@Q)F%D 75V)5+6U42:%Z# M"FY[CA/9!66EE8[KL4N9CL5:B;ZE)BS^Y8YE3!5/!;ENO5Q$HL MDL."KKF^$MLOT/H)#5\FN*J?9-O$QH%%LK72HFC!J*!@9?-/[]M]V &X+P&\ M%N"]%>"W +\VVBBK;FQJ-;EAIWN*UECC+$*?3;RL@ MF2@J44*I%1$+PLH--H5\P'%\64J;08UA"\'QG;-R>4(.9J IX^HC.2(WUS-R M\/[CV-8HQY#:6;OT6;.T]\+2,\B.B>\>$L_Q_ 'X].UP[SG&\9=W#-]0:%7?+1X%F)BDDF*)[@38\A@U!/N)?$(?WL&^W%AY$9! M& P;C#N#\;\T^'0XM.#!%(Q[VH_<(/ ]W]\S.1#HNQB61,,ND\YE\E]<'I(2 M])##I%_?@1]%P7Z:]N.\8.0[T7Z:VCLWE_EJ^$KEDI6*<%@@TCF.D4(V-W'3 MT:*J+[.YT'@UULT5?KR - $XOQ!"/W;,_=A]#J6_ 5!+ P04 " #0HH58 M@>YCB.<$ #X'0 &0 'AL+W=O MML+8GH0 L23?>W3O(0]U3$W67'R72P"%GI(XE5-KJ=3JS+9EM(2$RE.^@E1_ ML^ BH4J?B@=;K@30>9&4Q#9QG,!.*$NMV:2X=BMF$YZIF*5P*Y#,DH2*YX\0 M\_74PM;+A2_L8:GR"_9LLJ(/< ?JZ^I6Z#.[0IFS!%+)>(H$+*;6;_CLW'7R MA"+B&X.U;!RCO)5[SK_G)U?SJ>7D%4$,D^:) MS>,7],NB>=W,/95PSN,_V5PMI];(0G-8T"Q67_CZ=R@;\G.\B,>R^(_69:QC MH2B3BB=ELJX@8>GFDSZ51#02L/=* BD3R+X);IG@%HUN*BO:NJ"*SB:"KY'( MHS5:?E!P4V3K;EB:#^.=$OI;IO/4[(\EH(@G*YY"JB3B"[02>HX(]8QH.D?P M(V,K/6I*!^FADRJ/4#IGP6,] UCZ<(;>78"B+);OT0?T]>X"O?OY_<16NK;\ M#G94UO%Q4P=YI8X+B$Z1BT\0<8C;D7Z^?SIII]N:D8H64M%""CSW%;S;DH03 M=!M3W7W.Q:>*B[^N=3BZ4I#(O[M:W6![W=BY,,_DBD8PM;3R)(A'L&:__(0# MY]>NQGL":]'@5C2X)G0S#2?HL^!2=A&P0?4+U'PA>9QA' 2$C)R)_=ALKBO0 M)WA$QE5@JW"O*MPS%GX-4NHE(LJ2+*8*YEK9FIZ(T*_5->XP=; MY>Z&84P\OQ'7*C:HB@V,Q=[0:*DOB>=MK=Q <@^B4R=&Q$-UTA-8J_FP:CX< M<+D(^Z2A)[ 6#:.*AM$@R\5H9Q7P',<+P_'6U!WM3%TMLY%>6+JG[K@J>_R_ MIB[Z%]VPE"598IS-QIL<.HP]@;7XP$YM"IP!YW,)WA,3?:&UJ6CX(VR<')^D M8DGQ",DD++(8Q6P!G5V;<7ST#%1T3?]S<^:Q'=96!QLMQ%[3GSZ].?W-=SEX MU(>P/;CV/=@=4@!&5W4P%3VAM:FHG10V6ZG]!6#&"0T",&8>VV%ML[#99YWK MWS^9 K&G:S&C'3RZ/:&U>Z]=&PZ&G.B].KB^T-I4U!X.&[W1T>ZEA&W9%Z+_ MW'#+OI2!3?_BX3%V/*?;O^#:=V&S\=I?HV8L+K;T=43LR,J0C([TZLK[0VE34CHR8G=2Q.BUAFSH- MG;'K;^])E''!ZW'MPAM[2F:CM;=*W\ Q/$G-F<<.36V;B'F_Z!LL612_H4LS MQL&3<0AW1&IW1+PA==F3\2FI&,)&D=I&D?VVJP[6I;^[">CBQH_ZLKN.C:M6 M6+OLV@$1\\;5_JHTXQB>G>;,8P>F-C;$;&RN@4I8\GB.KI*5X(^0%'O]1HWV MNB?5%UJ[_]H=D=&0&NW)^)14#&&C2&VCB-E&':W1\8Y&23 FOK^CTJY ,@ZP MWZU3MW9 KM%6[*_3-W"P\[I0S:F'CH[=>"V7OQ.]H>*!I1+%L-#PSFFH61*; MUXR;$\57Q9NZ>ZX43XK#)= YB#Q ?[_@7+V]L_\ 4$L#!!0 ( M -"BA5A."2F_H@( ,$& 9 >&PO=V]R:W-H965TRYPS,P?/<;CFXE[FB H>RX+)GI,K55VZKDQR+(D\XQ4R?9-Q M41*EMV+ARDH@22VH+%S?\[IN22ASHM">Q2(*^5(5E&$L0"[+DHBG/A9\W7-: MSO9@2A>Y,@=N%%9D@3-4MU4L],YM6%):(I.4,Q"8]9RKUN6@8^)MP ^*:[FS M!M/)G/-[LQFG/<\^$E3E?>@JG=G@W623I5]G\0]D:?DPX4SE$D8LQ?0Y@:M+;NKVMW7W_:., M0TS.(&B=@N_YP9Z"!O\/]X^4$S0R!I:O?4A&H>=*J*=3B O"%!"6PNAA22O] MPBNXFV Y1_%[GW!'>497I*)>@Q'1'!*%M(B%' +"<"X>ZK1L)882GW*M)^345> MB>R9(IU&D<[1EV*(FC2AQ/H5/FKCE2CW=5S3="R-L=U5U#[W+CI>Z*YV>_DW MK-,-O(MN$U97Z>ZX08EB84U20L*73-4#UIPV/GQE[>?%>5_[J-X93UGSI5V,+O,]3<&A0G0]QGG:KLQ"9JO5O0' M4$L#!!0 ( -"BA5@4C?W*B0( *L) 9 >&PO=V]R:W-H965T)SQN?VE'-^*-8 TCTE--"C*VUE.6Y;8MT M#3D6)ZR$0LTL&<^Q5%V^LD7) 6=&E%/;1+J>!/PBT MMMI(9[)@[%%WIMG81Z;)U9*(,EKJB\8?4/:/,9:5[*J#"_J&YB@\!" M:24DRUNQ6D%.BN:)GUH?M@3N:P*O%7B'"OQ6X!\J"%I!8)QI4C$^)%CB..*L M1EQ'*YIN&#.-6J5/"OW9;R57LT3I9'QY=97<3VV5._2"CMMN1<-UWN%FT!Z@GSW,_(SWRY!"YH^7N MV:[<5@9U+GF=2Y[A^:_P;D!(7J6RXJ18H0D3$N$B0VH8^ ;0PTS%HZF$7/SN MLZJ!!_UP7=CGHL0IC"U5N89HQ9\^N*'SM<^X(6')0+ =4_W.5'\?/;YD+*L) MI7V.-I_KDWLGIX%WBB([,VV&0?&)7M7\LX\@R[/8&^>]T SO6WFJL H MK?CJ&4V+%#W,(5\ []TP>X%OW3!#PI*!8#M&CCHC1_^S"D=#FCHD+!D(MF-J MV)D:OKL*]RK?ZMB0L"3\9]TW9MA;)Z.^QLPQ7Y%"( I+I71.3A6"-U>#IB-9 M:0[+!9/JZ#7-M;I- =&ULO=UM;]O& MFL;QKT)X%P=G@< 6]:QN8B#Q/*-IBZ0]Y\7!OF!LVM96EEQ* MWN9WV?)T<9_/R^]<+XJ[;%5^6MR<+>^+/+O:''0W.^MV.L.SNVPZ/SE_N_G: M3\7YV\5Z-9O.\Y^*9+F^N\N*/S[DL\77=R?IR=,7/DUO;E?5%\[.W]YG-_GG M?/7+_4]%^=G9LW(UO_7NI%--*9_EEZO*R,K?'O*+?#:KJ'(BO]7JR?.@U8';'S_I:O/3 MES_-EVR97RQF_YQ>K6[?G8Q/DJO\.EO/5I\67TU>_T2#RKM,CSU@4A\P.?: M//T-]?9K*#'O_+- M>A'9*CM_6RR^)D7U^-*K/M@LNLWQY3*9SJL"^;PJRN].R^-6Y]_;'V3RHTHN M/DEA?T[^+O)5-ITMDQ^RHLBJI?M?;\]6Y3C5H\\N:],\FMUOF&DW^;B8KVZ7 MB9Q?Y5NP]5TUOX_:^.;TO MJ\3.EZMB79XL5LF_OB\?D-A5?K?\GX99?GC4^LU:=0[\;GF?7>;O3LJ3W#(O M'O*3\[_]1SKL_'?3&B4OU^6>17TU53843)MH5!8H+$)(DI$M,D9AZQP0:K.O.'\VZ_ M4_UZ>_:PO>;W'Y=V&Q[GH,D%RWGPO)P'T>7\?;!VWR3S\LE*]6FXRIO6=-1M MNZ9)3)"8)#%%8IK$S&!_K8Z&_89%_?C X?8#)^.F50U-+UC5P^=5/8RNZ@_9 M_-?DE_ETE5\E__J8WWW)B\:&):JT7<,D)DA,DI@B,4UBAL0LB3D("VIA]%P+ M([2)'Y$U06*"Q"2)*1+3)&9(S)*8@["@)L;/-3&.GA\^9K]/[]9WR2Q_R(OL M)D^JBT"+-\E]7DP75TG:5!=1L6U=D)@@,4EBBL0TB9E'K+K,^-S'C$Y[.[T. M.:*#L&"]3Y[7^^0UZ[W;M-ZC8MOU3F*"Q"2)*1+3)&8F^^M]N+?>R1$=A 7K M/>WXZ_V=UZSX7M.*CY-MESRJ"523J*903:.:J;7MYZN#G56/#N@H+5SW6SE7 M^IIUWV]<]U&R];HG-8%J$M44JFE4,[6VO>[[N^N>'-!16KCNNW[==UM?\4G^ MG>P\^7V3?,JO\KO[ZIKFF^2GQYKXL7PZ'+M(%!^Y=7F0FD UB6H*U32J&52S MJ.8H+:PDG_FF;.B;HJDOJ@E4DZBF4$VCFD$UBVJ.TL+R\/%O&L]_/T[GFP;K MJBJ3BI]>YLGE8KO;2J[7JW61USW7LK%HT$08U02J2513J*91S=1:FFYG8Z=[ MSS;(,1VEA<7@P^,TGAZ_HNOZ^>LBWG6A^3*J"523J*903:.:036+:H[2PDKR M@74Z9+LN-+I&-8%J$M44JFE4,ZAF4/L-.HW$@U76AV3:J"523J*90 M3:.:J;4@V>B<3O;:+C2[IK2P&GQZG<;CZ]>T7;=%?N!R%QITHYI -8EJ"M4T MJAE4LZCF*"VL)9^,IQ.V\4)S<503J"913:&:1C6#:A;5'*6%-Z3Y'+U[($=' M&J_X(&V+!M4$JDE44ZBF4B8CM+"8O#A>C<>KG^C[WJJD5A7%9=; M5P":L:.:1#6%:AK5#*I95'.4%E:*C^.[7;2KZJ(9.ZH)5).HIE!-HYI!-8MJ MCM+"\O 9>S<:4I[_D*^2Z?QR<5>V4/EOZVE1GE#6\ZN\2+*;\OEY53*-58)& M[:@F4$VBFD(UC6JFUH([[W9[*#0_I[1PZ?O\O'M]Z6352\H/]6;QO M7.YH2(YJ M4DJBE4TZAF:BVX?[33=/,T.JRCM'#1^YR\&\_)/^4/B]G#='Z3 M7&SNLTY4=CF=35=_Q)\SH!$XJ@E4DZBF4$VCFD$UBVJ.TL(B\1%XEXW NV@$ MCFH"U22J*533J&90S:*:H[2P/'P$WHU'X)MJ>-ZI([FNSR!OJGW2-AW5ET51 MHM5)YC(KYU%^K[%JT P^MB[%X^]+[+[Z2J;3?^O/&MC391C6!:A+5%*II5#.]_;O'NYU.TW: ]2.#?Z4:+^@Z M:H;AFO:)="]^@_B+]FV-FZW7-AI+HYI$-85J&M5,K05KNW'[5G181VGA\M_: MR3N>.(?_I+?9YS4.MZX!=EMO=E]O=F-O=F=O=FOOAM"Y>;M7=%Q':6$1^.RY M%\^>7WS!J/SRD9N%Q&?0NEK0S!K5)*HI5-.H9E#-HIJCM+"B?+#=&Z"7D7IH MI(UJ M4DJBE4TZAF4,VBFJ.TL#Q\I-V+[T,.97;Q45I7S;#AR=V@VW1I"4VQ M44VAFD8U@VH6U1REA17A4^Q>/,6&6[#RJY_77Y;Y;^OJ[",?-N>@6'N&IM^H M)E!-HII"-8UJ!M4LJCE*"ZO-)^2],=N>H2$XJ@E4DZBF4$VCFD$UBVJ.TL+R M\"%X+[XM.M6>3?:OIC2^)\Y%?#ZM*P+-O5%-H9I&-8-J%M4=S[WX\ M]P;:LT,;N\5GT/8<@VH"U22J*533J&90S:*:H[2PHGR6WD_1%JR/QNFH)E!- MHII"-8UJ!M4LJCE*"\O#Q_+]>"P/M6#Q45I7S7Y$W-S0"71C?O M/MN>H?D^J@E4DZBF4$VCFD$UBVJ.TL+R\/E^O\W;@[^\/6MZU^C.N.$*67P^ MK2L"C?113:&:1C6#:A;5'*6%%>$C_7X\TB?:LX-[\,;GT/HL@][:CFH2U12J M:50SJ&91S5%:6%/^10%]]BW*^VB*CVH"U22J*533J&90S:*:H[2P/'R*WX_? MYTXU86BX7VN'6SJ!CBM13:&:1C6#:A;5'*6%%>&#^WX\N,>;L-97R=#;X5%- MH)I$-85J&M4,JEE4)3:'V206_.1S6):@K5-*H95+.HYB@M+"G_NH !^[[L M S3(1S6!:A+5%*II5#.H9E'-45I8'C[('T234*P'0_/]6CO?B,?_"7;%]?CQ)T5(T[ M5UW$Y].Z(M!8']44JFE4,ZAF47A(_YAFTWZ7]Z?]?8[JN&D88/7B_A\6E<$FNJCFD(U MC6H&U2RJ.4H+*\*G^L-XJO^:_DQMWK/+^O?LBG=B:/"/:@+5)*HI5-.H9E#- MHIJCM+"P_(L#ANS&_4,TS$Y5,32K1S6%:AK5#*I95'.4%JY^G]4/_[Q-^C_GEXOY MU?%M%WHK/ZH)5).HIE!-HYI!-8MJCM+"RO*9_Y#=D'^(YO>H)E!-HII"-8UJ M!M4LJCE*"\O#Y_?#^'W]+VN[T!!_V+"9?Z_ZM=MVH?$\JBE4TZAF4,VBFJ.T M8/6/?#P_^M,WW_\\_?W%661\=FWK"-4$JDE44ZBF47AH_K17[(Q_ZAA*_UAM^F]D>+S:5T1 M:#J/:@K5-*H95+.HYB@MK B?SH_^](WY/^=E%_;R!@V]HQ_5!*I)5%.HIE'- MH)I%-4=I8;WY['_49QLT-,%'-8%J$M44JFE4,ZAF4/L$?_25;\]>C M!->[!OVFK?GC\VE=$6AHCVH*U32J&52SJ.8H+:P(']J/XJ']SWEQE\P6V3S> M1:$I/:H)5).HIE!-HYI!-8MJCM+"HO!9_HC=6W^$!O*H)E!-HII"-8UJ!M4L MJCE*"\O#!_*C^$WXF_*8/I?'FZJ/RI/L;K%N#AOC7.OR0 -Y5).HIE!-HYI! M-8MJKM:"]KS3":^?ADO?A^VC>-B^WRY]X_I58QV@H3NJ"523J*903:.:036+ M:H[2@EH9^VA^S&Z /T:S=%03J"913:&:1C6#:A;5'*6%Y>&S]/&AV^COLS\V MA;&X3NZ+Z?QR>I_-DO7\*B^2[*;(\V^]>"L.MRX4-%6OM>US;U-R*=%15<.H MH\'^J/K(QQET=A;5'*6%R]9GW.-#N]0W+MNMUQL>M831F]113=1:L(0;%HE$ M1U7C_="_:52-CFI0S:*:H[1PH?OH>AR/KG?:ES=U'CV]3'YZ+(#R*T_+OW&) MH\DSJ@E4DZBF:NW0&42CHQI4LZCF*"TL!)\ICZ.AW'XA?,B6TV7RN1PLNTH6 M\^0?63'-OLSRY%.VRAM+ 4V944W46MK=6F^=TTYOL/NO/9H?HYI&-8-J%M4< MI86EX//C<3P_/OKR3_7RI6)Z]U@2T8M"\1%;UP::-Z.:1#6%:AK5#*I95'.4 M%E:0SYO'[([O8S1Y1C6!:A+5%*II5#.H9E'-45I8'CYY'L?O(@=Z+32+1C6! M:A+55*WM]H'=P>[3#C1E1C6+:H[2PE+P*?,XGC*_L-?Z<7Z@WT+#:%03J"91 M3:&:1C6#:A;5'*6%5>0#ZS&[N_L8S:A13:":1#6%:AK5#*I95'.4%I3'Q&?4 MD_CMXZ_OM^(#M"T85!.H)E%-U5K:"_NMW78+'=2@FD4U1VEA)?@X>A*/HU_8 M;M4WZ?W\=1'MNN*#MZX2-+)&-8EJ"M4TJAE4LZCF*"TL)A^23]@]VR=H'(YJ M M4DJBE4TZAF4,VBFJ.TL#Q\M#YI&:VW[[K0[+C1; M1S6+:H[2PDKPV?HDGJV_LNNZ+?+XU:[X\*WK!$W>44VBFD(UC6H&U2RJ.4H+ MR\GG\Q-VA_8)&KZCFD UB6H*U32J&52SJ.8H+2P/'[Y/XC=[ WT7&L>CFD U MB6JJUG;[KE$G^)7NMF%H[(YJ%M41 %X:&]*@F4$VBFJJUW2YLO-MVH>D[JEE41VPVU=-?*H_+!Y.DU[G39)T.]U^.B[715D199=5[=[P/K9[PP&R?16@^3O+ MR2=N^X;TP7"X=V>(8L?5+&=8SK*4$R\DG M;GMCDMYPU.GO+W\T,VQJ_??[I/#++'_(BN\F338_6 M7"-L\(YR@N7D$[=]]7COPC$ZI&8YPW*6Y1S&[2S\K30]/;0?_*OZKR-W23TP MB_9%@]XBSW*2Y13+:98S+&=9SF'<3GUMQ?-I#V[!V&P>Y03+2993+*=9SK"< M93F'<3N5LI7@I_$$__6OJS\P0OO:88-]E),LIUA.LYQYX@YM\V_9<1W&/5;% MV?(VSUS97)9O?-F^<.=;'TU*?+KJFB^>]\].2N/] \_ M?WM?/D'YF!4WT_FR?,)R71[:.:W>A[J8WMP^?[):W%=D\F6Q6BWN-A_>EH64 M%]4#RN]?+Q:KIT^J ;XNBE\WTSO_?U!+ P04 " #0HH586YT0)U8" Z M!0 &0 'AL+W=O_C#.=T MK\VCK0"0/=52V550(3;+,+1Y!36WI[H!19E2FYHCA68;VL8 +SRHEF$<1?.P MYD(%6>KW;DR6ZA:E4'!CF&WKFIO?ER#U?A5,@N>-6[&MT&V$6=KP+=P!/C0W MAJ)P8"E$#_.G_AP. ''\"B#N ;'WW0EYEVN. M/$N-WC/CJHG-+7RK'DWFA'(?Y0X-907A,+NO@.BP-0(%6*9+AK0CM=I^1# U M-;A!=@1/N6P+H;:L5;S6!L4?*+J6:XOVF'%/LH8,&W#)4DOZ$>R2':T!N9#V. V1&G%VPKPW?=F9CE\Q3>RG S-[N%NSH_# *[E;Y MRLU6*,LDE(2+3L^(P'23V@6H&S\=&XTT:WY9T>4&QA50OM0:GP,W<,-UF?T% M4$L#!!0 ( -"BA5B>5I-; T &RT 9 >&PO=V]R:W-H965TQ!+:/B/%NIM/K.?98OH[+Z-%\,BU6NHOEFT#(9NJ-1.%Q& M<3J87FZ^=I-/+[-UF<2INLE)L5XNH_S'!Y5D3U<#9_#\A<_QXJ&LOS"<7JZB MA;I5Y=?535Y]-MPI\WBITB+.4I*K^ZO!>^>='+OU@,TC_AVKIV+O8U+_*'=9 M]JW^Y./\:C"J]T@E:E;61%3]\ZBN59+44K4??S7H8+?->N#^Q\\ZW_SPU0]S M%Q7J.DO^$\_+AZO!9$#FZCY:)^7G[$FJY@<*:F^6)<7F;_+4/'8T(+-U46;+ M9G"U!\LXW?X;?6_^(_8&5$[W +<9X!X[P&L&>,<.\)L!?GN _\* H!D0M >$ M+PP(FP'AL5L8-P/&QPZ8- ,FF]_N]M>Q^5W2J(RFEWGV1/+ZT956?[ )Q&9T M]2N,TSJ[MV5>?3>NQI53RCY\(;]0549Q4I#?HSR/ZC#]2OY)OMY2\LO??[T< MEM5VZDE>\^+.+XX=W[;P\YG_>KX<[H>4WZ>WRYFT\[P7OM^ISDMV3ZUS- MXY+P:!8G\NB3N%P"%5@#Q>.TBD^<+DBBJK.H@D3IG*1967VTBGY$=XGJRI35[)LI)$:1 M&$-B?(N%>YD:CRXF3BM3AX]R1V/?:45/@O;,B$RXBTSXQLA4YWYY7AVFNJ)C MM?M&!XE1),:0& \/#D>^[U],6M$)#Z+C>&%UV&I%![1G1G3&N^B,[=-77CUU M))^C4I$_/ZGEGL2-^,(#&*Q!@2XTA,(#$)PHS 37:!FYSDC'V"3" 2 MHTB,(3&.Q 02DR#,2.#%+H$7UD,>K<_2/Z9%F:_K,_>SZN-259LI-X?!,W); M5O_,R8W*9]6WHT7G^99U$WWCB,0H$F-(C&\QQ]V;#T?GHTDPVO_3/OU"[H$$ M84;LG)&^-C:R!N]#E'XC7].X3I=MLK4S?<,%U2A48U"-0S4!U21*,Z.W=UG6 M.IU?Q:?72O M5.>E,KO5.W](C4(U!M5XH^T_00W=2?N9IX!N5*(T,UBZ"G"LUWE_YDJL7>P= M+V@1 -485..-MG]EXR)TJ[.W=KZ@E_E1FIDO?:'?L5_IIX>9(G$Z2];SZGPN M3DE6/JB<1$6A7@@;]+H_5*-0C4$U[AQ>^Y]T9;( ;1*@&H5J#*IQJ":@FD1I9A1U.^'8ZXD7HGA&V/=57+^V M*$L)CCF=2GU;$QNDG7G]12[T#MUT&X"JC&HQANM MW<-Z06M.AFY5HC0S3[IU<.VM@YZ3#PYNECG6CO:.&+1^@&H,JG&H)J":1&EF M$'5+X9[FC@476E5 -0K5&%3C4$U -8G2S"CJ0L.U%QK/49QMHWB_N[BRC+[' MR_62W&5YA=8'S5E4[4?UO^Y M@&H]#[& AM2: :@VH< MJ@FH)E&:F5I=IK@7IYF.H?4(5*-0C4$U#M4$5),HS5QJ0M/8F!#!M?WG*K-.V?0_Z'BNA M&H5J#*IQJ":@FD1I9FIUW^*Y)YFV/6CC M4H5&-0C4,U =4D2C.CN+=$E/V^ M$-2T?7C/@W,Q&75-V]@%H; K0F&7A,*N"85=%.H4Y8JGRQ7/7JX@INV'7-F? M;]OWH??1$EJ]0#4&U3A4$U!-HC0SM[J>\8+33-S0)@:J4:C&H!J':@*J291F M1E$W,9Y]62O4Q-VQ#-/%:-(U<4-+%ZC&H!J':@*J291FIDZ7+IZ]= %,W#Q; MY_9Y&[J>%E2C4(U!-0[5!%23*,V,K6YWO-.LJ^5!*QNH1J$:@VH1O:SD U!M4X5!-03:(T/; MZYFWS-L\SHOM6JY1DFQ>*&F=O:&WT$ U"M485.-034 UB=+,\.Z]^8=_FMD; M6MQ -0K5&%3C4$U -8G2S"CJXL:WWU?SZHO%_<-WLG"<, S'[5D9VKU -0;5 M.%034$VB-#--NGOQ[=W+6V;E6S7+TOGQTS+TQAFH1J$:@VH[@A+I="4ZS-%@ ;4R@&H5J#*IQJ":@FD1I9A1U8Q+8;XAYOUCD:E&O#+;* MXW06KZ*$W$5)O2I[9P*A10E4HU"-034.U42C&63P-$>B-FN&2W<@@;T# M.9Q@>ZQ&8K=[1PW:CD U!M4X5!-03:(T,X^Z'0E.LUQ8 .TZH!J%:@RJ<:@F MH)I$:684==<16"]@3S^KU?8==NH\ZJEWG<[KMSVIYF2U?.$=ANUP[S#Z!U.) MVW$;%NUXW+AC<11VY.,X]*<04$VB-#,:>V]9_MJ:7IW1B/>N !\3$^R;F >' M,>GXM=*@XPV^.V."?>]Q:/4 U21*,\.DJX? 7CTB=E*WVVH*X%+I5 M!M4X5!-03:(T,T^Z# CL-W0\8PT[QAW5B^YOSUD=88-6@I -1IT M+ #6,1>OT(R9A M:*$ U6BCM=YD<'0P!T.; J@FH)I$:6:<=%,0VIN"GYR#CURMTK[QWDE$:A2J M,:C&H9J :A*EF8'5_45XFD6O0FAC =4H5&-0C4,U =4D2C.CJ-N/\,WMAUWH MG3KH#1.-UIZ*P_94#"T_H)J :A*EF7'2Y4=H+S_>.!6_N@*E??.]LP@M1Z : M@VHM]D M0C4*U1A4XU!-0#6)TLS$ZG)E?)K%JL;0]@2J4:C&H!J':@*J291F1E&W)V/[ MC1I'3,UVH7?JH$5)H[6GYDEK+H9NE$,U =4D2MO&:5@\*%72J(RFETN5+]2U M2I*"S+)U6O%UR'9?);FZK^+FO'OO#H8'7^?..^'47Q]J9GJYBA;J4Y0OXK0@ MB;JOR-'Y.!B0/%X\[#XILU7U"QZ0NZPLL^7FPP<5S55>/Z#Z_GV6E<^?U!MX MRO)OF]V>_A]02P,$% @ T**%6-)[.9T) P J0H !D !X;"]W;W)K M&ULK991;YLP%(7_BL6FJ976 B80DB5(:Z)JDSHI M:M?MV2$WB57 S#9)^^]W#92F"25=M)> L<_Q=ZZ#\6@KY(-: VCRF":9&EMK MK?.A;:MX#2E3ER*'#'N60J9,8U.N;)5+8(M2E"8V=9S 3AG/K&A4/IO):"0* MG? ,9I*H(DV9?+J"1&S'EFL]/[CEJ[4V#^QHE+,5W(&^SV<26W;CLN I9(J+ MC$A8CJVO[G#B.D90COC%8:MV[HF),A?BP32^+\:68X@@@5@;"X:7#4P@28P3 M&:6\4Y+[.6HT]%UH0L)QIFG14H2P)*0G#WA2FE% MBFP!DF0BNXA9%F.MV3P!@O\AR33/5M5P19@B8DFF$$,ZQ_&>^YE0AWID"VB- MG4N1X-]%#FT!*Y5?JLQ^L8DHI6$_Q,&;7?9.]Q/9>PU[ M[QB[W\9>J8)7[*'G^?OLG>XGLOL-NW^,/6AC]P_80]^A_6 /O=/\1/2@00^. MH??;T(,#=-=UG<#?0^\T/Q&]WZ#WCZ&';>C] _0!I?LU[[0^$3QLP,-.\)]" ML\3LV5S%HL@T+/:WZF9G;\L7'N3S>R'M._MKTPEQ8L1!$W'0&?$&E"(\S0L3 MCF-$G$*WA1D$8;^B_K57OO M;K^^,Q@$=+"7L65@$ Y\I_=2C(K?WCE'F$/<#R97/%/(LD2E<]E'"UF=BZJ& M%GEYM)@+C0>5\G:-9TF09@#V+X70SPUS6FE.I]%?4$L#!!0 ( -"BA5@) M==S\O@( #4( 9 >&PO=V]R:W-H965T8E;4E8Y^<".W0I&BB.>C\$<[HA'&& M#/2\(F).QC"%<@*2A/X9";P@M#C="/KD9 Q(&5>GY)P\WH_)R>?3@8O:B)'C M3AO15[7HX W1^@,7+7D'?/1^>+ +=W7ZVAP&;0X#RQ>^P7=ID]-EH\9%W3BS M0?MJ2:1[5@,6XOA,?;\=0V1[?B, M6Y_QT4J,5E)"A<>V89?_FC39RKJ?99D7]_:JTQ'7\].>[W=7)VE5)T=5WXAJ M<8X@R__5G1SH"7W/BU-_3_=A7.RE:1#&W;K35G=Z5/>#0,K?IS0]6->QEV5) MD.TI/8Q+>EGL14G?K4#<7Z@\J%ZQ26LQ<([V+5%/(^I*J.RB6]IR?"-2W MAFT6^EX':0+T_%P(?.F8JZ/]4\C_ 5!+ P04 " #0HH58M"10KJ " !Z M!P &0 'AL+W=O]OFS 0_5=.;)I: M:0M@ NTZ@M0DG39IW:I&73^[< %4P,QV?O2_GVT(32J"VFE?P#;WGM^[P^=P MP_BCR! E;,NB$A,KD[*^L&T19UA2,6(U5NK+DO&22C7EJ2UJCC0QH+*PB>,$ M=DGSRHI"LW;#HY"M9)%7>,-!K,J2\J5H05A@ M+#4#5:\USK H-)&2\:?EM+HM-7!_O&/_:KPK+P]4X(P5]WDBLXEU;D&"2[HJ MY"W;?,/6CZ_Y8E8(\X1-$^L'%L0K(5G9@I6",J^:-]VV>=@#N&=' *0%D)> M\1& UP(\8[119FS-J:11R-D&N(Y6;'I@Z2HN)%=?"/A).:X63['1.R2#C'.,1>.Y'( [Q>@3-7@\G W*\+FV>X?..I0W5KR/Z M$M/@QOTX?28O1$UCG%CJT GD:[2B#^_

>6BO]^WTQ3FN_SGHX@Z4^IU2?U#I MO3FKF !=*\DIJNZB^]>S=(F\!';HI[=XP_L0>$+*!010FI^[KV*##/]8L:#+ M0_"V/"2YB-FJDJ",(ZB6#[D4KTI$LY%+]DKEC!Q_[+VHZ*"@M]JU]]I8B3PU MW5V L=!TBFZUNT N3=]\L3Y5%TMS#SS3-+?2->5I7@GE?*DHG=&9JA=O.GTS MD:PVS?*!2=5ZS3!3ER-R':"^+QF3NXG>H+MNH[]02P,$% @ T**%6,G- M#PW0 @ >P@ !D !X;"]W;W)K&ULK59K;YLP M%/TK%INF5EH+F$=8EB UR:KM0Z6J:;?/#ER"5; SVWGLW\\V"*C/@ MIH,%F<,4U,OB4>B>V[+DM 8F*6=(0#%T[OS^.#'Q-N GA;7<:R/C9,;YJ^G\ MR(>.9P1!!9DR#$2_5C"&JC)$6L;O+:?3+FF ^^T=^[WUKKW,B(0QKW[17)5# M)W%0#@595NJ)K[_#UD]D^#)>2?M$ZR:VIX.SI52\WH*U@IJRYDTVVSSL ?SX M# !O ?@8$)X!!%M 8(TVRJRM"5$D'0B^1L)$:S;3L+FQ:.V&,K.+4R7T+-4X ME3Z7@*YFP*"@ZAKI4X$HRW@-2)$-2)1QO5]22<0+I'1HP2N][Y3-^^AJ HK0 M2EZC&_0RG:"KC]<#5VE)AMC-MLN/FN7QF>5]C!XX4Z5$WU@.^2&!J[VTAO#. MT A?9)Q =HL"_S/"'@XZ!(W_'XXOR G:_ :6+SC#-UX* 4SUNU+3(,-NI/E\ M^W)!,A@Z^ON4(%;@I)\^^+'WM&PO=V]R:W-H965T%LTAZ&(W20]%#[0TMM1(I$I2 M]N;?=TAI9:]-"SGT8HO4S*MGAN1PY@N*_,2&BIO M> L,WVRY:*C"H=BYLA5 "^/4U&[@>8G;T(HYR[F9>Q#+.>]473%X$$1V34/% M]Q74_+!P?.=EXK':E4I/N,MY2W?P!.I+^R!PY(XJ1=4 DQ5G1,!VX=SYMVO? M.!B+KQ4-I(J@A5UJ"XM\>UE#76@DY_AU$G?&;VO'T M^47]-Q,\!K.A$M:\_K,J5+EP4H<4L*5=K1[YX7<8 HJU7LYK:7[)8;#U'))W M4O%F<$:"IF+]/WT>$G'BX"=7'(+!(3AWB*XXA(-#: +MR4Q8]U31Y5SP Q': M&M7T@\F-\<9H*J:7\4D)?%NAGUI^+H$4U78+ E@.9 /J ,"(PNF*Y;P!HN@S M:07?5V;E<*KM%!2$*F.TA0($K8E45'6*B^]$4 6$LL*\QE7J\*W6V "#;:5( M)7$VYQW3*K@/"97X5^-^DK?D[3TH6M7R'?E OCS=D[=OWLU=A7%J6C"W@8H+&+ 4O65H%DXKWD-^0T']/ B\(+4#K'WT?O8K\QGS.I])?.:RTX ^>MN(Y7 C/]M2UFO&-D5=;&XE2W- M8>%@-9 @]N L?_[)3[Q?;.'^3V*O@H_&X*,I]25&#?(']Z$M$;UZ;-1UD=LO M4R]-9\G&D6QUX:>Z/9*_AXA(\GX9^4/AW'D_6>,% VREXF.?G\ASB- MP]0_P[3896F497;,9,1,)C$?<=6HR$MSC@O88[5OL78KUIWM+\F=&&A6-ILO#,;;QSZ27"^ M&RR62>(G61S8D=,1.9U$_@/WKK"AI18@#F=A:H_(]XZWG#<9TP/@ ME<_T#CY>=M)ZLW@7"&&4G>?=8A7YR37*D[O8GZ1<#5>DOA6/->(*J']1H/1A MB[+(C\YI+:9)C/L\],^(W9-&H@&Q,_V5+K9X6_>WY3@[]G!WIG,YFU_IWLXT M*$>9OC'\1,6N8I+4L$5)[V:&6*+OM?J!XJUI5S9<8?-C'DOL3T%H WR_Y5R] M#/0'QHYW^1]02P,$% @ T**%6$7U=8PC!0 8A, !D !X;"]W;W)K M&ULK5AM;]LV$/XKA#<4+;#&)$6]I;:!-L'0 MT: M.$WWF9%IFX@DJB0=Q_OU.\F*9$N4D@'-AUB4[H[/W9'W'#G;*_U@MD)8])2E MN9E/MM86E].I2;8BX^9"%2*'+VNE,VYAJ#=34VC!5Y52EDXIQL$TXS*?+&;5 MNQN]F*F=364N;C0RNRSC^O!)I&H_GY#)\XNEW&QM^6*ZF!5\(VZ%O2MN-(RF MC965S$1NI,J1%NOYY".YO**L5*@D?DBQ-R?/J'3E7JF'N['8^B29H)=9\ ME]JEVG\6M4-^:2]1J:G^HWTMBRZ5(:K)4/56PJ;?!&YF4:;ZV&KQ+T[.+[5J!$ M987*16X-4NLR!D)KL4(RAP\"6?Z$N#$"OO)\A5+)[V4JK10PU@(^H;5*837 MT*)KD8CL7FCDD4OT]EI8+E/S#KU'=[?7Z.WO[V93"Z#+J:=)#?#3$2 = @6 M+\#:'XABZCG4KUZO3L_5IQ"J)EZTB1>M['F#]NKH?(>P?*S"_/2%#P1\PEL/B/THY@LWOQ& OS!Y>(O,G;FL-!!Y!]/'>I+!9A@W$B=(64-4C:*](H7TO)4 M_@O96;[A6?'AVH7P:"0XF9LP6!R!U\'8EXL"%@>Q&Z3?@/3'01X#F'"M#Q#0 M/=7"&/3F]GR, MPVX@^V(AI7%,W C#!F$XOBZ31.\@TP4_:*@_+GQA/],^B:.@@Z\O1H,P(@.) MCAI\T2B^K[!%H++F5@-3F;$P1OWX^ QW$]V78@'%OAMDW(",1T$NA;%:)A;B M"$R3/+C@Q;V)8Q;AN //(051#-WP"&[9";^0Y9\[:63%^(DRUKE7:AMG$63$ MZ^;9)1:& 1W >,*@9#S3 MJ(AA^BR,VL*%(RT1DG(JNI>$E&U6]B16 PB+Q! VM M<>ZKVMH9#AR$N%?I'8(Q\W T!+@E)#+.2']#&PX-M^96YIN*-,\*OQ.T@YX" MSP]\YG=1.R1#'U85'EHK+4>1<9+Z9K=".]'UZ8;YV ^[T!RLA -_*)XM*9%Q M5FJ:K[8G=:+L,P[U<,C@KPO4(RQ :PM59'H]4WMU[;!=W:V9)3W_F]K^ZNLG7O>\A\9 M)\ ;+0HN5\]EQ+V<^MP&Z2&T5[O[?WPBE#&I>!ZA+T&.$#'43M*5".DZ%-[HL=_90G10%4'EUYKBV=GOY( M''L1H=WR[) ,?*CC)PQ^A#L]N0 I;Y_^XGHC

*S,3JR))+RSJWK=ED4E[U74K)?+ M3+W](,OZ]7J")^^_>"B>%VWWB^GL:I4]RT^R_;RZ5_K==(Z_I+]^:G^?4$=17)4N9M!Y'I'R_R5I9E MAZ3K^&L+.ME]9M=Q__4[^K]Z\IK,8];(V[K\;S%O%]>39!+-Y5.V+MN'^O5' MN27$.[R\+IO^_^AUVQ9-HGS=M/5RVUE7L"RJS<_LZW8@]CI@YNE MAW(V YT MVX'V1#>5];3NLC:;7:GZ-5)=:XW6O>C'IN^MV115-XV?6J7_6NA^[>PFSVLU M+ZKG\NU#]"JC1?8B]?0T;=;*>=0NI!ZD,JMRV419$^F5\E+4ZZ9\TVU6M=)M M=*^%5#*JI)QW[W2KI[K4JZ.YC+Z]DVU6E,UWT47T^=-=].T_O[N:MKKJ[K.G M^;;"'S85$D^%=S+_&%'\(2*(4$?WV_'=R6'WJ1ZKW8"1W8"1'H]Z\9ZD4GIL M_I-]C6Z:1K;-I8O4!H6Y4;J+\[)99;F\GN@Q;:1ZD9/9-__ GWOHG@FL /" M=$>80NBSFVXRNQ6@YU5%N:9>M%%9:^:-B_<&C/=@W1[R,B-(4#WR+_N$[%8" M881VK0XJ9;M*&5CI;;8JVJPL_J=GY^&;;+GZ_LY5X09$['TV9GIQ"'I4H]TN M$2P5J;M(OBN2PT5N!C#/E'K3 _J:J;ES'+GUZ83$NH#CD72TPRG%3+C+%+LR M!5CF3]6+K-I:=1=ZOZ)<-0KKLRE'*#X>2+M93$B:8G>%\:["&%Z7>:[6>J97 MV9O2&XZKOMB>:8[31!S59SJ=71=[M]5IJ\B^N\E+K@U.6H/2H/$=VTSFMEBW$P@@S3XWEV-8MC03PU[DDHAF=::A\1 ME47V6)1%^^:L$-M+$=,TL6MT-&0BY=QSM6"C6QA4B=WU4LKGS'FUP/W=*A,Y M!9DXKKLT89X+"ALEPK 4W15-UJF19E%4K>QL2B2_:D?;.*^K+=I!'4C$R-KI M'0U31E'B*]@($H85Z=_:AVO'K;)6.ZQ>- \V?F?1#GD2E O.^''5CI8QUZL* M^=:*T2@,B]2OVO@I9W6VW#".>'Q&HU\H1A??HM*]?9YJCR[J"SQ:#NA5K;'DRLO=MN1U"<)AY;2XP($E@$'Z0V8^ON7);7SU4OALXCAZUOF!"F M][RC0ET-*-@/7SX]?-F"W%6YY PQ%-M_X_+F!T-*<8)(1[)($;JR+#4S<=MSUND_=,?3E.:8'*\/1-; MX@37^_B>@A^6:Q2.P IW;Y*,AVV2$?W^BUP^2O6'LV80+O@\?R:T0_)&1HDX M3X8!JG$PZ3.A'9(V>DP&SHMA.0:,%LS=%F\@\"!&N E\R!P9>< HP63LHRB4 MC! CQ@06X['9" P33,J0=JR];^+QL]1(.X6E M?43> B,$4[&5'\IEJ%%^"BO_^&0&!@HF9'L%(,*A>P$M[!3&A#@P1# 3Q\E: MH-1W8*;&15#818R*>V",8"ZVQP!2(6HOMDQI@ "IN $U(F&#&8 MFFT(L#XK44X]!H<:2T!A2^!-HN!^P0Q<1W=O8,6, V"P Q@96,$HH628[0%( M3##EJ>?8Q(P)8+ )&!EJP2C!?&PC<(%9BD5*?(2,%V !7^<.)5_LK';@7&B' MS(UK8+!K&)-\P1#!A!TI!9"/L;WO?6'7,#(?@U&"V=B^@:9",.1)8YEQ#FPH MFQ@;HL% P8PCO,:N?HGM5U"JZ ME_K'_$-T,_]SW;3=I00F?3!^,-$SH1W>:V+\!T=G2?KX60W(N= .21N3P@>2 MBK"D#T8+YGX"6@31-E:&P['&R"P01@FF^_=O&CBD:_P+A_W+Z!NISNIA3D$# M^1J3PV&3,RI,A#&"R=H6YX*A.$X]PL/W;H*#+@@8R-4^*P4QJ31\(0P5P=]T:(A&)/B,>-0>*P01J51\(8P5Q. M0 /GS5@G#ENG$8DEC!!,]00TB*HPOD@,W58XD&C"_4.)GH(&$C5>2,!>*##R MA-&":3N"&THXIA[]$,;K"-CKG!!YPHC!U.SO\K.+%WXW_ S2%#B:@XJV4Y%]HA<^-;!.Q;QB2B,$0PX1/0P&O0&!L!&YN1 MD2F,$DS73GTNB"")A:S(R4X61@CF= M*XJ9[CU.VCW+^TNFGHNJT6;Y22.CC[&6'K5Y/';SIJU7_1.FCW7;ULO^Y4)F M&ULM5EM;]LV$/[N7T%X[9 " MJ2U*?DT3 XF382F:I(C;;D.Q#[1TLKE*HD=2<3+LQ^](.?)+%,X)['R()8KW M\.[A'?E(/)X+^4-- 32Y3Y-,G=2G6L^.FDT53B%EJB%FD.&36,B4:;R5DZ:: M26"1-4J3IN]YG6;*>%8?'-NVSW)P+'*=\ P^2Z+R-&7RX0P2,3^IT_ICPRV? M3+5I: Z.9VP"(]!?9Y\EWC5+E(BGD"DN,B(A/JF?TJ.AWS8&MLCFF,5R]?D3_Q0:/P8R9 M@J%(?N.1GI[4>W420LK#F3D2+? M/V%OJ1D+X:2.Y:E WD%]\/-/M.-]J(I[1V!K++1* M%EHN],$WEN2LJ,D$5P66A8 %G@ 65U05>('6MFAFE;D;T!;M>KT^/6[>K0;E M'/:50;7+H-HO#FK,$O-;%5,!UEF)J=WITU:P$5&[(O1NR_."5MEQS=M.Z6W' MZ>UE%HH4B&;W9 P9Q%Q7.=EY,OI[&@2M?HNV-ORLZ-EIMP,:T&H_NZ6?7:>? M%W$,=MU>=95@#562ZL8Z"%J=1L=[6[4P#9VFKTR=7AED[W\F0X/,6$)NX0ZR M',@(!^"8/P>7MZ-WY/L5I&.0E6N"$_BE:\*.P-8XZ)<<]/>W,O9WR<*.P-98 MH-YR=_6,^O=0[YTPG>%MDZ0OR3(WU_F+[!WQ<2.T-:96(HCZE0=V^=^ M4+$KMBIS?Q\RARYU#G4+G9LX5A@3;EULG #AQ::+DXMR9Y(GF.IF5YOE/>A@.A2 E&W!GI=K7?=M>X<\L49OB.T=8*6 MJHMV]ECK3DGW8B9VA+;.Q%+74;<8V[K6NT]JO>,%E;6^#PE'EQJ.ND7<+FN] M][36-U]UW-Z\-MJE6J-.&308:93@A&41)G*(!?\QEUQ%O/C2XBSGG6JU7:&M M?UM8BC7?VU\Y^SO298OO&/M0>?Y2Y?ENE;=M.2]@UK;N;F4YNP=\;4!+5>8[ MM<[@^N83B4"%DL],3E?&XD;X,@6B;)D@EL)WUPG/B!8$[F=<0@UO?/L:7S&7 M^Y!A_E*&^6X9=HX+E](\M)OT::ZG0G+]X*QJ-^*+JWI$" M6S"Q#SWG+_6<[]9SVQ2!&^%4U1AN@"I/<'V(B<::,%DUS+6RN\=',5;D-+0/ MK10TC:;74$B1L3LN(V I#Q) MD-$/)E:U6"'FV+98'5 ^D#L5GWFCQZ7>&N<=,B M5LZI3RU4/D/^:[TM0(KY/H?0+F^/7_N]!CG-'M8)0&F#EA7YX5,37&:F82/^ MP]JS]&S#@HV"]!P3V*A<-G;ZEM-<.2Q*04[L&9HBH4G+XB2F;"W/Z4[MZ=1& M^QD]&A:G;4N8XO#OBDG<'15)($9(K]'% &1QGE;<:#&S1U)CH;5([>44&):Y MZ8#/8R'TXXT9H#S5'/P'4$L#!!0 ( -"BA5@S-XY#Y0( '<( 9 M>&PO=V]R:W-H965T>>@Z]]F>ZY>) % M@$*/%:OES"F4:B:N*[,"*BHO>0.U?I-S45&EIV+CRD8 7;>@BKF!YT5N1Z;+>3-#% A0MF7R+WJ/[NP6Z>/UVZBHMPE"Y69_P MIDL8O)!P =DEPOX[%'@!ML#GY\.#0[BKK0_^@\%_T/+A%_B6](FNF/9-ZS5J M/P9E$OVX7DDE=(G]M!GL&$,[H]EV$]G0#&:.WE<2Q Z<],TK/_(^V.S^)[(# M\W@PC__&/BQ^LQ59H?>"M+GM*$A+8.KNQD9.XT*?X #_B3O0 M& X:P_,TTB>A2]&FL".(1IE]/\17/CY2:(D+$N*;.K(I)(-"L, M;!K)2>Z$$/_*.Y)H"<,QCGV[PFA0&)VI4(&N(F43&)UDCCQ?]X(C@:=AL8T"XT%@?-XB"YZ#-!V",I1#ORVY/H>$/O /3RJ;B?A$'0D#$I(C$Z=A."+$ MB^PFDL%$\J][=7S]RA6UEG%RLH%\+XA)='4L_S0PQF%(1L74Z7=';<&TY"]4 M;'21(@:Y1GJ7L:8079OK)HHW;:=8<:7[3CLL])\!"!.@W^>):3[#OT;Z M&U!+ P04 " #0HH58+B04-E8# 0# &0 'AL+W=ON&;S7)L%-QDLZ!RFH+\NKB3.W 8E8P64BHF22)@- MG9%_-O$]XV MOC%8J8TQ,:G<"'%K)A?9T/%,1, AU0:"XN<.)L"Y0<(X?M6@ M3G.F<=PLY)%TJ+8K:&2,H6%E]Z7U-Q(:#'S_C$-0.P:Y#YQF'L'8(;:)59#:M5Z5";LN,3.B":C@3:% WH&3O'GEQ]Z[?>0<"&R+JDY#5:<-/?DB M,/5*HRV:WD=!A1M97'/UW27=KA<'\<"]VTSNJ5D81;UNKS';"CMJPHY:PYX( MI$.M<=3I>CN:?FH5QMU^9[^D>TW0O=:@I_@PLW)^3#Y"B2\!MV4<9?B" M,7Q+J'F[UR5N5WSK,?]:Q@.!;3'2;QCIO[#B^X>DZD!@6U3YWF-7XOTGS=? M6S>Y%_G1[DV^QR[T^UYO5_?N1F]5@)S;EE-A.%B1JJ5H5INV=F2;N9WUL6EW M;<_V"%/URI=4SADV2AQF".F==C$H6;6?U42+A>W@;H3&?M .'+]DMH X:;<. MS1#$3?NAV =:.EM$)-(E:3L9]N-[E&39;64FZ1=)I.Z>%U(\W7@KU;W.$0T\ ME(70$R\W9G7N^SK-L63Z5*Y0T)N%5"4S-%1+7Z\4LJQ**@L_"H*^7S(NO&1< MS=VH9"S7IN ";Q3H=5DR]3C%0FXG7NCM)F[Y,C=VPD_&*[;$&9J[U8VBD=^B M9+Q$H;D4H' Q\2["\VD8VX0JXB/'K3YX!FME+N6]';S+)EY@%6&!J;$0C&X; MO,2BL$BDXTL#ZK6<-O'P>8?^MC)/9N9,XZ4L/O',Y!-OZ$&&"[8NS*W<_H6- MH3.+E\I"5U?8-K&!!^E:&UDVR:2@Y**^LX=F(0X2XNA(0M0D1)7NFJA2><4, M2\9*;D'9:$*S#Y75*IO$<6%W9684O>649Y(/.<)"%K0Y7"S!L'F!S0[Q_U#7 MB\;-(VU P0QF8"30WFK#1&83;F=W&GZ[0L-XH5_#"=RB-HJG-G1F9'H/=X(; M"K&!K^'S-99S5/^.?4/:K0(_;71.:YW1$9UA!-=2F%S#&Y%A]BV 3Z9;Y]'. M^31R(EYA>@IQ^#M$013#+^"#SIDBS_7-P1"W:QM7#/$1AID%.IG2-Y/!I2SI M(&E6?8H72C&Q1/JX#N6_;S:O>;WZ78"?QRQ?U6<=^I^$_Z1JQ$/ID_" M>#3JC[J91RWSZ'G,;M.C%Y@.@WT5#ISD](=9('_*>0/RC?4X'O2.. \/?@+A ML^G=]AN@[_Q'1P1$>P'17J)[&KS>YRXL9]^>D,]\4]=%;7IR0_L8P_ M4;D[9?L'O_X2U;)J<#2D&UL MG599;]LX$/XK W6Q:('&DBA?26T!<=+=MFB*(-EM'XI]H*6Q140279*VZZ(_ MOD-*D9U&5H)]L<5COF.&UV0KU9W.$ U\+_)23[W,F-69[^LDPX+KGEQA22,+ MJ0INJ*F6OEXIY*D+*G*?!<'0+[@HO7CB^JY5/)%KDXL2KQ7H=5%PM9MA+K=3 M+_3N.V[$,C.VPX\G*[[$6S3_KJX5M?P&)14%EEK($A0NIMYY>#8+(QO@9GP6 MN-4'WV"MS*6\LXWWZ=0+K"+,,3$6@M/?!B\PSRT2Z?A6@WH-IPT\_+Y'_\N9 M)S-SKO%"YE]$:K*I-_8@Q05?Y^9&;M]A;6A@\1*9:_<+VWINX$&RUD86=3 I M*$19_?/O=2(. B)V)(#5 #Q1<@O*SB8T^^&LNF@2)TI;E5NC M:%10G(G_R1 6,J?BB'()AL]SK"LD?J"NDB;,C@J0 H97,G29!K>6N:' #XEJ,D2N\_2C'4B MDO9>HQO^ !]TQA7EI_KK8(B:.D2.(3K"<&N!3F:TOE*XD 5M.LW=LCU7BI=+ MI(U@8+Z#PWG7?.>Z7<[AZT>"A/<&"]V:LXJ_W\YO-_^97O$$IQ[M;HUJ@U[\ MYXMP&+SI<-=OW/6[T.-/9&1#!2;1'WBYINT/53(9_&S-826Y ATZ4'N\;.(P M"@;C:.)O6L0,&C&#_R]F7]LV017P^$ 0ZT6C=CG#1LZP4\[?5%^KI2L1P\>) M",-^_PCSJ&$>/9.YV_7HD>NH-V;MW..&>]S)_;DJ0)?I\2/3)]%I%(7MQ*<- M\>GSB+L]G[9X#H[D.PSVAVW024X7R0+%4\9KD(?.!T,V/D)_<-:'SZ;OME\# M/5SI0?^( +87P)Z[]7Z_#KI/@AKWP0X8CH+1D<40[H_=L//<>TK1$UF*6E8) M&_RFR3^XG0M42_<&T9#(=6FJB[KI;=XYY]7MOI]>/9*NN%J*4D.."PH->B,Z MD%3U[J@:1J[<73^7AEX.[C.CMQHJ.X'&%U*:^X8E:%Y_\2]02P,$% @ MT**%6$([_$,[ P ]@D !D !X;"]W;W)K&UL MG59;;]LV%/XK!^HPM,!BW6+9R6P!=M)V+9;!2+;NH=@#+1U;0B72)6D[+O;C M=T@JLKO8BK<72:1XOLLYO(VV0GY1!:*&Q[KB:NP56J^N?5]E!=9,]<0*.?U9 M"%DS34VY]-5*(LMM4%WY41 D?LU*[J4CVS>3Z4BL=55RG$E0Z[IF#T-8Q-@1WPJ M<:L.OL%8F0OQQ30^Y&,O,(JPPDP;"$:O#=Y@51DDTO&U ?5:3A-X^/V$_LZ: M)S-SIO!&5'^6N2[&WM"#'!=L7>E[L?T%&T-]@Y>)2MDG;)NQ@0?96FE1-\&D MH"ZY>[/')A$' 7%T(B!J B*KVQ%9E;=,LW0DQ1:D&4UHYL-:M=$DKN2F*@]: MTM^2XG3Z>X&P$!45I^1+T&Q>85.A\ALJE[12[Z@ %=.8@Q9 M56:\=P$S.X? M)HH )&@"VB&3@#RG<;>883U'"7'X$T1!%%_#ZUO4K*S4&[B &4H[HWB&\% P M252?[VS 7R-?DR^CSL\:#U/G(3KA(8S@3G!=*'AKN+\'\"DA;5:BIZQ,HTY$ M4M]KE<,/X(-R(MVK@R%N\QY;AO@$@S5],:7YE,.-J&F1*6:GZ41*QI=($U_# M? >'XV9L9[LG6R9S^/PK0<('C;4ZFC/'?WF_D9&-JC,A/G(^)J6.[AD1O#WT1PZR0XTL:!F.]FD<3B( M!R-_' F<;?IP3/3<2\Z48-ARSWLY/[D\M_E>?C,\T447 W"X\17+?'5 M><3=GJ_^0Z'#8+^U!IWD=&PLL'S)> /RG?,P&"3)"?J#G3T\F[[;?@-TIO]H M+R Z=^7]^SCHW@<:W#,70+C?<\/.3>\E02\D*3YG8?@'1W&-;: MG@/:CJ2[9+B&%BM[L,^%IFN"_2SH M8H;2#*#_"R'T4\,0M%>]]!]02P,$% @ T**%6*ET6N7Z!@ _4$ !D M !X;"]W;W)K&ULQ9Q=<]HX%(;_BH;=V6EGFF*+ MKR2;,!/BCV:W:3(A:2\Z>R% 4^Q3241FL[^^)6-@Q%U%+SSSJ07C6U\'EGH MM<[A1?ADE8IO2)/&S.E%L?-IAS/>,SD^W3!$_W*?2IBIO2NF#;E M0G VR8/B>9,Z3K<9LRAI]$_R8]>B?Y(NU3Q*^+4@:&,HEBGL@H38C@]Z>-,_.P02;\GBWGZB9=?>!%ASH9;YS.9?X_617G.@TR M7DJ5QD6POH(X2M9_V8_BC=@*T)SJ %H$T-V ]C,!K2*@M1- N\\$M(N ]KXM M=(J SKX!W2*@NV] KPCHY8.U?G?SH?&88OT3D:Z(R,[6M&PC']\\6H](E&12 M'"JA7XUTG.H/;Z_._SX8G U]CYQ?75[[GX9GMQ=7G\@;CRL6S27YQ(1@F5[> MD@-R-_3(F]_?GC25;CLC-,=%.X-U._29=EKD,DW43!(_F?!)1;QGCW>I!=#4 MG=[TG#[U?$"MQ+^6R7O2+!WN-NM" _W#G>.+$/1VHBPE?-:SXEPQ@0_&.@994+.TUA/LY+E$]69EEXR MY7KJ4V3T2+;/NV:/^>&S%1,3\O6C1I(+Q6/Y3Y4XU^VWJ]O/IOMCN6!C?MK0 M\[GDXH$W^G_\YG:=/ZN$@81Y2)B/A 5(6 B"&?)J;^35MM'[-WR<3I/HIU:- M8C_(B"?\/E*2:('I^77\[6"4*VJ\I;PJ#5D;J:LA),Q;PSHY+*L]'OINK]UU M>R?-AVUU5)SFN.VCG=,"Y*6%()@Q[IW-N'>LXW[-15ZK)6-._._+2#V2ZSE+ M\EF+?+WD\8B+RMG"BJT[TDB8AX3Y2%B A(4@F*&:[D8UW5=.1EVDO) P#PGS MD; "0M!,$->O8V\>M9)2RQ0 )"T$P0P)'&PD<627P,4VFY):+F%SH>S_)/F(_ MU2=NUUJ?6+EUY8"$>4B8CX0%2%@(@AFR<9W2LG%>N4(I+@"D,"C-@])\*"V MTD(4S939EC/H0BN5 F?D FJFRD(/OY[HMBM.].P76'NHD;2@HA/=BCZ$J%;- M0:3E(%)@G6&'U;[OD32OH!EON'OD=#H[Q0:TU0!*"U$T4PRES>I:;;:^KC,$ MU^F 1 E)EEEY0=)[(M<2V?\^;_TR$(>5M_E^YWGVBZY]ET,]4"@M1-',X2]M M4/@YB>4YD-I 906HFBF M?$HWU>V\=MD)-5ZA- ]*\Z&T $H+43139J7]ZEKMM_Z7?/6 U@Y[X()-N4Y, MV9**2']89G$J5/1SK;H%%U%:]4WRP-Y ;1E!'=87.D_)(V="DD,2K[_M=BF9 ML$=9J2&HP0JEA2B:J:'28W7M)NOV-S]%!6Q-;U"3%4KSH#0?2@N@M!!%,S53 M&K+NX6NG-ZB-"Z5Y4)H/I0506HBBF3(K35_7[OH"TAO4_H72O!7.6L.@=J:K>V($=7E= 4)I7 MT+87J=!>N^WNNCS05@,H+4313'&4OBVU^[:6XH?\6YV^R@SWCMSJ[?&,DRN= MRVQ%D_TJ:JL(2?.@-!]*"Z"T$$4SM5;:RY2^KU)[3H#XWE.9!:3Z4%D!I(8IF:JWTN>EK^]P4ZG-#:1Z4 MYD-I 906HFBFS$J?F]JMWCUS&M3+AM*\@F;D-'5":#Z4%4%J(HIDR*RUN:G=YZRXI1EP"& M/%56F''F?/))#05?8,5MI(ZL6C';%1/.F3VT?=@#]X0% V +"UX#! 4#4 B(GM*G, MR9I10Y-8R0U1-AK9[,'UQJ%1#1/V*]X;A;<,<29);^;77WZD*9FDM^G%U5!CQ5W9X;;L2?@FXPRR$Q+U>R0,PFA/0=-_AX=OE!-U78P<7W2 M[PX,4X _MR$3$% PH\G/\4(;A;_IKWT-:_@&^_GLZ)[KFF8P\G V-:@U>,F' M=_UA\'F?V/]$]D+ZH),^>(L=6UF@)]_J)G-.1<\]R5AK,+I'IOCM%5NL[-QJ MLG@F:55S^0QJ7V.:;*E;PG;! %9V==6"/&WYF,"M32 M+0Q-,KD2IOG;.F^WD\9N%%_Y)[BKFM7REZ99=#=4+1GJXE @97!RAD6I9GDT MAI&UF[^%-#C-[ECBO@5E _"^D-)L#9N@V^#)'U!+ P04 " #0HH58O?4= M8?$$ V)0 &0 'AL+W=O8EV&9WB&1\H1R=F!BQ>Y 5#D6QPEN:X,-A#[\H)O(=%WGKB( M?:5/Q;,KMP+\==8HCEPZ&(S=V \39S'+KMV+Q8SO5!0F<"^(W,6Q+_ZY@8@? MYH[GO%Y8A<\;E5YP%[.M_PP/H+YN[X4^$ %/<^?:NUJR:=H@ MB_@]A(,\.B8IE4?.7]*3S^NY,TA[!!$$*H7P]<\>EA!%*9+NQ]\%J%/F3!L> M'[^B?\S(:S*/OH0EC_X(UVHS=Z8.6<.3OXO4BA\^04%HE.(%/)+97W+(8RF+;D]2FYYHC:2?$C6L*X"N)I(R8:^LKFA5L3W$%P0YKTC=$!90X>6 MIS>GENZPLK@LPQNVX*U@#\D.R TDP48_):98Y%]3T[L$K$6TYD@?\RNY]0.8 M._HYEB#VX"R^_\X;#WYN*@ 26*4EQK],:7FH%$95>GK MN.SK&$&V7P[<*EMKCKY#AP16*<>D+,<$6[833.Y(8!7NTY+[%%FVTR9%TG%- MMXU1WJ19MY=E9R\Q=+L18'_A6K/T'3TDL$I!O('Y[S[ UFZ!B$0?"ZW*_\C= M>,CZ+0#KTJR_>%O":+."/6HZ3!$T_)'OA-UX6;/T'D0DM&I-C(OR&+J(44T3 M%EJ5O[%-GM69G"/B88> MIO<@(J%5BV(\E3=&%S&JA<)"J_(W)LJS^I1S1#PYQ0&W1$U;1&R,CV=W/J>* MN,L&V]/T'D0DM&I1C,'R+M%%C.JFL-"JLPO&3E&K73E#Q 5@N],MYB4:PVC+ MJY@:_T/M_N=D%7>:8GNBON.(A58MBW%9E&+KF*(Z*BRT*G_CJ*A]8NH,';.3 M'$5+6,N''346B-HMT*DZ[C3&]CR]A_$MII2H,5ITA"YC5$^%A5;E;SP5M4]4 MG2'C<:,^O;J,F\-8BXR-":*=)DCW-E#D6DK0:C['%=M3]![!MYA=HL9ET2FZ M@E$-%19:E;\Q5-0^976&@B]/FF!K"6MY$3/C@%BG ^I4<)'C5LT;'P/Z_0] MG1KN=,+V'+V'\"UFEY@Q5@Q]C8ZA^B@LM"I_XZ,8]CH=:UZ"&]4EW!Q6E[![ MM -%J^\YVY@C2?;1EF_?**^6FW^NLRTOM>LWWM4RW\)C8/(=1;>^> X322)X MTI"#BW0+CL@WZ>0GBF^S?2Z/7.E'(#O<@+\&D0;H^T^3-$&Y56KQ'U!+ M P04 " #0HH58P<5D) 0# ["@ &0 'AL+W=O>Q8[NW8?Q1+ D>BIR*OK60LKEI6V+9 $% M%N=L"52]R1@OL%1=/K?%D@-.C:C(;<]Q0KO A%I1SSR[Y5&/K61.*-QR)%9% M@?GS%>1LT[=<:_O@CLP74C^PH]X2SV$*\F%YRU7/KEU24@ 5A%'$(>M; _6B;UU8*(4,KW)YQS;?H*HGT'X)RX7Y19MR;.A8 M*%D)R8I*K#(H""W_\5/%84?@^@<$7B7P7BOP*X'_KR \(.A4@HXA4Y9B.,18 MXJC'V09Q/5JYZ8:!:=2J?$+UM$\E5V^)TLEH>#,>C^['UY/[*1I,8C2\F=R/ M)E^O)\/1]11]B$%BD@LTP9QC/4-GZ!-ZF,;HP]NSGBU5 MK&3JI@<1G,.Q#, M]="84;D0Z)JFD.X;V"KS.GUOF_Z5U^HXQL_([7Y$GN/Y#?D,_Z_V'*-VFZII M5\>0G"/?;0J^5XM?3X5O_/Q#4\&*@DCU24F!,$W14*$B= XT(2!03$22,['B M@'X.9D)R]<7\:DCZJ@S2:0ZB=Y%+L<0)]"VU30C@:["B=V_Q7N4 8@F<*5!8 ST;KF.@HO <9R>O=Y%TAKG6"0G M,MM#$M1(@E8D:DN7.>CUAG#!5E0V06FU.'8U!2\(^Z'CO$ ,R6U'!ZCOB]$?4$L#!!0 ( -"BA5@MWGZ'10, ,H4 - M>&PO_Q.??8OB%N!Z5><7HWIU1[RYR+RH,(@F50YT::K9D%9*$K2$D@Y#[IA& 3D_#A_'HW M?E8!YW[@%+TZ0/0B#'%A #'Q^##Q?=J8=.\@Z3W*F'!_6[@5^A,Q<1+#TPUJ M>(J0>Z&#W#(M+:C+9#3(I&BK)?)MP.B2G'J/A _],>%LHABP,I(SOK+A+@2F MDDOE:5.F)E$'(N63A3NV!Q505[?O5X5Q.%-DU>E>^2VANIDD$ZE2JIHT'7\=&@TXS<". M8K,YW+4L @"UEKEII(S,I""5AS6C;AC9*>7\#A[O']F6]C+;V+%JOT33-(;J MII6Q'=#?5+/:F[*7+]+U"O8H]>>%F8ZH^E#8]%;1C"VK_C)K#&#J'5R=% 5? M?>)L)G)J)W]PPM& K'G>7"KV9+)!J4Q-@"K?>Z1*L^EFY)OZWZSRC@BK"-TV;VC_F57ZQX_I]^!J>JZ^57<=.DU'O^#W69X!C-QF_ M!9-O8+NCY/@]UJ>P8S?Y%E:R]VK?['M-!O5):..XM778:J(>'&J'_GU;:_PO0Z<7.B-KF82.F2IN.ZJV:3JNF9ALE:7T#816ZJRXU@'(NY$<"P M/)@#C&-96)[_:3Y]=#X6P[SUG4@?Y?11CF6YD''UP?*X.8FYW#--DBB*8VQ% MQV.G@S&V;G$,/VXUS!LPL#R0Z>_6&M]MO$+VUP&VI_LJ!)LI7HG83/&U!L2] M;L!($O=N8WF @>T"5CN0WYT':LK-B2+85DBA*$C<"F-M!%&$(/(TX@CD #Q@21=5[<.=]%*S?4T'[W\O1;U!+ P04 M " #0HH58EXJ[', 3 @ "P %]R96QS+RYR96QSG9*Y;L,P#$!_ MQ=">, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+ MJ1C]$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D M5XA-/E_G;@ M2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/ M['X 4$L#!!0 ( -"BA5B#/74)J04 -\I / >&PO=V]R:V)O;VLN M>&ULQ9I=<]HX%(;_BH:K=&:[!(/IQS2=,: TW@6;Q4ZVO=HQM@C:VA8CBZ3I MK]\CDVSEA)[=FY-<$0P1#\?6^QS)?+A5^NM:J:_L6U76S5EO:\SN?;_?Y%M1 M9&6C=)49>*JO^\U.BZQHMD*8JNQ[IZ?C?I7)NO?QP\-82]UWGR@C M[.>NW?I>BQ2M:RDM]%<=8[[;%FJVXO ME);?56VR,LFU*LNSWN#PPI701N9/#B<6,LW637O$9.M5!B!GO?$I#+B1NC'M M.]KQ,V"\$?#FP[.]4>>R-$+/,B,^:;7?R?K:#@/?HN]\C;8.#X^'(K[7_Z>, M:K.1N9BI?%^)VASJJ$5I >MF*W=-C]59))@Z@AP!Z+P;(3I:9 SE$((?/ M")FD\+#@$0#&YRQ>\I4#.4(@1R\&F5P$+J2/0/HO!CD-D@L'P.F;,:B: MA0O2,(Y?R%SH7GH0L#XI!'N["_/!<3RWZ/ M./OO^S!V @O14C2O7"XL_3WZY<#/6[)N^3 Q>,1B.-*4'2TEI@N/7!?WW=E1 M,DP:'K$TCK=I1S$QAWC$#K&=R%$H3!P>L3@.+K" MQ<1\,GS)[:;N],$,,Z3><,ISM;<7HQ:YD#?M](&J-K*!8VKC;AMCQAD1&\?. M\EQ5.U6W,P=.O:QOX$^E[RRNBXFY9T3LGJ>8.PWC:7-G+TWF8F(&&I$O6XZW M9/>3WL7$##0B-M##%MI_I-$(O:%!K)_NMMH34A<3T\^(6#_VPH3_VFMII&@O M3"N>4M77KXW0E8N)Z6=$K)]#$XZ?;\+B:F'9]8.T_M6 A@ MUJ)X@HEIQR?6CFV)= $SI[S[A=T*:--O!+1'+0\T["XF9AZ?V#S=1?B3.>1B MHC?3J3?/\ESOH6[B&PS2P*1QNLON^LS'S.,3FR@UY7K37*+"V;[KG M=C$Q ?G$ CJ:[/NJRK3\_BB0, 'Y+R&@!\S.QJZ/"<@G%A".Z:[1QIB%QL06 M^OF&43OK74S,0F-B"QV]R_4CF5Q,S$)C8@L]NM_U.#I=3,Q"8_+?&PO M7W)E;',O=V]R:V)O;VLN>&UL+G)E;'/-V3MNVT 4A>&M"%R 1_0"^D0*=(8/!4Q)'CY%\0'8OCTJQS:<=^=ZF[?U\7' M\7"JJV8WCOV/E.IZ5XYMO>OZ00I#.'V009/,'.03Y_$$!03%_4(:@/'_0/03= MSQ_T $$/\P<]0M#C_$&R1!F7!$D3K FT%N1:"+P6!%L(Q!8D6PC,%D1;"-06 M9%L(W!:$6PCD%J1;".P6Q%L(]%;46PGT5M1;"?36R<BN!WHIZ*X'> MBGHK@=Z*>BN!WHIZ*X'>BGHK@=Z*>BN!WH9Z&X'>AGH;@=Z&>AN!WC;9+"'0 MVU!O(]#;4&\CT-M0;R/0VU!O(]#;4&\CT-M0;R/0VU%O)]#;46\GT-M1;R?0 MVU%O)]#;)YO=!'H[ZNT$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z!^H=!'H'ZAT$ M>@?J'01Z!^H=!'H'ZAT$>L?D9R6!WH%Z!X'>@7H'@=Z!>@>!WH%Z!X'>&?7. M!'IGU#L3Z)U1[TR@=T:],X'>&?7.WZEW'3\/I5Y[OM;X_.^D>CS?6ZZ/ORR_ M3D[>W@O.Z;:B/O\%4$L#!!0 ( -"BA5C B&UTZ0$ 'XE 3 6T-O M;G1E;G1?5'EP97-=+GAM;,W:74_",!0&X+]"=FM8Z=?\B'"CWJH7_H&Z'61A M6YNV(/Q[NP$F&B4:3'QO6*#M><]ZDN>*ZZ>MHS#:M$T7IMDB1G?%6"@7U)J0 M6T==6IE;WYJ8OOH7YDRY-"_$Q&12L-)VD;HXCGV-;'9]2W.S:N+H;I-^#K7M MIIFG)F2CF]W&/FN:&>>:NC0QK;-U5WU*&>\3\G1RV!,6M0MG:4/&ODSH5[X/ MV)][6)/W=46C1^/CO6G3+K9I6(C;AD)^O,07/=KYO"ZILN6J34?RX#R9*BR( M8MODNZ)GQY-CNF':??*3\X00V/$Z_XX\S?J__RSX$2!\2I \%TH<&Z:, MZ>,&UL4$L! A0#% @ T**%6"U8 MG)?N *P( !$ ( !KP &1O8U!R;W!S+V-O&UL M4$L! A0#% @ T**%6)E&PO=V]R:W-H965T&UL M4$L! A0#% @ T**%6)Y!&=C^!@ 41T !@ ("!]@\ M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**% M6*),PI+>! #1@ !@ ("!=QX 'AL+W=O&PO=V]R:W-H M965T&UL4$L! A0#% @ T**%6**;]POF!P 01, !@ M ("!&DT 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6![1 M4KA_ P /0< !D ("!B%\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6),/Z;0\!0 %PT !D M ("!WFL 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ T**%6$GLKM^_ @ Z 4 !D ("! M8(0 'AL+W=O$& A$0 &0 @(%6AP >&PO=V]R:W-H965T&UL4$L! A0#% M @ T**%6,V;G'54 @ / 4 !D ("!.9( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6'_4-R## M P B@D !D ("!5;X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6 X:GGKA @ ' 8 !D M ("!V<< 'AL+W=O&PO=V]R M:W-H965T ( , % M 9 " @87. !X;"]W;W)K&UL M4$L! A0#% @ T**%6*4LGPY6 P DP@ !D ("!--$ M 'AL+W=O&PO=V]R:W-H965TEAP@( /<% 9 M " @=?< !X;"]W;W)K&UL4$L! A0#% @ MT**%6,^KZ=8O! ^PP !D ("!T-\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6/! Q^:^ @ @P< !D M ("!_/, 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ T**%6('N8XCG! ^!T !D ("!Y?P 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**% M6.+U=.* % Q&4! !D ("!G &PO=V]R:W-H965T5I-; T &RT 9 " @> > 0!X;"]W;W)K M&UL4$L! A0#% @ T**%6-)[.9T) P J0H M !D ("!%RP! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6,G-#PW0 @ >P@ !D M ("!(S4! 'AL+W=O-[+4# #]"@ &0 @($J. $ >&PO=V]R:W-H965T M&UL4$L! A0# M% @ T**%6$!.$:82"0 L#P !D ("!<$$! 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6"XD M%#96 P $ P !D ("!450! 'AL+W=O5P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ T**%6$([_$,[ P ]@D !D M ("!TEX! 'AL+W=O&PO M=V]R:W-H965TP( M ,T% 9 " @75I 0!X;"]W;W)K&UL4$L! A0#% @ T**%6+WU'6'Q! -B4 !D ("! M)VP! 'AL+W=O&PO=V]R:W-H965T7!E&UL4$L%!@ !( $@ KQ, !R# 0 $! end XML 81 Show.js IDEA: XBRL DOCUMENT // Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission. Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105. var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0); e.removeAttribute('id');a.parentNode.appendChild(e)}} if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'} e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}} XML 82 report.css IDEA: XBRL DOCUMENT /* Updated 2009-11-04 */ /* v2.2.0.24 */ /* DefRef Styles */ ..report table.authRefData{ background-color: #def; border: 2px solid #2F4497; font-size: 1em; position: absolute; } ..report table.authRefData a { display: block; font-weight: bold; } ..report table.authRefData p { margin-top: 0px; } ..report table.authRefData .hide { background-color: #2F4497; padding: 1px 3px 0px 0px; text-align: right; } ..report table.authRefData .hide a:hover { background-color: #2F4497; } ..report table.authRefData .body { height: 150px; overflow: auto; width: 400px; } ..report table.authRefData table{ font-size: 1em; } /* Report Styles */ ..pl a, .pl a:visited { color: black; text-decoration: none; } /* table */ ..report { background-color: white; border: 2px solid #acf; clear: both; color: black; font: normal 8pt Helvetica, Arial, san-serif; margin-bottom: 2em; } ..report hr { border: 1px solid #acf; } /* Top labels */ ..report th { background-color: #acf; color: black; font-weight: bold; text-align: center; } ..report th.void { background-color: transparent; color: #000000; font: bold 10pt Helvetica, Arial, san-serif; text-align: left; } ..report .pl { text-align: left; vertical-align: top; white-space: normal; width: 200px; white-space: normal; /* word-wrap: break-word; */ } ..report td.pl a.a { cursor: pointer; display: block; width: 200px; overflow: hidden; } ..report td.pl div.a { width: 200px; } ..report td.pl a:hover { background-color: #ffc; } /* Header rows... */ ..report tr.rh { background-color: #acf; color: black; font-weight: bold; } /* Calendars... */ ..report .rc { background-color: #f0f0f0; } /* Even rows... */ ..report .re, .report .reu { background-color: #def; } ..report .reu td { border-bottom: 1px solid black; } /* Odd rows... */ ..report .ro, .report .rou { background-color: white; } ..report .rou td { border-bottom: 1px solid black; } ..report .rou table td, .report .reu table td { border-bottom: 0px solid black; } /* styles for footnote marker */ ..report .fn { white-space: nowrap; } /* styles for numeric types */ ..report .num, .report .nump { text-align: right; white-space: nowrap; } ..report .nump { padding-left: 2em; } ..report .nump { padding: 0px 0.4em 0px 2em; } /* styles for text types */ ..report .text { text-align: left; white-space: normal; } ..report .text .big { margin-bottom: 1em; width: 17em; } ..report .text .more { display: none; } ..report .text .note { font-style: italic; font-weight: bold; } ..report .text .small { width: 10em; } ..report sup { font-style: italic; } ..report .outerFootnotes { font-size: 1em; } XML 84 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.1 html 155 300 1 false 66 0 false 4 false false R1.htm 00000001 - Document - Cover Sheet http://cpiaero.com/role/Cover Cover Cover 1 false false R2.htm 00000002 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://cpiaero.com/role/ConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00000003 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://cpiaero.com/role/ConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 00000004 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS Sheet http://cpiaero.com/role/ConsolidatedStatementsOfOperations CONSOLIDATED STATEMENTS OF OPERATIONS Statements 4 false false R5.htm 00000005 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) Sheet http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) Statements 5 false false R6.htm 00000006 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 00000007 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES Sheet http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPolicies PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES Notes 7 false false R8.htm 00000008 - Disclosure - REVENUE Sheet http://cpiaero.com/role/Revenue REVENUE Notes 8 false false R9.htm 00000009 - Disclosure - CONTRACT ASSETS AND LIABILITIES Sheet http://cpiaero.com/role/ContractAssetsAndLiabilities CONTRACT ASSETS AND LIABILITIES Notes 9 false false R10.htm 00000010 - Disclosure - ACCOUNTS RECEIVABLE Sheet http://cpiaero.com/role/AccountsReceivable ACCOUNTS RECEIVABLE Notes 10 false false R11.htm 00000011 - Disclosure - INVENTORY Sheet http://cpiaero.com/role/Inventory INVENTORY Notes 11 false false R12.htm 00000012 - Disclosure - PROPERTY AND EQUIPMENT Sheet http://cpiaero.com/role/PropertyAndEquipment PROPERTY AND EQUIPMENT Notes 12 false false R13.htm 00000013 - Disclosure - GOODWILL Sheet http://cpiaero.com/role/Goodwill GOODWILL Notes 13 false false R14.htm 00000014 - Disclosure - LINE OF CREDIT Sheet http://cpiaero.com/role/LineOfCredit LINE OF CREDIT Notes 14 false false R15.htm 00000015 - Disclosure - DEBT Sheet http://cpiaero.com/role/Debt DEBT Notes 15 false false R16.htm 00000016 - Disclosure - LEASES Sheet http://cpiaero.com/role/Leases LEASES Notes 16 false false R17.htm 00000017 - Disclosure - INCOME TAXES Sheet http://cpiaero.com/role/IncomeTaxes INCOME TAXES Notes 17 false false R18.htm 00000018 - Disclosure - ACCRUED EXPENSES Sheet http://cpiaero.com/role/AccruedExpenses ACCRUED EXPENSES Notes 18 false false R19.htm 00000019 - Disclosure - STOCK-BASED COMPENSATION Sheet http://cpiaero.com/role/Stock-basedCompensation STOCK-BASED COMPENSATION Notes 19 false false R20.htm 00000020 - Disclosure - EMPLOYEE BENEFIT PLAN Sheet http://cpiaero.com/role/EmployeeBenefitPlan EMPLOYEE BENEFIT PLAN Notes 20 false false R21.htm 00000021 - Disclosure - MAJOR CUSTOMERS Sheet http://cpiaero.com/role/MajorCustomers MAJOR CUSTOMERS Notes 21 false false R22.htm 00000022 - Disclosure - COMMITMENTS AND CONTINGENCIES Sheet http://cpiaero.com/role/CommitmentsAndContingencies COMMITMENTS AND CONTINGENCIES Notes 22 false false R23.htm 00000023 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies) Sheet http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies) Policies 23 false false R24.htm 00000024 - Disclosure - REVENUE (Tables) Sheet http://cpiaero.com/role/RevenueTables REVENUE (Tables) Tables http://cpiaero.com/role/Revenue 24 false false R25.htm 00000025 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Tables) Sheet http://cpiaero.com/role/ContractAssetsAndLiabilitiesTables CONTRACT ASSETS AND LIABILITIES (Tables) Tables http://cpiaero.com/role/ContractAssetsAndLiabilities 25 false false R26.htm 00000026 - Disclosure - ACCOUNTS RECEIVABLE (Tables) Sheet http://cpiaero.com/role/AccountsReceivableTables ACCOUNTS RECEIVABLE (Tables) Tables http://cpiaero.com/role/AccountsReceivable 26 false false R27.htm 00000027 - Disclosure - INVENTORY (Tables) Sheet http://cpiaero.com/role/InventoryTables INVENTORY (Tables) Tables http://cpiaero.com/role/Inventory 27 false false R28.htm 00000028 - Disclosure - PROPERTY AND EQUIPMENT (Tables) Sheet http://cpiaero.com/role/PropertyAndEquipmentTables PROPERTY AND EQUIPMENT (Tables) Tables http://cpiaero.com/role/PropertyAndEquipment 28 false false R29.htm 00000029 - Disclosure - DEBT (Tables) Sheet http://cpiaero.com/role/DebtTables DEBT (Tables) Tables http://cpiaero.com/role/Debt 29 false false R30.htm 00000030 - Disclosure - LEASES (Tables) Sheet http://cpiaero.com/role/LeasesTables LEASES (Tables) Tables http://cpiaero.com/role/Leases 30 false false R31.htm 00000031 - Disclosure - INCOME TAXES (Tables) Sheet http://cpiaero.com/role/IncomeTaxesTables INCOME TAXES (Tables) Tables http://cpiaero.com/role/IncomeTaxes 31 false false R32.htm 00000032 - Disclosure - ACCRUED EXPENSES (Tables) Sheet http://cpiaero.com/role/AccruedExpensesTables ACCRUED EXPENSES (Tables) Tables http://cpiaero.com/role/AccruedExpenses 32 false false R33.htm 00000033 - Disclosure - STOCK-BASED COMPENSATION (Tables) Sheet http://cpiaero.com/role/Stock-basedCompensationTables STOCK-BASED COMPENSATION (Tables) Tables http://cpiaero.com/role/Stock-basedCompensation 33 false false R34.htm 00000034 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) Sheet http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesDetailsNarrative PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) Details http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies 34 false false R35.htm 00000035 - Disclosure - The following table presents the Company???s revenue disaggregated by contract type and revenue recognition method: (Details) Sheet http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails The following table presents the Company???s revenue disaggregated by contract type and revenue recognition method: (Details) Details 35 false false R36.htm 00000036 - Disclosure - Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022: (Details) Sheet http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022: (Details) Details 36 false false R37.htm 00000037 - Disclosure - REVENUE (Details Narrative) Sheet http://cpiaero.com/role/RevenueDetailsNarrative REVENUE (Details Narrative) Details http://cpiaero.com/role/RevenueTables 37 false false R38.htm 00000038 - Disclosure - Schedule of contract assets and liabilities (Details) Sheet http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails Schedule of contract assets and liabilities (Details) Details 38 false false R39.htm 00000039 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Details Narrative) Sheet http://cpiaero.com/role/ContractAssetsAndLiabilitiesDetailsNarrative CONTRACT ASSETS AND LIABILITIES (Details Narrative) Details http://cpiaero.com/role/ContractAssetsAndLiabilitiesTables 39 false false R40.htm 00000040 - Disclosure - Accounts receivable consists of trade receivables as follows: (Details) Sheet http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails Accounts receivable consists of trade receivables as follows: (Details) Details 40 false false R41.htm 00000041 - Disclosure - The components of inventory consist of the following: (Details) Sheet http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails The components of inventory consist of the following: (Details) Details 41 false false R42.htm 00000042 - Disclosure - The components of property and equipment consist of the following: (Details) Sheet http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails The components of property and equipment consist of the following: (Details) Details 42 false false R43.htm 00000043 - Disclosure - PROPERTY AND EQUIPMENT (Details Narrative) Sheet http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative PROPERTY AND EQUIPMENT (Details Narrative) Details http://cpiaero.com/role/PropertyAndEquipmentTables 43 false false R44.htm 00000044 - Disclosure - GOODWILL (Details Narrative) Sheet http://cpiaero.com/role/GoodwillDetailsNarrative GOODWILL (Details Narrative) Details http://cpiaero.com/role/Goodwill 44 false false R45.htm 00000045 - Disclosure - LINE OF CREDIT (Details Narrative) Sheet http://cpiaero.com/role/LineOfCreditDetailsNarrative LINE OF CREDIT (Details Narrative) Details http://cpiaero.com/role/LineOfCredit 45 false false R46.htm 00000046 - Disclosure - The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows: (Details) Sheet http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows: (Details) Details 46 false false R47.htm 00000047 - Disclosure - DEBT (Details Narrative) Sheet http://cpiaero.com/role/DebtDetailsNarrative DEBT (Details Narrative) Details http://cpiaero.com/role/DebtTables 47 false false R48.htm 00000048 - Disclosure - Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows: (Details) Sheet http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows: (Details) Details 48 false false R49.htm 00000049 - Disclosure - The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022: (Details) Sheet http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022: (Details) Details 49 false false R50.htm 00000050 - Disclosure - LEASES (Details Narrative) Sheet http://cpiaero.com/role/LeasesDetailsNarrative LEASES (Details Narrative) Details http://cpiaero.com/role/LeasesTables 50 false false R51.htm 00000051 - Disclosure - The (benefit) for income taxes consists of the following: (Details) Sheet http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails The (benefit) for income taxes consists of the following: (Details) Details 51 false false R52.htm 00000052 - Disclosure - The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows: (Details) Sheet http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows: (Details) Details 52 false false R53.htm 00000053 - Disclosure - The components of deferred income tax assets and liabilities are as follows at December 31: (Details) Sheet http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details The components of deferred income tax assets and liabilities are as follows at December 31: (Details) Details 53 false false R54.htm 00000054 - Disclosure - Accordingly, we have restated the balances as previously reported, where needed, as follows: (Details) Sheet http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails Accordingly, we have restated the balances as previously reported, where needed, as follows: (Details) Details 54 false false R55.htm 00000055 - Disclosure - INCOME TAXES (Details Narrative) Sheet http://cpiaero.com/role/IncomeTaxesDetailsNarrative INCOME TAXES (Details Narrative) Details http://cpiaero.com/role/IncomeTaxesTables 55 false false R56.htm 00000056 - Disclosure - Accrued expenses consists of the following: (Details) Sheet http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails Accrued expenses consists of the following: (Details) Details 56 false false R57.htm 00000057 - Disclosure - Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details) Sheet http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details) Details 57 false false R58.htm 00000058 - Disclosure - The following table summarizes activity related to outstanding RSUs (Details) Sheet http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails The following table summarizes activity related to outstanding RSUs (Details) Details 58 false false R59.htm 00000059 - Disclosure - The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023: (Details) Sheet http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023: (Details) Details 59 false false R60.htm 00000060 - Disclosure - The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023: (Details) Sheet http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023: (Details) Details 60 false false R61.htm 00000061 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative) Sheet http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative STOCK-BASED COMPENSATION (Details Narrative) Details http://cpiaero.com/role/Stock-basedCompensationTables 61 false false R62.htm 00000062 - Disclosure - EMPLOYEE BENEFIT PLAN (Details Narrative) Sheet http://cpiaero.com/role/EmployeeBenefitPlanDetailsNarrative EMPLOYEE BENEFIT PLAN (Details Narrative) Details http://cpiaero.com/role/EmployeeBenefitPlan 62 false false R63.htm 00000063 - Disclosure - MAJOR CUSTOMERS (Details Narrative) Sheet http://cpiaero.com/role/MajorCustomersDetailsNarrative MAJOR CUSTOMERS (Details Narrative) Details http://cpiaero.com/role/MajorCustomers 63 false false R64.htm 00000064 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details Narrative) Sheet http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative COMMITMENTS AND CONTINGENCIES (Details Narrative) Details http://cpiaero.com/role/CommitmentsAndContingencies 64 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 3 fact(s) appearing in ix:hidden were eligible for transformation: dei:CurrentFiscalYearEndDate, dei:DocumentAnnualReport, dei:DocumentTransitionReport - cpi-10k_123123.htm 28, 31, 32 cpi-10k_123123.htm cvu-20231231.xsd cvu-20231231_cal.xml cvu-20231231_def.xml cvu-20231231_lab.xml cvu-20231231_pre.xml cpi10k123123001.jpg http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 87 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "cpi-10k_123123.htm": { "nsprefix": "cvu", "nsuri": "http://cpiaero.com/20231231", "dts": { "inline": { "local": [ "cpi-10k_123123.htm" ] }, "schema": { "local": [ "cvu-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/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd" ] }, "calculationLink": { "local": [ "cvu-20231231_cal.xml" ] }, "definitionLink": { "local": [ "cvu-20231231_def.xml" ] }, "labelLink": { "local": [ "cvu-20231231_lab.xml" ] }, "presentationLink": { "local": [ "cvu-20231231_pre.xml" ] } }, "keyStandard": 266, "keyCustom": 34, "axisStandard": 24, "axisCustom": 0, "memberStandard": 37, "memberCustom": 29, "hidden": { "total": 46, "http://fasb.org/us-gaap/2023": 30, "http://cpiaero.com/20231231": 9, "http://xbrl.sec.gov/dei/2023": 7 }, "contextCount": 155, "entityCount": 1, "segmentCount": 66, "elementCount": 500, "unitCount": 4, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 607, "http://xbrl.sec.gov/dei/2023": 38 }, "report": { "R1": { "role": "http://cpiaero.com/role/Cover", "longName": "00000001 - Document - Cover", "shortName": "Cover", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "b", "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "b", "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R2": { "role": "http://cpiaero.com/role/ConsolidatedBalanceSheets", "longName": "00000002 - Statement - CONSOLIDATED BALANCE SHEETS", "shortName": "CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:Cash", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:Cash", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R3": { "role": "http://cpiaero.com/role/ConsolidatedBalanceSheetsParenthetical", "longName": "00000003 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)", "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "USDPShares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "span", "span", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "USDPShares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "span", "span", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R4": { "role": "http://cpiaero.com/role/ConsolidatedStatementsOfOperations", "longName": "00000004 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS", "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:CostOfRevenue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "unique": true } }, "R5": { "role": "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit", "longName": "00000005 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT)", "shortName": "CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "AsOf2021-12-31_us-gaap_CommonStockMember", "name": "us-gaap:StockholdersEquity", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2021-12-31_us-gaap_CommonStockMember", "name": "us-gaap:StockholdersEquity", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R6": { "role": "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows", "longName": "00000006 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "unique": true } }, "R7": { "role": "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPolicies", "longName": "00000007 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES", "shortName": "PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R8": { "role": "http://cpiaero.com/role/Revenue", "longName": "00000008 - Disclosure - REVENUE", "shortName": "REVENUE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R9": { "role": "http://cpiaero.com/role/ContractAssetsAndLiabilities", "longName": "00000009 - Disclosure - CONTRACT ASSETS AND LIABILITIES", "shortName": "CONTRACT ASSETS AND LIABILITIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R10": { "role": "http://cpiaero.com/role/AccountsReceivable", "longName": "00000010 - Disclosure - ACCOUNTS RECEIVABLE", "shortName": "ACCOUNTS RECEIVABLE", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R11": { "role": "http://cpiaero.com/role/Inventory", "longName": "00000011 - Disclosure - INVENTORY", "shortName": "INVENTORY", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R12": { "role": "http://cpiaero.com/role/PropertyAndEquipment", "longName": "00000012 - Disclosure - PROPERTY AND EQUIPMENT", "shortName": "PROPERTY AND EQUIPMENT", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R13": { "role": "http://cpiaero.com/role/Goodwill", "longName": "00000013 - Disclosure - GOODWILL", "shortName": "GOODWILL", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R14": { "role": "http://cpiaero.com/role/LineOfCredit", "longName": "00000014 - Disclosure - LINE OF CREDIT", "shortName": "LINE OF CREDIT", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R15": { "role": "http://cpiaero.com/role/Debt", "longName": "00000015 - Disclosure - DEBT", "shortName": "DEBT", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LongTermDebtTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LongTermDebtTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R16": { "role": "http://cpiaero.com/role/Leases", "longName": "00000016 - Disclosure - LEASES", "shortName": "LEASES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R17": { "role": "http://cpiaero.com/role/IncomeTaxes", "longName": "00000017 - Disclosure - INCOME TAXES", "shortName": "INCOME TAXES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R18": { "role": "http://cpiaero.com/role/AccruedExpenses", "longName": "00000018 - Disclosure - ACCRUED EXPENSES", "shortName": "ACCRUED EXPENSES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R19": { "role": "http://cpiaero.com/role/Stock-basedCompensation", "longName": "00000019 - Disclosure - STOCK-BASED COMPENSATION", "shortName": "STOCK-BASED COMPENSATION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R20": { "role": "http://cpiaero.com/role/EmployeeBenefitPlan", "longName": "00000020 - Disclosure - EMPLOYEE BENEFIT PLAN", "shortName": "EMPLOYEE BENEFIT PLAN", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R21": { "role": "http://cpiaero.com/role/MajorCustomers", "longName": "00000021 - Disclosure - MAJOR CUSTOMERS", "shortName": "MAJOR CUSTOMERS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R22": { "role": "http://cpiaero.com/role/CommitmentsAndContingencies", "longName": "00000022 - Disclosure - COMMITMENTS AND CONTINGENCIES", "shortName": "COMMITMENTS AND CONTINGENCIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R23": { "role": "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies", "longName": "00000023 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)", "shortName": "PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "23", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R24": { "role": "http://cpiaero.com/role/RevenueTables", "longName": "00000024 - Disclosure - REVENUE (Tables)", "shortName": "REVENUE (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R25": { "role": "http://cpiaero.com/role/ContractAssetsAndLiabilitiesTables", "longName": "00000025 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Tables)", "shortName": "CONTRACT ASSETS AND LIABILITIES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R26": { "role": "http://cpiaero.com/role/AccountsReceivableTables", "longName": "00000026 - Disclosure - ACCOUNTS RECEIVABLE (Tables)", "shortName": "ACCOUNTS RECEIVABLE (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R27": { "role": "http://cpiaero.com/role/InventoryTables", "longName": "00000027 - Disclosure - INVENTORY (Tables)", "shortName": "INVENTORY (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R28": { "role": "http://cpiaero.com/role/PropertyAndEquipmentTables", "longName": "00000028 - Disclosure - PROPERTY AND EQUIPMENT (Tables)", "shortName": "PROPERTY AND EQUIPMENT (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R29": { "role": "http://cpiaero.com/role/DebtTables", "longName": "00000029 - Disclosure - DEBT (Tables)", "shortName": "DEBT (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R30": { "role": "http://cpiaero.com/role/LeasesTables", "longName": "00000030 - Disclosure - LEASES (Tables)", "shortName": "LEASES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R31": { "role": "http://cpiaero.com/role/IncomeTaxesTables", "longName": "00000031 - Disclosure - INCOME TAXES (Tables)", "shortName": "INCOME TAXES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R32": { "role": "http://cpiaero.com/role/AccruedExpensesTables", "longName": "00000032 - Disclosure - ACCRUED EXPENSES (Tables)", "shortName": "ACCRUED EXPENSES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R33": { "role": "http://cpiaero.com/role/Stock-basedCompensationTables", "longName": "00000033 - Disclosure - STOCK-BASED COMPENSATION (Tables)", "shortName": "STOCK-BASED COMPENSATION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R34": { "role": "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesDetailsNarrative", "longName": "00000034 - Disclosure - PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)", "shortName": "PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:CashFDICInsuredAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:CashAndCashEquivalentsPolicyTextBlock", "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:CashFDICInsuredAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:CashAndCashEquivalentsPolicyTextBlock", "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R35": { "role": "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails", "longName": "00000035 - Disclosure - The following table presents the Company\u2019s revenue disaggregated by contract type and revenue recognition method: (Details)", "shortName": "The following table presents the Company\u2019s revenue disaggregated by contract type and revenue recognition method: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": { "contextRef": "From2023-01-012023-12-31_us-gaap_TransferredOverTimeMember", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "unique": true } }, "R36": { "role": "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details", "longName": "00000036 - Disclosure - Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022: (Details)", "shortName": "Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "cvu:EstimatesAtCompletionAdjustmentToGrossProfit", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "cvu:ScheduleOfEstimatesAtCompletionAdjustmentsTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "cvu:EstimatesAtCompletionAdjustmentToGrossProfit", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "cvu:ScheduleOfEstimatesAtCompletionAdjustmentsTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R37": { "role": "http://cpiaero.com/role/RevenueDetailsNarrative", "longName": "00000037 - Disclosure - REVENUE (Details Narrative)", "shortName": "REVENUE (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "span", "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "span", "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R38": { "role": "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails", "longName": "00000038 - Disclosure - Schedule of contract assets and liabilities (Details)", "shortName": "Schedule of contract assets and liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:ContractWithCustomerAssetNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:ContractWithCustomerAssetNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R39": { "role": "http://cpiaero.com/role/ContractAssetsAndLiabilitiesDetailsNarrative", "longName": "00000039 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Details Narrative)", "shortName": "CONTRACT ASSETS AND LIABILITIES (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "cvu:IncreaseDecreaseInContractAsset", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "cvu:IncreaseDecreaseInContractAsset", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R40": { "role": "http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails", "longName": "00000040 - Disclosure - Accounts receivable consists of trade receivables as follows: (Details)", "shortName": "Accounts receivable consists of trade receivables as follows: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:AccountsReceivableGrossCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:AccountsReceivableGrossCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R41": { "role": "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails", "longName": "00000041 - Disclosure - The components of inventory consist of the following: (Details)", "shortName": "The components of inventory consist of the following: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:InventoryRawMaterials", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:InventoryRawMaterials", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R42": { "role": "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails", "longName": "00000042 - Disclosure - The components of property and equipment consist of the following: (Details)", "shortName": "The components of property and equipment consist of the following: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R43": { "role": "http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative", "longName": "00000043 - Disclosure - PROPERTY AND EQUIPMENT (Details Narrative)", "shortName": "PROPERTY AND EQUIPMENT (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "From2023-01-012023-12-31_us-gaap_PropertyPlantAndEquipmentMember", "name": "us-gaap:Depreciation", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-012023-12-31_us-gaap_PropertyPlantAndEquipmentMember", "name": "us-gaap:Depreciation", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R44": { "role": "http://cpiaero.com/role/GoodwillDetailsNarrative", "longName": "00000044 - Disclosure - GOODWILL (Details Narrative)", "shortName": "GOODWILL (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:Goodwill", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2018-12-30_custom_WeldingMetallurgyIncMember", "name": "us-gaap:Goodwill", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "unique": true } }, "R45": { "role": "http://cpiaero.com/role/LineOfCreditDetailsNarrative", "longName": "00000045 - Disclosure - LINE OF CREDIT (Details Narrative)", "shortName": "LINE OF CREDIT (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:LinesOfCreditCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31_custom_BankUnitedMember", "name": "cvu:MaximumLeverageRatioPeriodOne", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "span", "p", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "unique": true } }, "R46": { "role": "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails", "longName": "00000046 - Disclosure - The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows: (Details)", "shortName": "The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R47": { "role": "http://cpiaero.com/role/DebtDetailsNarrative", "longName": "00000047 - Disclosure - DEBT (Details Narrative)", "shortName": "DEBT (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:PaymentsOfDebtIssuanceCosts", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:LongTermDebtAndCapitalLeaseObligations", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "unique": true } }, "R48": { "role": "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails", "longName": "00000048 - Disclosure - Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows: (Details)", "shortName": "Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R49": { "role": "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details", "longName": "00000049 - Disclosure - The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022: (Details)", "shortName": "The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": null }, "R50": { "role": "http://cpiaero.com/role/LeasesDetailsNarrative", "longName": "00000050 - Disclosure - LEASES (Details Narrative)", "shortName": "LEASES (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:OperatingLeaseCost", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:OperatingLeaseCost", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R51": { "role": "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails", "longName": "00000051 - Disclosure - The (benefit) for income taxes consists of the following: (Details)", "shortName": "The (benefit) for income taxes consists of the following: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:CurrentStateAndLocalTaxExpenseBenefit", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:CurrentStateAndLocalTaxExpenseBenefit", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R52": { "role": "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails", "longName": "00000052 - Disclosure - The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows: (Details)", "shortName": "The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R53": { "role": "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details", "longName": "00000053 - Disclosure - The components of deferred income tax assets and liabilities are as follows at December 31: (Details)", "shortName": "The components of deferred income tax assets and liabilities are as follows at December 31: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": null }, "R54": { "role": "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "longName": "00000054 - Disclosure - Accordingly, we have restated the balances as previously reported, where needed, as follows: (Details)", "shortName": "Accordingly, we have restated the balances as previously reported, where needed, as follows: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true }, "uniqueAnchor": { "contextRef": "AsOf2022-12-31_srt_ScenarioPreviouslyReportedMember", "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "unique": true } }, "R55": { "role": "http://cpiaero.com/role/IncomeTaxesDetailsNarrative", "longName": "00000055 - Disclosure - INCOME TAXES (Details Narrative)", "shortName": "INCOME TAXES (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R56": { "role": "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails", "longName": "00000056 - Disclosure - Accrued expenses consists of the following: (Details)", "shortName": "Accrued expenses consists of the following: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:AccountsPayableTradeCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2023-12-31", "name": "us-gaap:AccountsPayableTradeCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R57": { "role": "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails", "longName": "00000057 - Disclosure - Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details)", "shortName": "Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R58": { "role": "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails", "longName": "00000058 - Disclosure - The following table summarizes activity related to outstanding RSUs (Details)", "shortName": "The following table summarizes activity related to outstanding RSUs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "From2023-01-012023-12-31_us-gaap_RestrictedStockUnitsRSUMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-012023-12-31_us-gaap_RestrictedStockUnitsRSUMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R59": { "role": "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "longName": "00000059 - Disclosure - The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023: (Details)", "shortName": "The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "AsOf2022-12-31_us-gaap_RestrictedStockMember", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "table", "us-gaap:ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2022-12-31_us-gaap_RestrictedStockMember", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "table", "us-gaap:ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R60": { "role": "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "longName": "00000060 - Disclosure - The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023: (Details)", "shortName": "The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023: (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "AsOf2022-12-31_us-gaap_PerformanceSharesMember", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "AsOf2022-12-31_us-gaap_PerformanceSharesMember", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "unitRef": "Shares", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R61": { "role": "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative", "longName": "00000061 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative)", "shortName": "STOCK-BASED COMPENSATION (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R62": { "role": "http://cpiaero.com/role/EmployeeBenefitPlanDetailsNarrative", "longName": "00000062 - Disclosure - EMPLOYEE BENEFIT PLAN (Details Narrative)", "shortName": "EMPLOYEE BENEFIT PLAN (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DefinedBenefitPlanContributionsByEmployer", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-01to2023-12-31", "name": "us-gaap:DefinedBenefitPlanContributionsByEmployer", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R63": { "role": "http://cpiaero.com/role/MajorCustomersDetailsNarrative", "longName": "00000063 - Disclosure - MAJOR CUSTOMERS (Details Narrative)", "shortName": "MAJOR CUSTOMERS (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "From2023-01-012023-12-31_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember_custom_CustomerOneMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "span", "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-01-012023-12-31_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember_custom_CustomerOneMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "span", "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } }, "R64": { "role": "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative", "longName": "00000064 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details Narrative)", "shortName": "COMMITMENTS AND CONTINGENCIES (Details Narrative)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "From2023-05-162023-05-17", "name": "us-gaap:LegalFees", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "From2023-05-162023-05-17", "name": "us-gaap:LegalFees", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpi-10k_123123.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock", "presentation": [ "http://cpiaero.com/role/AccruedExpenses" ], "lang": { "en-us": { "role": { "label": "ACCRUED EXPENSES", "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_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r16", "r587" ] }, "us-gaap_AccountsPayableTradeCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableTradeCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Accrued purchases", "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": [ "r14", "r16" ] }, "us-gaap_AccountsReceivableGrossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableGrossCurrent", "crdr": "debit", "calculation": { "http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Billed receivables", "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r155", "r221", "r222", "r555" ] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable [Member]", "documentation": "Due from customers or clients for goods or services that have been delivered or sold." } } }, "auth_ref": [ "r548" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 }, "http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails", "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts receivable, net", "totalLabel": "Total accounts receivable, net", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r221", "r222" ] }, "us-gaap_AccruedInsuranceCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedInsuranceCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Accrued insurance", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r20" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 }, "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails", "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued expenses", "totalLabel": "Total", "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": [ "r20" ] }, "us-gaap_AccruedSalariesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedSalariesCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Accrued payroll", "label": "Accrued Salaries, Current", "documentation": "Carrying value as of the balance sheet date of the obligations incurred through that date and payable for employees' services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r20", "r556" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less accumulated depreciation and amortization", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "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": [ "r47", "r151", "r456" ] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional paid-in capital", "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital." } } }, "auth_ref": [ "r80" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r365", "r366", "r367", "r486", "r650", "r651", "r652", "r703", "r722" ] }, "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "negatedLabel": "Shares withheld for tax withholdings", "label": "Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation", "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Stock-based compensation expense", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r56", "r57", "r328" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to net cash provided by operating activities:" } } }, "auth_ref": [] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Total stock-based compensation expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r360", "r372" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/AccountsReceivableConsistsOfTradeReceivablesAsFollowsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: allowance for expected credit losses", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r156", "r225", "r232" ] }, "dei_AmendmentDescription": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentDescription", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Amendment Description", "documentation": "Description of changes contained within amended document." } } }, "auth_ref": [] }, "cvu_AmendmentFee": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "AmendmentFee", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Capitalized fee first installment", "verboseLabel": "Amendment fee", "documentation": "The element represents amendment fee." } } }, "auth_ref": [] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Amortization of debt issuance costs", "documentation": "Amount of amortization expense attributable to debt issuance costs." } } }, "auth_ref": [ "r90", "r285", "r424", "r645" ] }, "dei_AnnualInformationForm": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AnnualInformationForm", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Annual Information Form", "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form." } } }, "auth_ref": [ "r614" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total Assets", "label": "Assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r119", "r154", "r175", "r204", "r212", "r216", "r227", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r398", "r400", "r415", "r448", "r513", "r587", "r599", "r666", "r667", "r709" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "ASSETS", "verboseLabel": "Assets" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total Current Assets", "label": "Assets, Current", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r147", "r159", "r175", "r227", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r398", "r400", "r415", "r587", "r666", "r667", "r709" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Current Assets:" } } }, "auth_ref": [] }, "dei_AuditedAnnualFinancialStatements": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditedAnnualFinancialStatements", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Audited Annual Financial Statements", "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements." } } }, "auth_ref": [ "r614" ] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r611", "r613", "r614" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "auth_ref": [ "r611", "r613", "r614" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "auth_ref": [ "r611", "r613", "r614" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r331", "r332", "r333", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r355", "r356", "r357", "r358", "r359" ] }, "cvu_BankUnitedMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "BankUnitedMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Bank United [Member]", "documentation": "Bank United [Member]" } } }, "auth_ref": [] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Basis of Presentation and Principles of Consolidation", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://cpiaero.com/role/GoodwillDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r397", "r581", "r582" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://cpiaero.com/role/GoodwillDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r61", "r62", "r397", "r581", "r582" ] }, "us-gaap_Cash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Cash", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash", "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. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r132", "r451", "r487", "r508", "r587", "r599", "r637" ] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Cash", "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "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": [ "r30" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash at beginning of year", "periodEndLabel": "Cash at end of year", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r29", "r97", "r173" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net increase (decrease) in cash", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect", "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": [ "r2", "r97" ] }, "us-gaap_CashFDICInsuredAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashFDICInsuredAmount", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "FDIC Insured balance", "documentation": "The amount of cash deposited in financial institutions as of the balance sheet date that is insured by the Federal Deposit Insurance Corporation." } } }, "auth_ref": [] }, "us-gaap_CashUninsuredAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashUninsuredAmount", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Cash uninsured amount", "documentation": "The amount of cash as of the balance sheet date that is not insured by the Federal Deposit Insurance Corporation." } } }, "auth_ref": [] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "cvu_CommercialContractsMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "CommercialContractsMember", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Commercial contracts [Member]", "documentation": "Commercial contracts." } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies (see note 16)", "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": [ "r24", "r72", "r450", "r499" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "label": "COMMITMENTS AND CONTINGENCIES", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r108", "r247", "r248", "r549", "r662" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r590", "r591", "r592", "r594", "r595", "r596", "r597", "r650", "r651", "r703", "r720", "r722" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r79" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common stock, authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r79", "r500" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "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": [ "r79" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheetsParenthetical", "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Common stock, outstanding", "periodStartLabel": "Beginning balance (in shares)", "periodEndLabel": "Ending balance (in shares)", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r9", "r79", "r500", "r519", "r722", "r723" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common stock - $.001 par value; authorized 50,000,000 shares, 12,771,434 and 12,506,795 shares, respectively, issued and outstanding", "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": [ "r79", "r452", "r587" ] }, "us-gaap_CompensationAndRetirementDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CompensationAndRetirementDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Retirement Benefits [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ComputerEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComputerEquipmentMember", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Computer Equipment [Member]", "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://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r38", "r40", "r65", "r66", "r220", "r548" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r38", "r40", "r65", "r66", "r220", "r479", "r548" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "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": [ "r38", "r40", "r65", "r66", "r220", "r548", "r627" ] }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/MajorCustomers" ], "lang": { "en-us": { "role": { "label": "MAJOR CUSTOMERS", "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date." } } }, "auth_ref": [ "r102" ] }, "us-gaap_ConcentrationRiskLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskLineItems", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r548" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "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": [ "r38", "r40", "r65", "r66", "r220" ] }, "us-gaap_ConcentrationRiskTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTable", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Table]", "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark." } } }, "auth_ref": [ "r37", "r38", "r40", "r41", "r65", "r118", "r548" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration." } } }, "auth_ref": [ "r38", "r40", "r65", "r66", "r220", "r548" ] }, "cvu_ContractAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "ContractAssetsMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Contract Assets [Member]", "documentation": "Contract Assets [Member]" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilitiesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of contract assets and liabilities", "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability." } } }, "auth_ref": [ "r669" ] }, "cvu_ContractWithCustomerAssetAndLiabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "ContractWithCustomerAssetAndLiabilityTextBlock", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilities" ], "lang": { "en-us": { "role": { "label": "CONTRACT ASSETS AND LIABILITIES", "documentation": "The entire disclosure of contract assets and contract liabilities from contract with customer." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNet", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Contract assets", "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time." } } }, "auth_ref": [ "r293", "r295", "r306" ] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Contract assets, net", "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current." } } }, "auth_ref": [ "r293", "r295", "r306" ] }, "us-gaap_ContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiability", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Contract liabilities", "label": "Contract with Customer, Liability", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r293", "r294", "r306" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Contract liabilities", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r293", "r294", "r306" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilitiesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Revenue recognized that was included in contract liabilities", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r307" ] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfRevenue", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Cost of sales", "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period." } } }, "auth_ref": [ "r92", "r175", "r227", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r415", "r666" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfSalesMember", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Cost of Sales [Member]", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "dei_CountryRegion": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CountryRegion", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Country Region", "documentation": "Region code of country" } } }, "auth_ref": [] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityAxis", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "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://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "srt_CumulativeEffectPeriodOfAdoptionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "CumulativeEffectPeriodOfAdoptionAxis", "presentation": [ "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Cumulative Effect, Period of Adoption [Axis]" } } }, "auth_ref": [ "r144", "r181", "r187", "r194", "r228", "r231", "r365", "r366", "r367", "r390", "r391", "r402", "r403", "r404", "r406", "r407", "r408", "r409", "r411", "r412", "r413", "r435" ] }, "srt_CumulativeEffectPeriodOfAdoptionDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "CumulativeEffectPeriodOfAdoptionDomain", "presentation": [ "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details" ], "auth_ref": [ "r144", "r181", "r187", "r194", "r228", "r231", "r365", "r366", "r367", "r390", "r391", "r402", "r403", "r404", "r406", "r407", "r408", "r409", "r411", "r412", "r413", "r435" ] }, "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalStateAndLocalTaxExpenseBenefitAbstract", "presentation": [ "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Current:" } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://cpiaero.com/role/Cover" ], "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_CurrentStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "State", "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": [ "r635", "r648", "r702" ] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Customer Concentration Risk [Member]", "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": [ "r39", "r220" ] }, "cvu_CustomerFourMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "CustomerFourMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Customer Four [Member]", "documentation": "Customer Four." } } }, "auth_ref": [] }, "cvu_CustomerOneMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "CustomerOneMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Customer One [Member]", "documentation": "Customer One." } } }, "auth_ref": [] }, "cvu_CustomerThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "CustomerThreeMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Customer Three [Member]", "documentation": "Customer Three." } } }, "auth_ref": [] }, "cvu_CustomerTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "CustomerTwoMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Customer Two [Member]", "documentation": "Customer Two." } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Debt Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/LineOfCredit" ], "lang": { "en-us": { "role": { "label": "LINE OF CREDIT", "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": [ "r109", "r174", "r263", "r269", "r270", "r271", "r272", "r273", "r274", "r279", "r286", "r287", "r289" ] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentAxis", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "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": [ "r13", "r74", "r75", "r120", "r122", "r177", "r264", "r265", "r266", "r267", "r268", "r270", "r275", "r276", "r277", "r278", "r280", "r281", "r282", "r283", "r284", "r285", "r425", "r564", "r565", "r566", "r567", "r568", "r646" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Basis Spread on Variable Rate", "verboseLabel": "Prime rate Plus", "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://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Aggregate principal balance", "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": [ "r13", "r122", "r290" ] }, "us-gaap_DebtInstrumentFaceAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentFaceAmount", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt instrument, face amount", "documentation": "Face (par) amount of debt instrument at time of issuance." } } }, "auth_ref": [ "r68", "r70", "r264", "r425", "r565", "r566" ] }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentInterestRateStatedPercentage", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Interest Rate, Stated Percentage", "documentation": "Contractual interest rate for funds borrowed, under the debt agreement." } } }, "auth_ref": [ "r22", "r265" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentLineItems", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r177", "r264", "r265", "r266", "r267", "r268", "r270", "r275", "r276", "r277", "r278", "r280", "r281", "r282", "r283", "r284", "r285", "r288", "r425", "r564", "r565", "r566", "r567", "r568", "r646" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r23", "r177", "r264", "r265", "r266", "r267", "r268", "r270", "r275", "r276", "r277", "r278", "r280", "r281", "r282", "r283", "r284", "r285", "r425", "r564", "r565", "r566", "r567", "r568", "r646" ] }, "us-gaap_DebtInstrumentPeriodicPaymentPrincipal": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentPeriodicPaymentPrincipal", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Periodic Payment, Principal", "documentation": "Amount of the required periodic payments applied to principal." } } }, "auth_ref": [ "r23" ] }, "us-gaap_DebtInstrumentRedemptionPeriodAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodAxis", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption, Period [Axis]", "documentation": "Information about timing of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r11" ] }, "us-gaap_DebtInstrumentRedemptionPeriodDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodDomain", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Period as defined under terms of the debt agreement for debt redemption features." } } }, "auth_ref": [ "r11" ] }, "us-gaap_DebtInstrumentRedemptionPeriodOneMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodOneMember", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption, Period One [Member]", "documentation": "Period one representing most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r11" ] }, "us-gaap_DebtInstrumentRedemptionPeriodThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodThreeMember", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption, Period Three [Member]", "documentation": "Period three representing third most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r11" ] }, "us-gaap_DebtInstrumentRedemptionPeriodTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodTwoMember", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption, Period Two [Member]", "documentation": "Period two representing second most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r11" ] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentTable", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Schedule of Long-Term Debt Instruments [Table]", "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r23", "r50", "r51", "r67", "r68", "r70", "r73", "r110", "r111", "r177", "r264", "r265", "r266", "r267", "r268", "r270", "r275", "r276", "r277", "r278", "r280", "r281", "r282", "r283", "r284", "r285", "r288", "r425", "r564", "r565", "r566", "r567", "r568", "r646" ] }, "us-gaap_DebtRelatedCommitmentFeesAndDebtIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtRelatedCommitmentFeesAndDebtIssuanceCosts", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Commitment and agent fees", "documentation": "Represents the charge against earnings during the period for commitment fees and debt issuance expenses." } } }, "auth_ref": [ "r95" ] }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "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": [ "r648", "r701", "r702" ] }, "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalStateAndLocalTaxExpenseBenefitAbstract", "presentation": [ "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Deferred:" } } }, "auth_ref": [] }, "us-gaap_DeferredFinanceCostsNoncurrentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFinanceCostsNoncurrentNet", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Debt issuance costs included in other assets", "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": [ "r69" ] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred tax asset", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r376", "r377" ] }, "us-gaap_DeferredIncomeTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilities", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "totalLabel": "Deferred tax liabilities", "label": "Deferred tax liabilities", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences." } } }, "auth_ref": [ "r76", "r77", "r121", "r384" ] }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "State", "label": "Deferred State and Local Income Tax Expense (Benefit)", "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": [ "r648", "r701", "r702" ] }, "cvu_DeferredTaxAssetsAccruedLegal": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DeferredTaxAssetsAccruedLegal", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Accrued legal", "documentation": "The element represents deferred tax assets accrued legal." } } }, "auth_ref": [] }, "cvu_DeferredTaxAssetsAccruedPayroll": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DeferredTaxAssetsAccruedPayroll", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Accrued payroll", "documentation": "The element represents deferred tax assets accrued payroll." } } }, "auth_ref": [] }, "cvu_DeferredTaxAssetsAcquisitionCost": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DeferredTaxAssetsAcquisitionCost", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Acquisition costs", "documentation": "The amount of deferred tax assets acquisition costs." } } }, "auth_ref": [] }, "cvu_DeferredTaxAssetsDisallowedInterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DeferredTaxAssetsDisallowedInterestExpense", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Disallowed interest expense", "documentation": "The amount of deferred tax assets disallowed interest expense." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsGross", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "totalLabel": "Deferred tax assets", "label": "Deferred tax assets", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r385" ] }, "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Capitalized R&D", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination." } } }, "auth_ref": [ "r60", "r700" ] }, "us-gaap_DeferredTaxAssetsInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInventory", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Inventory reserve", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory." } } }, "auth_ref": [ "r60", "r700" ] }, "cvu_DeferredTaxAssetsLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DeferredTaxAssetsLeaseLiability", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Lease liability", "documentation": "The amount of deferred tax assets lease liability." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsLiabilitiesNet", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "totalLabel": "Net deferred tax assets", "label": "Net deferred tax assets", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting." } } }, "auth_ref": [ "r699" ] }, "us-gaap_DeferredTaxAssetsNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNetAbstract", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets:" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwards", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Net operating loss carryforward", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards." } } }, "auth_ref": [ "r60", "r700" ] }, "us-gaap_DeferredTaxAssetsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOther", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "verboseLabel": "Other", "label": "Deferred Tax Assets, Other", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other." } } }, "auth_ref": [ "r60", "r700" ] }, "us-gaap_DeferredTaxAssetsTaxCreditCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxCreditCarryforwards", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Credit carryforwards", "documentation": "Amount, before allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards." } } }, "auth_ref": [ "r59", "r60", "r700" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Restricted stock", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from compensation and benefits, classified as other." } } }, "auth_ref": [ "r60", "r700" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Allowance for credit losses", "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": [ "r60", "r700" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLossReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLossReserves", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Loss contracts reserve", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from loss reserves other than estimated credit losses." } } }, "auth_ref": [ "r60", "r700" ] }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsValuationAllowance", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details", "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "negatedLabel": "Valuation allowance", "label": "Valuation allowance balance", "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized." } } }, "auth_ref": [ "r386" ] }, "us-gaap_DeferredTaxLiabilitiesNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesNetAbstract", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities:" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxLiabilitiesPrepaidExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesPrepaidExpenses", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Prepaid expenses", "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Property and equipment", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment." } } }, "auth_ref": [ "r60", "r700" ] }, "cvu_DeferredTaxLiabilitiesRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DeferredTaxLiabilitiesRightOfUseAsset", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "ROU asset", "documentation": "The element represents deferred tax liabilities right of use asset." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxLiabilitiesTaxDeferredIncome": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesTaxDeferredIncome", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ComponentsOfDeferredIncomeTaxAssetsAndLiabilitiesAreAsFollowsAtDecember31Details" ], "lang": { "en-us": { "role": { "label": "Revenue recognition", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from tax deferred revenue or income classified as other." } } }, "auth_ref": [ "r60", "r700" ] }, "us-gaap_DefinedBenefitPlanContributionsByEmployer": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanContributionsByEmployer", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/EmployeeBenefitPlanDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Defined Benefit Plan, Plan Assets, Contributions by Employer", "documentation": "Amount of contribution received by defined benefit plan from employer which increases plan assets." } } }, "auth_ref": [ "r310", "r313", "r321", "r577", "r578", "r579", "r580" ] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Depreciation expenses", "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": [ "r4", "r46" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation and amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r4", "r208" ] }, "cvu_DirectorsAndOfficersInsuranceRetentionAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DirectorsAndOfficersInsuranceRetentionAmount", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Directors and officers insurance retention amount", "documentation": "The element represents directors and officers insurance retention amount." } } }, "auth_ref": [] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r305", "r570", "r571", "r572", "r573", "r574", "r575", "r576" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r305", "r570", "r571", "r572", "r573", "r574", "r575", "r576" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://cpiaero.com/role/RevenueTables" ], "lang": { "en-us": { "role": { "label": "The following table presents the Company\u2019s revenue disaggregated by contract type and revenue recognition method:", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r670" ] }, "cvu_DisclosureContractAssetsAndLiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DisclosureContractAssetsAndLiabilitiesAbstract", "lang": { "en-us": { "role": { "label": "Contract Assets And Liabilities", "verboseLabel": "Schedule Of Contract Assets And Liabilities" } } }, "auth_ref": [] }, "cvu_DisclosureLeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "DisclosureLeasesAbstract", "lang": { "en-us": { "role": { "label": "Leases", "verboseLabel": "Future Minimum Lease Payments Under Non-cancellable Operating Leases As Of December 31 2023 Were As Follows", "terseLabel": "Following Table Sets Forth Rou Assets And Operating Lease Liabilities As Of December 31 2023 And 2022" } } }, "auth_ref": [] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensation" ], "lang": { "en-us": { "role": { "label": "STOCK-BASED COMPENSATION", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r326", "r330", "r361", "r362", "r364", "r584" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "dei_DocumentAccountingStandard": { "xbrltype": "accountingStandardItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAccountingStandard", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Accounting Standard", "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'." } } }, "auth_ref": [ "r613" ] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://cpiaero.com/role/Cover" ], "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": [ "r611", "r613", "r614" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://cpiaero.com/role/Cover" ], "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": [ "r611", "r613", "r614", "r616" ] }, "dei_DocumentFinStmtRestatementRecoveryAnalysisFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtRestatementRecoveryAnalysisFlag", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Restatement Recovery Analysis [Flag]", "documentation": "Indicates whether any of the financial statement periods include 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 \u00a7240.10D-1(b)." } } }, "auth_ref": [ "r611", "r613", "r614", "r616" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "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_DocumentPeriodStartDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodStartDate", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Period Start Date", "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentQuarterlyReport", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r612" ] }, "dei_DocumentRegistrationStatement": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentRegistrationStatement", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Registration Statement", "documentation": "Boolean flag that is true only for a form used as a registration statement." } } }, "auth_ref": [ "r600" ] }, "dei_DocumentShellCompanyEventDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentShellCompanyEventDate", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Shell Company Event Date", "documentation": "Date of event requiring a shell company report." } } }, "auth_ref": [ "r613" ] }, "dei_DocumentShellCompanyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentShellCompanyReport", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Document Shell Company Report", "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act." } } }, "auth_ref": [ "r613" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://cpiaero.com/role/Cover" ], "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": [ "r615" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://cpiaero.com/role/Cover" ], "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": [] }, "dei_DocumentsIncorporatedByReferenceTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentsIncorporatedByReferenceTextBlock", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Documents Incorporated by Reference [Text Block]", "documentation": "Documents incorporated by reference." } } }, "auth_ref": [ "r603" ] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Domestic Tax Authority [Member]", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "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": [ "r167", "r184", "r185", "r187", "r188", "r190", "r195", "r197", "r199", "r200", "r201", "r202", "r413", "r414", "r445", "r460", "r559" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "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": [ "r167", "r184", "r185", "r187", "r188", "r190", "r197", "r199", "r200", "r201", "r202", "r413", "r414", "r445", "r460", "r559" ] }, "us-gaap_EarningsPerSharePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerSharePolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Earnings per Share", "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements." } } }, "auth_ref": [ "r35", "r36" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Effective tax benefit rate", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r379" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "negatedLabel": "Recognized tax benefits on stock-based compensation", "label": "Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Amount", "documentation": "Amount 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 expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for award under share-based payment arrangement." } } }, "auth_ref": [ "r621", "r697" ] }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Unamortized stock-based compensation costs", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r363" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Option [Member]", "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://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line Two", "documentation": "Address Line 2 such as Street or Suite number" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine3": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine3", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line Three", "documentation": "Address Line 3 such as an Office Park" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressCountry": { "xbrltype": "countryCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCountry", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address, Country", "documentation": "ISO 3166-1 alpha-2 country code." } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityBankruptcyProceedingsReportingCurrent": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityBankruptcyProceedingsReportingCurrent", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Bankruptcy Proceedings, Reporting Current", "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not. Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element." } } }, "auth_ref": [ "r606" ] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://cpiaero.com/role/Cover" ], "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": [ "r602" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r602" ] }, "dei_EntityExTransitionPeriod": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityExTransitionPeriod", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Elected Not To Use the Extended Transition Period", "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards." } } }, "auth_ref": [ "r620" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "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": [ "r602" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "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": [ "r617" ] }, "dei_EntityPrimarySicNumber": { "xbrltype": "sicNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPrimarySicNumber", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Primary SIC Number", "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity." } } }, "auth_ref": [ "r614" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "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": [ "r602" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://cpiaero.com/role/Cover" ], "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": [ "r602" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r602" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://cpiaero.com/role/Cover" ], "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": [ "r602" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://cpiaero.com/role/Cover" ], "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://cpiaero.com/role/Cover" ], "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": [ "r618" ] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r9", "r144", "r163", "r164", "r165", "r178", "r179", "r180", "r183", "r191", "r193", "r203", "r228", "r231", "r292", "r365", "r366", "r367", "r390", "r391", "r402", "r403", "r404", "r405", "r406", "r408", "r412", "r416", "r417", "r418", "r419", "r420", "r421", "r437", "r469", "r470", "r471", "r486", "r540" ] }, "cvu_EstimatesAtCompletionAdjustmentToGrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "EstimatesAtCompletionAdjustmentToGrossProfit", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Net adjustments", "documentation": "Estimates at Completion adjustments to gross profit." } } }, "auth_ref": [] }, "cvu_ExpensesUnderAgreement": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "ExpensesUnderAgreement", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Expenses Under Agreement", "documentation": "The element represents expenses under agreement." } } }, "auth_ref": [] }, "dei_Extension": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Extension", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Extension", "documentation": "Extension number for local phone number." } } }, "auth_ref": [] }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Class of asset." } } }, "auth_ref": [ "r10" ] }, "us-gaap_FairValueByAssetClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByAssetClassAxis", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Asset Class [Axis]", "documentation": "Information by class of asset." } } }, "auth_ref": [ "r63", "r64" ] }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementPolicyPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Fair Value", "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities." } } }, "auth_ref": [] }, "cvu_FavorableAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "FavorableAdjustmentMember", "presentation": [ "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Favorable adjustments [Member]", "documentation": "Favorable adjustments." } } }, "auth_ref": [] }, "cvu_FirstInstallmentMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "FirstInstallmentMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "First Installment [Member]", "documentation": "First Installment [Member]" } } }, "auth_ref": [] }, "us-gaap_FurnitureAndFixturesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FurnitureAndFixturesMember", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Furniture and Fixtures [Member]", "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_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/GoodwillDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "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": [ "r152", "r237", "r444", "r563", "r587", "r659", "r660" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/Goodwill" ], "lang": { "en-us": { "role": { "label": "GOODWILL", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r104" ] }, "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Goodwill", "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined." } } }, "auth_ref": [ "r236", "r238", "r563" ] }, "cvu_GovernmentContractsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "GovernmentContractsPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Government Contracts", "documentation": "Disclosure of accounting policy for government contracts." } } }, "auth_ref": [] }, "cvu_GovernmentSubcontractsMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "GovernmentSubcontractsMember", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Government subcontracts [Member]", "documentation": "Government subcontracts." } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Gross profit", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r91", "r175", "r204", "r211", "r215", "r217", "r227", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r415", "r561", "r666" ] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "ICFR Auditor Attestation Flag" } } }, "auth_ref": [ "r611", "r613", "r614" ] }, "us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentEffectsOnEarningsPerShareLineItems", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Impairment Effects on Earnings Per Share [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_ImpairmentEffectsOnEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentEffectsOnEarningsPerShareTable", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Impairment Effects on Earnings Per Share [Table]", "documentation": "Disclosure of information about the effects of asset impairment charge on per share or per unit basis." } } }, "auth_ref": [] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "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", "r107" ] }, "us-gaap_InProcessResearchAndDevelopmentPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InProcessResearchAndDevelopmentPolicy", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Research and Development", "documentation": "Disclosure of accounting policy for costs assigned to identifiable tangible and intangible assets of an acquired entity to be used in the research and development activities of the combined enterprise. An entity also may disclose the appraisal method or significant assumptions used to value acquired research and development assets." } } }, "auth_ref": [] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Income before benefit for income taxes", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "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", "r88", "r124", "r204", "r211", "r215", "r217", "r446", "r458", "r561" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r239", "r242", "r524" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement." } } }, "auth_ref": [ "r242", "r524" ] }, "us-gaap_IncomeTaxAuthorityNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameAxis", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority, Name [Axis]", "documentation": "Information by name of taxing authority." } } }, "auth_ref": [ "r8" ] }, "us-gaap_IncomeTaxAuthorityNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameDomain", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/IncomeTaxes" ], "lang": { "en-us": { "role": { "label": "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": [ "r176", "r373", "r380", "r381", "r388", "r392", "r394", "r395", "r396", "r485" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 }, "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/BenefitForIncomeTaxesConsistsOfFollowingDetails", "http://cpiaero.com/role/ConsolidatedStatementsOfOperations", "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails", "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Benefit from income taxes", "totalLabel": "Total", "verboseLabel": "Benefit for income taxes", "terseLabel": "Income tax benefit", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r131", "r142", "r192", "r193", "r209", "r378", "r393", "r461" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "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": [ "r162", "r374", "r375", "r381", "r382", "r387", "r389", "r482" ] }, "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance", "crdr": "debit", "calculation": { "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Change in valuation allowance", "documentation": "Amount 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 increase (decrease) in the valuation allowance for deferred tax assets." } } }, "auth_ref": [ "r697" ] }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "crdr": "debit", "calculation": { "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Taxes computed at the federal statutory rate", "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r379" ] }, "cvu_IncomeTaxReconciliationLossReserveAdjustment": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "IncomeTaxReconciliationLossReserveAdjustment", "crdr": "credit", "calculation": { "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Accrued loss reserve adjustment", "documentation": "Amount 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 loss reserve adjustment.", "label": "Income Tax Reconciliation Loss Reserve Adjustment" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxReconciliationNondeductibleExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationNondeductibleExpense", "crdr": "debit", "calculation": { "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Permanent differences", "documentation": "Amount 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 nondeductible expenses." } } }, "auth_ref": [ "r697" ] }, "us-gaap_IncomeTaxReconciliationOtherReconcilingItems": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationOtherReconcilingItems", "crdr": "debit", "calculation": { "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Other", "documentation": "Amount 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 tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority noncontrolling interest income (loss), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, increase (decrease) in enacted tax rate, prior year income taxes, increase (decrease) in deferred tax asset valuation allowance, and other adjustments." } } }, "auth_ref": [ "r697" ] }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "crdr": "debit", "calculation": { "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "State income tax, net", "documentation": "Amount 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 state and local income tax expense (benefit)." } } }, "auth_ref": [ "r697" ] }, "us-gaap_IncomeTaxReconciliationTaxCreditsResearch": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationTaxCreditsResearch", "crdr": "credit", "calculation": { "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/DifferenceBetweenIncomeTaxProvisionComputedAtFederalStatutoryRateAndActualTaxBenefitIsAccountedForAsFollowsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Research and development tax credit", "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Research, Amount", "documentation": "Amount 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 research tax credit." } } }, "auth_ref": [ "r697" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "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": [ "r31" ] }, "us-gaap_IncomeTaxesReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesReceivable", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Refundable income taxes", "documentation": "Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes." } } }, "auth_ref": [ "r71", "r638" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (decrease) in 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": [ "r3" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Decrease in accounts receivable", "label": "Increase (Decrease) in 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": [ "r3" ] }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 18.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase in income taxes payable", "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction." } } }, "auth_ref": [ "r3" ] }, "cvu_IncreaseDecreaseInContractAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "IncreaseDecreaseInContractAsset", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilitiesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Increase in contract assets", "documentation": "Increase (decrease) in contract asset during the period." } } }, "auth_ref": [] }, "cvu_IncreaseDecreaseInContractLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "IncreaseDecreaseInContractLiability", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilitiesDetailsNarrative" ], "lang": { "en-us": { "role": { "negatedLabel": "Decrease in contract liabilities", "documentation": "Increase (decrease) in contract liability during the period.", "label": "Increase (Decrease) in Contract Liability" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerAsset", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 9.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Increase in contract assets", "label": "Increase (Decrease) in Contract with Customer, Asset", "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time." } } }, "auth_ref": [ "r644" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 15.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "(Decrease) increase in contract liabilities", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r441", "r644" ] }, "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredIncomeTaxes", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Deferred income taxes", "label": "Increase (Decrease) in Deferred Income Taxes", "documentation": "The increase (decrease) during the reporting period in the account that represents the temporary difference that results from Income or Loss that is recognized for accounting purposes but not for tax purposes and vice versa." } } }, "auth_ref": [ "r3" ] }, "us-gaap_IncreaseDecreaseInInsuranceSettlementsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInsuranceSettlementsReceivable", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Decrease (increase) in insurance recovery receivable", "label": "Increase (Decrease) in Insurance Settlements Receivable", "documentation": "The increase (decrease) during the reporting period in insurance settlements receivable, which are amounts due in settlement of a claim for reimbursement from an insurance company when the Company has suffered a loss covered under an insurance policy. The expectation is that such reimbursement will be received within one year of the balance sheet date." } } }, "auth_ref": [ "r3" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Decrease in inventory", "label": "Increase (Decrease) in 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": [ "r3" ] }, "us-gaap_IncreaseDecreaseInLeasingReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInLeasingReceivables", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 12.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Decrease in operating right-of-use assets", "label": "Increase (Decrease) in Leasing Receivables", "documentation": "The increase (decrease) during the reporting period in the amount due from lessees arising from lease agreements." } } }, "auth_ref": [ "r3" ] }, "cvu_IncreaseDecreaseInLitigationSettlementObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "IncreaseDecreaseInLitigationSettlementObligation", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "(Decrease) increase in litigation settlement obligation", "documentation": "The increase (decrease) during the reporting period in litigation settlement obligation." } } }, "auth_ref": [] }, "cvu_IncreaseDecreaseInLossReserve": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "IncreaseDecreaseInLossReserve", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 17.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Decrease in loss reserve", "documentation": "The amount of increase (decrease) in loss reserve." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Changes in operating assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingLeaseLiability", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 16.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Decrease in lease liabilities", "documentation": "Amount of increase (decrease) in obligation for operating lease." } } }, "auth_ref": [ "r629", "r644" ] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 11.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Decrease (increase) in prepaid expenses and other current assets", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r3" ] }, "us-gaap_InsuranceSettlementsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InsuranceSettlementsReceivableCurrent", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Insurance recovery receivable", "documentation": "Amount due in settlement of a claim for reimbursement from an insurance company when the Company has suffered a loss covered under an insurance policy. For classified balance sheets, represents the current amount receivable, that is amounts expected to be collected within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r638" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "negatedLabel": "Interest expense", "label": "Interest Expense", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r69", "r127", "r166", "r207", "r423", "r525", "r598", "r721" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash paid during the year 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": [ "r169", "r171", "r172" ] }, "us-gaap_InterestPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPayableCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Accrued interest", "documentation": "Carrying value as of the balance sheet date of [accrued] interest payable on all forms of debt, including trade payables, that has been incurred and is unpaid. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r20" ] }, "us-gaap_InternalRevenueServiceIRSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InternalRevenueServiceIRSMember", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Internal Revenue Service (IRS) [Member]", "documentation": "Designated tax department of the United States of America government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/Inventory" ], "lang": { "en-us": { "role": { "label": "INVENTORY", "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": [ "r233" ] }, "us-gaap_InventoryFinishedGoods": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoods", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails": { "parentTag": "us-gaap_InventoryGross", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Finished goods (Includes completed components)", "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer." } } }, "auth_ref": [ "r639" ] }, "us-gaap_InventoryGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryGross", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Gross inventory", "label": "Inventory, Gross", "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": [ "r642" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 }, "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails", "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory", "totalLabel": "Inventory, net", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r158", "r554", "r587" ] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Inventory", "label": "Inventory, Policy [Policy Text Block]", "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": [ "r133", "r149", "r157", "r233", "r234", "r235", "r442", "r557" ] }, "us-gaap_InventoryRawMaterials": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterials", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails": { "parentTag": "us-gaap_InventoryGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Raw materials", "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r641" ] }, "us-gaap_InventoryValuationReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryValuationReserves", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails": { "parentTag": "us-gaap_InventoryNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Inventory reserves", "label": "Inventory Valuation Reserves", "documentation": "Amount of valuation reserve for inventory." } } }, "auth_ref": [ "r45", "r642" ] }, "us-gaap_InventoryWorkInProcess": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcess", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails": { "parentTag": "us-gaap_InventoryGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Work in progress", "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r640" ] }, "cvu_LTIP2016Member": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "LTIP2016Member", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Long Term Incentive Plan 2016 [Member]", "documentation": "Long Term Incentive Plan 2016." } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Leasehold Improvements [Member]", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r106" ] }, "us-gaap_LegalFees": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LegalFees", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Attorneys' fees", "documentation": "The amount of expense provided in the period for legal costs incurred on or before the balance sheet date pertaining to resolved, pending or threatened litigation, including arbitration and mediation proceedings." } } }, "auth_ref": [ "r93" ] }, "us-gaap_LesseeLeasesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeasesPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Leases", "label": "Lessee, Leases [Policy Text Block]", "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee." } } }, "auth_ref": [ "r430" ] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://cpiaero.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "label": "Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows:", "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": [ "r706" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total undiscounted operating lease payments", "label": "Lessee, Operating Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r434" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "2024", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "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": [ "r434" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "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": [ "r434" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "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": [ "r434" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "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": [ "r434" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "2025", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "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": [ "r434" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less imputed interest", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r434" ] }, "cvu_LesseeOperatingLeasesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "LesseeOperatingLeasesTableTextBlock", "presentation": [ "http://cpiaero.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "label": "The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022:", "documentation": "Tabular disclosure of lessee operating leases." } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://cpiaero.com/role/Leases" ], "lang": { "en-us": { "role": { "label": "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": [ "r427" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total Liabilities", "label": "Liabilities [Default Label]", "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": [ "r19", "r175", "r227", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r399", "r400", "r401", "r415", "r498", "r560", "r599", "r666", "r709", "r710" ] }, "us-gaap_LiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAbstract", "presentation": [ "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Liabilities" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total Liabilities and Shareholders\u2019 Equity", "label": "Liabilities and Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r84", "r123", "r454", "r587", "r647", "r656", "r705" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "LIABILITIES AND SHAREHOLDERS\u2019 EQUITY" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total Current Liabilities", "label": "Liabilities, Current", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r21", "r148", "r175", "r227", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r399", "r400", "r401", "r415", "r587", "r666", "r709", "r710" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Current Liabilities:" } } }, "auth_ref": [] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Line of credit oustanding", "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r13", "r122", "r717" ] }, "us-gaap_LineOfCreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityAxis", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "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": [ "r17", "r646" ] }, "us-gaap_LineOfCreditFacilityExpirationDate1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityExpirationDate1", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Expiration Date", "documentation": "Date the credit facility terminates, in YYYY-MM-DD format." } } }, "auth_ref": [ "r17" ] }, "us-gaap_LineOfCreditFacilityLenderDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLenderDomain", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility." } } }, "auth_ref": [ "r17", "r646" ] }, "us-gaap_LineOfCreditFacilityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLineItems", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r646" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Line of credit facility, maximum borrowing capacity", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r17" ] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Table]", "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line." } } }, "auth_ref": [ "r17", "r646" ] }, "us-gaap_LinesOfCreditCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LinesOfCreditCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Current portion of line of credit", "documentation": "The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r74", "r120" ] }, "us-gaap_LitigationReserveCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LitigationReserveCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Litigation settlement obligation", "documentation": "Carrying amount of reserve for known or estimated probable loss from litigation, which may include attorneys' fees and other litigation costs, which is expected to be paid within one year of the date of the statement of financial position." } } }, "auth_ref": [ "r24", "r663" ] }, "us-gaap_LitigationSettlementAmountAwardedToOtherParty": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LitigationSettlementAmountAwardedToOtherParty", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Settlement amount", "documentation": "Amount awarded to other party in judgment or settlement of litigation." } } }, "auth_ref": [] }, "us-gaap_LitigationSettlementExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LitigationSettlementExpense", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Covered settlement amount", "documentation": "Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees." } } }, "auth_ref": [] }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/AccountsReceivable" ], "lang": { "en-us": { "role": { "label": "ACCOUNTS RECEIVABLE", "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": [ "r655" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebt", "crdr": "credit", "calculation": { "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total", "label": "Long-Term Debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r13", "r122", "r276", "r291", "r565", "r566", "r717" ] }, "us-gaap_LongTermDebtAndCapitalLeaseObligations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtAndCapitalLeaseObligations", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Financing leases and notes payable", "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent." } } }, "auth_ref": [ "r13", "r449" ] }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Financing leases and notes payable current", "documentation": "Amount of long-term debt and lease obligation, classified as current." } } }, "auth_ref": [ "r20" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths", "crdr": "credit", "calculation": { "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "2024", "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the next rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date." } } }, "auth_ref": [ "r649" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo", "crdr": "credit", "calculation": { "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAsOfDecember312023AreAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "2025", "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the second rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date." } } }, "auth_ref": [ "r649" ] }, "us-gaap_LongTermDebtPercentageBearingVariableInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtPercentageBearingVariableInterestRate", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Interest rate", "documentation": "The interest rate applicable to the portion of the carrying amount of long-term borrowings outstanding as of the balance sheet date, including current maturities, which accrues interest at a rate subject to change from time to time." } } }, "auth_ref": [ "r22" ] }, "us-gaap_LongTermDebtTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtTextBlock", "presentation": [ "http://cpiaero.com/role/Debt" ], "lang": { "en-us": { "role": { "label": "DEBT", "documentation": "The entire disclosure for long-term debt." } } }, "auth_ref": [ "r109" ] }, "us-gaap_LongTermLineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermLineOfCredit", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Line of credit, net of current portion", "documentation": "The carrying value as of the balance sheet date of the noncurrent portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r23", "r48", "r49" ] }, "us-gaap_LossContingencyAccrualCarryingValueCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingencyAccrualCarryingValueCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Loss reserve", "documentation": "Amount of loss contingency liability expected to be resolved within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r249" ] }, "cvu_LossesIncurredUnderAgreement": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "LossesIncurredUnderAgreement", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Losses Incurred Under Agreement", "documentation": "The element represents losses incurred under agreement." } } }, "auth_ref": [] }, "us-gaap_MachineryAndEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MachineryAndEquipmentMember", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Machinery and Equipment [Member]", "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment." } } }, "auth_ref": [] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r220", "r572", "r670", "r718", "r719" ] }, "cvu_MaximumLeverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "MaximumLeverageRatio", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Maximum leverage ratio", "documentation": "Maximum leverage ratio under Credit Agreement." } } }, "auth_ref": [] }, "cvu_MaximumLeverageRatioPeriodFour": { "xbrltype": "pureItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "MaximumLeverageRatioPeriodFour", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Maximum leverage ratio, period 4", "documentation": "Maximum leverage ratio, period 4." } } }, "auth_ref": [] }, "cvu_MaximumLeverageRatioPeriodOne": { "xbrltype": "pureItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "MaximumLeverageRatioPeriodOne", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Maximum leverage ratio, period 1", "documentation": "Maximum leverage ratio, period 1." } } }, "auth_ref": [] }, "cvu_MaximumLeverageRatioPeriodThree": { "xbrltype": "pureItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "MaximumLeverageRatioPeriodThree", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Maximum leverage ratio, period 3", "documentation": "Maximum leverage ratio, period 3." } } }, "auth_ref": [] }, "cvu_MaximumLeverageRatioPeriodTwo": { "xbrltype": "pureItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "MaximumLeverageRatioPeriodTwo", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Maximum leverage ratio, period 2", "documentation": "Maximum leverage ratio, period 2." } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]" } } }, "auth_ref": [ "r250", "r251", "r252", "r253", "r325", "r440", "r468", "r489", "r490", "r543", "r544", "r545", "r546", "r547", "r550", "r551", "r562", "r569", "r583", "r589", "r668", "r711", "r712", "r713", "r714", "r715", "r716" ] }, "cvu_MinimumAdjustedEbitda": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "MinimumAdjustedEbitda", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Minimum adjusted EBITDA", "documentation": "The element represents minimum adjusted ebitda." } } }, "auth_ref": [] }, "cvu_MinimumDebtServiceCoverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "MinimumDebtServiceCoverageRatio", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Minimum debt service coverage ratio future periods", "documentation": "Minimum debt service coverage ratio for trailing four fiscal quarter periods." } } }, "auth_ref": [] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "auth_ref": [ "r250", "r251", "r252", "r253", "r325", "r440", "r468", "r489", "r490", "r543", "r544", "r545", "r546", "r547", "r550", "r551", "r562", "r569", "r583", "r589", "r668", "r711", "r712", "r713", "r714", "r715", "r716" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "auth_ref": [ "r220", "r572", "r670", "r718", "r719" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in financing activities", "label": "Net Cash Provided by (Used in) Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r170" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "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://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r170" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash flows from investing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by operating activities", "label": "Net Cash Provided by (Used in) Operating Activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r97", "r98", "r99" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "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://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 }, "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows", "http://cpiaero.com/role/ConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "label": "Net income", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r89", "r99", "r125", "r146", "r160", "r161", "r165", "r175", "r182", "r184", "r185", "r187", "r188", "r192", "r193", "r198", "r204", "r211", "r215", "r217", "r227", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r414", "r415", "r459", "r521", "r538", "r539", "r561", "r598", "r666" ] }, "cvu_NetIncomeRequiredUnderAgreement": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "NetIncomeRequiredUnderAgreement", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Net income required under agreement", "documentation": "The element represents net income required under agreement." } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Recently Issued Accounting Standards", "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": [] }, "dei_NoTradingSymbolFlag": { "xbrltype": "trueItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "NoTradingSymbolFlag", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "No Trading Symbol Flag", "documentation": "Boolean flag that is true only for a security having no trading symbol." } } }, "auth_ref": [] }, "cvu_OffsetTaxableIncomeForRegularTaxPurposePercent": { "xbrltype": "percentItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "OffsetTaxableIncomeForRegularTaxPurposePercent", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Offset taxable income for regular tax purpose (percent)", "documentation": "The element represents offset taxable income for regular tax purpose percent." } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Income from operations", "label": "Operating Income (Loss)", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r204", "r211", "r215", "r217", "r561" ] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseCost", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/LeasesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Operating lease expense", "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability." } } }, "auth_ref": [ "r431", "r586" ] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details", "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfDecember312023WereAsFollowsDetails", "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "verboseLabel": "Operating lease liabilities", "label": "Present value of operating lease payments", "totalLabel": "Total lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r429" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 1.0 }, "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Operating lease liabilities", "verboseLabel": "Current operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r429" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 2.0 }, "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Long-term operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r429" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDecember312023And2022Details", "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Operating lease right-of-use assets", "verboseLabel": "ROU assets, net", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r428" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://cpiaero.com/role/LeasesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Weighted average discount rate for its operating leases", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r433", "r586" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://cpiaero.com/role/LeasesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Weighted average remaining lease term 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": [ "r432", "r586" ] }, "us-gaap_OperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwards", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Net operating losses", "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws." } } }, "auth_ref": [ "r59" ] }, "us-gaap_OperatingLossCarryforwardsLimitationsOnUse": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwardsLimitationsOnUse", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "NOL description", "documentation": "A description of the limitations on the use of all operating loss carryforwards available to reduce future taxable income." } } }, "auth_ref": [] }, "us-gaap_OperatingLossCarryforwardsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwardsLineItems", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Operating Loss Carryforwards [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_OperatingLossCarryforwardsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwardsTable", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "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": [ "r58" ] }, "us-gaap_OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "label": "PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES", "documentation": "The entire disclosure for the general note to the financial statements for the reporting entity which may include, descriptions of the basis of presentation, business description, significant accounting policies, consolidations, reclassifications, new pronouncements not yet adopted and changes in accounting principles." } } }, "auth_ref": [ "r100", "r101", "r102", "r117" ] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/AccruedExpensesConsistsOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Accrued professional fees and other accrued expenses", "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r20" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r153" ] }, "us-gaap_OtherLongTermDebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLongTermDebtCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Current portion of long-term debt", "documentation": "Amount of long-term debt classified as other, payable within one year or the operating cycle, if longer." } } }, "auth_ref": [ "r74", "r75", "r497" ] }, "us-gaap_OtherLongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLongTermDebtNoncurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term debt, net of current portion", "documentation": "Amount of long-term debt classified as other, payable after one year or the operating cycle, if longer." } } }, "auth_ref": [ "r23", "r497" ] }, "dei_OtherReportingStandardItemNumber": { "xbrltype": "otherReportingStandardItemNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "OtherReportingStandardItemNumber", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Other Reporting Standard Item Number", "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS." } } }, "auth_ref": [ "r613" ] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PayablesAndAccrualsAbstract", "lang": { "en-us": { "role": { "label": "Payables and Accruals [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PaymentsOfDebtIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDebtIssuanceCosts", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows", "http://cpiaero.com/role/DebtDetailsNarrative" ], "lang": { "en-us": { "role": { "negatedLabel": "Debt issuance costs", "label": "Payments of debt issuance costs", "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt." } } }, "auth_ref": [ "r28" ] }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Taxes paid related to net share settlement of equity awards", "label": "Payment, Tax Withholding, Share-Based Payment Arrangement", "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [ "r168" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchase of property and equipment", "label": "Payments to Acquire 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": [ "r96" ] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/EmployeeBenefitPlan" ], "lang": { "en-us": { "role": { "label": "EMPLOYEE BENEFIT PLAN", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r309", "r311", "r312", "r314", "r315", "r316", "r317", "r318", "r319", "r320", "r322", "r323", "r324", "r579" ] }, "cvu_PerformanceEquityPlan2009Member": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PerformanceEquityPlan2009Member", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Performance Equity Plan 2009 [Member]", "documentation": "Performance Equity Plan 2009." } } }, "auth_ref": [] }, "us-gaap_PerformanceSharesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PerformanceSharesMember", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Performance Shares [Member]", "documentation": "Share-based payment arrangement awarded for meeting performance target." } } }, "auth_ref": [] }, "cvu_PeriodFiveMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PeriodFiveMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Period Five [Member]", "documentation": "Period Five [Member]" } } }, "auth_ref": [] }, "cvu_PeriodFourMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PeriodFourMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Period Four [Member]", "documentation": "Period Four [Member]" } } }, "auth_ref": [] }, "cvu_PeriodOneMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PeriodOneMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Period One [Member]", "documentation": "Period One [Member]" } } }, "auth_ref": [] }, "cvu_PeriodSevenMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PeriodSevenMember", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Period Seven [Member]", "documentation": "Period Seven [Member]" } } }, "auth_ref": [] }, "cvu_PeriodSixMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PeriodSixMember", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Period Six [Member]", "documentation": "Period Six [Member]" } } }, "auth_ref": [] }, "cvu_PeriodThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PeriodThreeMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Period Three [Member]", "documentation": "Period Three [Member]" } } }, "auth_ref": [] }, "cvu_PeriodTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PeriodTwoMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Period Two [Member]", "documentation": "Period Two [Member]" } } }, "auth_ref": [] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameAxis", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r681", "r682", "r683", "r684", "r685", "r686", "r687", "r688", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r681", "r682", "r683", "r684", "r685", "r686", "r687", "r688", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696" ] }, "dei_PreCommencementIssuerTenderOffer": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "PreCommencementIssuerTenderOffer", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Pre-commencement Issuer Tender Offer", "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act." } } }, "auth_ref": [ "r607" ] }, "dei_PreCommencementTenderOffer": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "PreCommencementTenderOffer", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Pre-commencement Tender Offer", "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act." } } }, "auth_ref": [ "r608" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "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": [ "r643" ] }, "cvu_PrimeGovernmentContractsMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PrimeGovernmentContractsMember", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Prime government contracts [Member]", "documentation": "Prime government contracts." } } }, "auth_ref": [] }, "cvu_PrimeRateFourMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PrimeRateFourMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Prime Rate Period Four [Member]", "documentation": "This member stands for prime rate four member." } } }, "auth_ref": [] }, "us-gaap_PrimeRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrimeRateMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Prime Rate [Member]", "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers." } } }, "auth_ref": [] }, "cvu_PrimeRateOneMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PrimeRateOneMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Prime Rate One [Member]", "documentation": "This member stands for prime rate one member." } } }, "auth_ref": [] }, "cvu_PrimeRateThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PrimeRateThreeMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Prime Rate Period Three [Member]", "documentation": "This member stands for prime rate three member." } } }, "auth_ref": [] }, "cvu_PrimeRateTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "PrimeRateTwoMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Prime Rate Period Two [Member]", "documentation": "This member stands for prime rate two member." } } }, "auth_ref": [] }, "us-gaap_PriorPeriodReclassificationAdjustmentDescription": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PriorPeriodReclassificationAdjustmentDescription", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Prior Period Reclassification", "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error." } } }, "auth_ref": [ "r636" ] }, "cvu_ProceedsFromInsuranceFinancingObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "ProceedsFromInsuranceFinancingObligation", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from insurance financing obligation", "documentation": "Proceeds from insurance financing obligation." } } }, "auth_ref": [] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductOrServiceAxis", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r218", "r443", "r462", "r463", "r464", "r465", "r466", "r467", "r553", "r570", "r588", "r630", "r664", "r665", "r670", "r718" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductsAndServicesDomain", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "auth_ref": [ "r218", "r443", "r462", "r463", "r464", "r465", "r466", "r467", "r553", "r570", "r588", "r630", "r664", "r665", "r670", "r718" ] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "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": [ "r5" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipment" ], "lang": { "en-us": { "role": { "label": "PROPERTY 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": [ "r105", "r136", "r140", "r141" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Gross", "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": [ "r106", "r150", "r457" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentMember", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipmentDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Member]", "documentation": "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": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 }, "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails", "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property and equipment, net", "totalLabel": "Property and equipment, net", "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": [ "r5", "r447", "r457", "r587" ] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Property 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": [ "r5", "r136", "r140", "r455" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://cpiaero.com/role/PropertyAndEquipmentTables" ], "lang": { "en-us": { "role": { "label": "The components of property and equipment consist of the following:", "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": [ "r5" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software." } } }, "auth_ref": [ "r106" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Estimated useful life", "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_ProvisionForLoanLeaseAndOtherLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForLoanLeaseAndOtherLosses", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Bad debt expense", "documentation": "Amount of expense related loan transactions, lease transactions, credit loss from transactions other than loan and lease transactions, and other loss based on assessment of uncollectability from the counterparty to reduce the account to their net realizable value." } } }, "auth_ref": [ "r3", "r7", "r126" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r250", "r251", "r252", "r253", "r311", "r325", "r356", "r357", "r358", "r439", "r440", "r468", "r489", "r490", "r543", "r544", "r545", "r546", "r547", "r550", "r551", "r562", "r569", "r583", "r589", "r592", "r661", "r668", "r712", "r713", "r714", "r715", "r716" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "auth_ref": [ "r250", "r251", "r252", "r253", "r311", "r325", "r356", "r357", "r358", "r439", "r440", "r468", "r489", "r490", "r543", "r544", "r545", "r546", "r547", "r550", "r551", "r562", "r569", "r583", "r589", "r592", "r661", "r668", "r712", "r713", "r714", "r715", "r716" ] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "label": "Receivables [Abstract]" } } }, "auth_ref": [] }, "cvu_RepaymentOfPrincipalInstallmentUnderAgreement": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "RepaymentOfPrincipalInstallmentUnderAgreement", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Repayment of principal installment under agreement", "documentation": "The element represents repayment of principal installment under agreement." } } }, "auth_ref": [] }, "cvu_RepaymentOfPrincipalUnderAgreement": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "RepaymentOfPrincipalUnderAgreement", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Repayment of principal under agreement", "documentation": "The element represents repayment of principal under agreement." } } }, "auth_ref": [] }, "cvu_RepaymentsOfInsuranceFinancingObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "RepaymentsOfInsuranceFinancingObligation", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Repayments of insurance financing obligation", "documentation": "Repayments of insurance financing obligation.", "label": "Repayments of Insurance Financing Obligation" } } }, "auth_ref": [] }, "us-gaap_RepaymentsOfLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLinesOfCredit", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Principal payments on line of credit", "label": "Repayments of Lines of Credit", "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements." } } }, "auth_ref": [ "r27", "r646" ] }, "us-gaap_RepaymentsOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLongTermDebt", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Principal payments on long-term debt", "label": "Repayments of Long-Term Debt", "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r27", "r483" ] }, "cvu_ReserveUnderAgreement": { "xbrltype": "monetaryItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "ReserveUnderAgreement", "crdr": "debit", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Reserve Under Agreement", "documentation": "The element represents reserve under agreement." } } }, "auth_ref": [] }, "srt_RestatementAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RestatementAdjustmentMember", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Revision of Prior Period, Adjustment [Member]" } } }, "auth_ref": [ "r178", "r179", "r180", "r190", "r191", "r202", "r412", "r413", "r622", "r623", "r624", "r625", "r628", "r633", "r634" ] }, "srt_RestatementAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RestatementAxis", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Revision of Prior Period [Axis]" } } }, "auth_ref": [ "r145", "r178", "r179", "r180", "r182", "r183", "r184", "r185", "r186", "r187", "r189", "r190", "r191", "r192", "r193", "r194", "r202", "r229", "r230", "r391", "r410", "r412", "r413", "r414", "r426", "r436", "r437", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r480" ] }, "srt_RestatementDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RestatementDomain", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails" ], "auth_ref": [ "r145", "r178", "r179", "r180", "r182", "r183", "r184", "r185", "r186", "r187", "r189", "r190", "r191", "r192", "r193", "r194", "r202", "r229", "r230", "r391", "r410", "r412", "r413", "r414", "r426", "r436", "r437", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r480" ] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockMember", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details" ], "lang": { "en-us": { "role": { "label": "Restricted Stock [Member]", "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met." } } }, "auth_ref": [ "r35" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Restricted Stock Units (RSUs) [Member]", "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met." } } }, "auth_ref": [] }, "us-gaap_RestructuringCostAndReserveLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringCostAndReserveLineItems", "presentation": [ "http://cpiaero.com/role/GoodwillDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Restructuring Cost and Reserve [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accumulated deficit", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r81", "r112", "r453", "r473", "r478", "r484", "r501", "r587" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r144", "r178", "r179", "r180", "r183", "r191", "r193", "r228", "r231", "r365", "r366", "r367", "r390", "r391", "r402", "r404", "r405", "r408", "r412", "r469", "r471", "r486", "r722" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations", "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Revenue", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r205", "r206", "r210", "r213", "r214", "r218", "r219", "r220", "r304", "r305", "r443" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://cpiaero.com/role/Revenue" ], "lang": { "en-us": { "role": { "label": "REVENUE", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r143", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r308" ] }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRecognitionPolicyTextBlock", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue Recognition", "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources." } } }, "auth_ref": [ "r522", "r552", "r558" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/RevenueDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Remaining performance obligations", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r139" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Revolving Credit Facility [Member]", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "cvu_RevolvingLoanAndTermLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "RevolvingLoanAndTermLoanMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Revolving Loan and Term Loan [Member]", "documentation": "Revolving Loan and Term Loan [Member]" } } }, "auth_ref": [] }, "us-gaap_RisksAndUncertaintiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RisksAndUncertaintiesAbstract", "lang": { "en-us": { "role": { "label": "Risks and Uncertainties [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SalesRevenueNetMember", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Revenue Benchmark [Member]", "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation." } } }, "auth_ref": [ "r220", "r626" ] }, "srt_ScenarioPreviouslyReportedMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioPreviouslyReportedMember", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Previously Reported [Member]" } } }, "auth_ref": [ "r145", "r178", "r180", "r182", "r183", "r184", "r185", "r193", "r202", "r391", "r410", "r412", "r413", "r426", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r480", "r628", "r631", "r632", "r633", "r653", "r657", "r658", "r704", "r707", "r708" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://cpiaero.com/role/AccountsReceivableTables" ], "lang": { "en-us": { "role": { "label": "Accounts receivable consists of trade receivables as follows:", "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": [ "r26" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "presentation": [ "http://cpiaero.com/role/AccruedExpensesTables" ], "lang": { "en-us": { "role": { "label": "Accrued expenses consists of the following:", "documentation": "Tabular disclosure of the components of accrued liabilities." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "presentation": [ "http://cpiaero.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "The (benefit) for income taxes consists of the following:", "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": [ "r116" ] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://cpiaero.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "The components of deferred income tax assets and liabilities are as follows at December 31:", "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": [ "r115" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://cpiaero.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows:", "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": [ "r114" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [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": [ "r55" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:", "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement." } } }, "auth_ref": [ "r55" ] }, "us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock", "presentation": [ "http://cpiaero.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Accordingly, we have restated the balances as previously reported, where needed, as follows:", "documentation": "Tabular disclosure of prior period adjustments to previously issued financial statements including (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustments (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made." } } }, "auth_ref": [ "r32", "r33", "r34" ] }, "cvu_ScheduleOfEstimatesAtCompletionAdjustmentsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "ScheduleOfEstimatesAtCompletionAdjustmentsTableTextBlock", "presentation": [ "http://cpiaero.com/role/RevenueTables" ], "lang": { "en-us": { "role": { "label": "Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022:", "documentation": "Tabular disclosure of estimates at completion adjustments to gross profit." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://cpiaero.com/role/InventoryTables" ], "lang": { "en-us": { "role": { "label": "The components of inventory consist of the following:", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r15", "r85", "r86", "r87" ] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://cpiaero.com/role/DebtTables" ], "lang": { "en-us": { "role": { "label": "The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows:", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationTables" ], "lang": { "en-us": { "role": { "label": "The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023:", "documentation": "Tabular disclosure of the changes in outstanding nonvested performance-based units." } } }, "auth_ref": [ "r54" ] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "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": [ "r5" ] }, "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRestructuringAndRelatedCostsTable", "presentation": [ "http://cpiaero.com/role/GoodwillDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Schedule of Restructuring and Related Costs [Table]", "documentation": "Table presenting the description of the restructuring costs, such as the expected cost; the costs incurred during the period; the cumulative costs incurred as of the balance sheet date; the income statement caption within which the restructuring charges recognized for the period are included; and the amount of and periodic changes to an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost by type of restructuring." } } }, "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r327", "r329", "r331", "r332", "r333", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r355", "r356", "r357", "r358", "r359" ] }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationTables" ], "lang": { "en-us": { "role": { "label": "The following table summarizes activity related to outstanding RSUs", "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year." } } }, "auth_ref": [ "r53" ] }, "cvu_SecondInstallmentMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "SecondInstallmentMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Second Installment [Member]", "documentation": "Second Installment [Member]" } } }, "auth_ref": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r601" ] }, "dei_Security12gTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12gTitle", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Title of 12(g) Security", "documentation": "Title of a 12(g) registered security." } } }, "auth_ref": [ "r605" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r604" ] }, "dei_SecurityReportingObligation": { "xbrltype": "securityReportingObligationItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityReportingObligation", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Security Reporting Obligation", "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act." } } }, "auth_ref": [ "r609" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Selling, general and administrative expenses", "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": [ "r94" ] }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpensesMember", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative Expenses [Member]", "documentation": "Primary financial statement caption encompassing selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "verboseLabel": "Stock-based compensation expense", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r3" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r327", "r329", "r331", "r332", "r333", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r355", "r356", "r357", "r358", "r359" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Increase in number of shares reserved for issuance", "documentation": "Number of additional shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Shahes reserved for issuance", "documentation": "Number of shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [ "r585" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Shares available for grant", "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable." } } }, "auth_ref": [ "r52" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "label": "Granted", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r339" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Granted", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "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": [ "r349" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r331", "r332", "r333", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r355", "r356", "r357", "r358", "r359" ] }, "us-gaap_ShareBasedCompensationAwardTrancheOneMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationAwardTrancheOneMember", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Tranche One [Member]", "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationAwardTrancheTwoMember", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Tranche Two [Member]", "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Stock-Based Compensation", "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost." } } }, "auth_ref": [ "r326", "r334", "r353", "r354", "r355", "r356", "r359", "r368", "r369", "r370", "r371" ] }, "us-gaap_ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationTables" ], "lang": { "en-us": { "role": { "label": "The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023:", "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for outstanding performance shares." } } }, "auth_ref": [ "r12" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Vesting percentage", "documentation": "Percentage of vesting of award under share-based payment arrangement." } } }, "auth_ref": [ "r671" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Non vested January 1, 2022", "periodEndLabel": "Non vested December 31, 2022", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares", "documentation": "Number of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Forfeited", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares", "documentation": "Number of non-vested options forfeited." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "label": "Forfeited", "documentation": "Weighted average grant-date fair value of non-vested options forfeited." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Non vested January 1, 2022", "periodEndLabel": "Non vested December 31, 2022", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price", "documentation": "Weighted average grant-date fair value of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Weighted average remaining amortization period", "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r113" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Vested", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares", "documentation": "Number of options vested." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingPrsasForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRestrictedStockAwardsForYearEndedDecember312023Details", "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusDetails" ], "lang": { "en-us": { "role": { "label": "Vested", "documentation": "Weighted average grant-date fair value of options vested." } } }, "auth_ref": [] }, "dei_SolicitingMaterial": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SolicitingMaterial", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Soliciting Material", "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act." } } }, "auth_ref": [ "r610" ] }, "us-gaap_StateAndLocalJurisdictionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StateAndLocalJurisdictionMember", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "State and Local Jurisdiction [Member]", "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r9", "r25", "r144", "r163", "r164", "r165", "r178", "r179", "r180", "r183", "r191", "r193", "r203", "r228", "r231", "r292", "r365", "r366", "r367", "r390", "r391", "r402", "r403", "r404", "r405", "r406", "r408", "r412", "r416", "r417", "r418", "r419", "r420", "r421", "r437", "r469", "r470", "r471", "r486", "r540" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit", "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r178", "r179", "r180", "r203", "r443", "r481", "r488", "r491", "r492", "r493", "r494", "r495", "r496", "r500", "r503", "r504", "r505", "r506", "r507", "r509", "r510", "r511", "r512", "r514", "r515", "r516", "r517", "r518", "r520", "r522", "r523", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r540", "r593" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://cpiaero.com/role/AccordinglyWeHaveRestatedBalancesAsPreviouslyReportedWhereNeededAsFollowsDetails", "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit", "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details" ], "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": [ "r178", "r179", "r180", "r203", "r443", "r481", "r488", "r491", "r492", "r493", "r494", "r495", "r496", "r500", "r503", "r504", "r505", "r506", "r507", "r509", "r510", "r511", "r512", "r514", "r515", "r516", "r517", "r518", "r520", "r522", "r523", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r540", "r593" ] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Issuance of common stock upon settlement of restricted stock, net (in shares)", "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards." } } }, "auth_ref": [ "r9", "r112" ] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "label": "Issuance of common stock upon settlement of restricted stock, net", "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period." } } }, "auth_ref": [ "r9", "r78", "r79", "r112" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets", "http://cpiaero.com/role/ConsolidatedStatementsOfShareholdersEquityDeficit" ], "lang": { "en-us": { "role": { "totalLabel": "Total Shareholders\u2019 Equity", "periodStartLabel": "Beginning balance, value", "periodEndLabel": "Ending balance, value", "label": "Equity, Attributable to Parent", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r79", "r82", "r83", "r103", "r502", "r519", "r541", "r542", "r587", "r599", "r647", "r656", "r705", "r722" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Shareholders\u2019 Equity:" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r422", "r438" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r422", "r438" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r422", "r438" ] }, "us-gaap_SupplementalCashFlowElementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowElementsAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental disclosure of cash flow information:" } } }, "auth_ref": [] }, "us-gaap_TaxPeriodAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxPeriodAxis", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Tax Period [Axis]", "documentation": "Information about the period subject to enacted tax laws." } } }, "auth_ref": [] }, "us-gaap_TaxPeriodDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxPeriodDomain", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Identified tax period." } } }, "auth_ref": [] }, "us-gaap_TaxYear2017Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxYear2017Member", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Tax Year 2017 [Member]", "documentation": "Identified as tax year 2017." } } }, "auth_ref": [ "r698" ] }, "us-gaap_TaxYear2018Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxYear2018Member", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Tax Year 2018 [Member]", "documentation": "Identified as tax year 2018." } } }, "auth_ref": [ "r698" ] }, "us-gaap_TaxesPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxesPayableCurrent", "crdr": "credit", "calculation": { "http://cpiaero.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://cpiaero.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Income taxes payable", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r18" ] }, "cvu_TermLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "TermLoanMember", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Term loan [Member]", "documentation": "Term loan [Member]" } } }, "auth_ref": [] }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceAxis", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Timing of Transfer of Good or Service [Axis]", "documentation": "Information by timing of transfer of good or service to customer." } } }, "auth_ref": [ "r575", "r670" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceDomain", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time." } } }, "auth_ref": [ "r575", "r670" ] }, "us-gaap_TradeAndOtherAccountsReceivablePolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeAndOtherAccountsReceivablePolicy", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Allowance for Credit Losses", "documentation": "Disclosure of accounting policy for accounts receivable." } } }, "auth_ref": [ "r128", "r129", "r130", "r223", "r224", "r226" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransferredAtPointInTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredAtPointInTimeMember", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Transferred at Point in Time [Member]", "documentation": "Contract with customer in which good or service is transferred at point in time." } } }, "auth_ref": [ "r575" ] }, "us-gaap_TransferredOverTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredOverTimeMember", "presentation": [ "http://cpiaero.com/role/FollowingTablePresentsCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "lang": { "en-us": { "role": { "label": "Transferred over Time [Member]", "documentation": "Contract with customer in which good or service is transferred over time." } } }, "auth_ref": [ "r575" ] }, "cvu_UnfavorableAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "UnfavorableAdjustmentMember", "presentation": [ "http://cpiaero.com/role/NetEacAdjustmentsHadFollowingImpactOnOurGrossProfitDuringYearsEndedDecember312023And2022Details" ], "lang": { "en-us": { "role": { "label": "Unfavorable adjustments [Member]", "documentation": "Unfavorable adjustments." } } }, "auth_ref": [] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Use of Estimates", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r42", "r43", "r44", "r134", "r135", "r137", "r138" ] }, "us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ValuationAllowanceDeferredTaxAssetChangeInAmount", "crdr": "credit", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "lang": { "en-us": { "role": { "negatedLabel": "Valuation allowance released", "label": "Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount", "documentation": "Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset." } } }, "auth_ref": [ "r383" ] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateAxis", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "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://cpiaero.com/role/DebtDetailsNarrative", "http://cpiaero.com/role/LineOfCreditDetailsNarrative" ], "lang": { "en-us": { "role": { "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://cpiaero.com/role/ComponentsOfPropertyAndEquipmentConsistOfFollowingDetails" ], "lang": { "en-us": { "role": { "label": "Vehicles [Member]", "documentation": "Equipment used primarily for road transportation." } } }, "auth_ref": [] }, "us-gaap_VestingAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VestingAxis", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Vesting [Axis]", "documentation": "Information by vesting schedule of award under share-based payment arrangement." } } }, "auth_ref": [ "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r681", "r682", "r683", "r684", "r685", "r686", "r687", "r688", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696" ] }, "us-gaap_VestingDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VestingDomain", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "lang": { "en-us": { "role": { "documentation": "Vesting schedule of award under share-based payment arrangement." } } }, "auth_ref": [ "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r681", "r682", "r683", "r684", "r685", "r686", "r687", "r688", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696" ] }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "presentation": [ "http://cpiaero.com/role/PrincipalBusinessActivityAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Incremental shares used in calculation of diluted income per common share", "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation." } } }, "auth_ref": [ "r654" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "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": [ "r196", "r201" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Shares used in computing income per common share:" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://cpiaero.com/role/ConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "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": [ "r195", "r201" ] }, "cvu_WeldingMetallurgyIncMember": { "xbrltype": "domainItemType", "nsuri": "http://cpiaero.com/20231231", "localname": "WeldingMetallurgyIncMember", "presentation": [ "http://cpiaero.com/role/GoodwillDetailsNarrative" ], "lang": { "en-us": { "role": { "label": "Welding Metallurgy Inc [Member]", "documentation": "This member stands for welding metallurgy inc member." } } }, "auth_ref": [] }, "dei_WrittenCommunications": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "WrittenCommunications", "presentation": [ "http://cpiaero.com/role/Cover" ], "lang": { "en-us": { "role": { "label": "Written Communications", "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act." } } }, "auth_ref": [ "r619" ] } } } }, "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": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r4": { "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" }, "r5": { "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" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11B", "Subparagraph": "(c)(2)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r8": { "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" }, "r9": { "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" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "e", "SubTopic": "470", "Topic": "942", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Subparagraph": "(c)", "Paragraph": "2", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r13": { "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" }, "r14": { "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" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r16": { "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" }, "r17": { "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" }, "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,20)", "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-26)", "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.20)", "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.21)", "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.22(a)(1))", "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.22)", "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.25)", "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.29-31)", "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.3,4)", "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": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r29": { "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" }, "r30": { "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" }, "r31": { "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" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "250", "SubTopic": "10", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "250", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "250", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r35": { "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" }, "r36": { "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" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-16" }, "r38": { "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" }, "r39": { "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" }, "r40": { "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" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-21" }, "r42": { "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" }, "r43": { "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" }, "r44": { "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" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "330", "SubTopic": "10", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB TOPIC 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r46": { "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" }, "r47": { "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" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481573/470-10-45-13" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481573/470-10-45-14" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8" }, "r52": { "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" }, "r53": { "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" }, "r54": { "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" }, "r55": { "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" }, "r56": { "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" }, "r57": { "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" }, "r58": { "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" }, "r59": { "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" }, "r60": { "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" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r65": { "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" }, "r66": { "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" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A" }, "r68": { "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" }, "r69": { "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" }, "r70": { "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" }, "r71": { "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.10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r72": { "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" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r74": { "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" }, "r75": { "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" }, "r76": { "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(26)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r77": { "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(26)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r78": { "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" }, "r79": { "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" }, "r80": { "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" }, "r81": { "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" }, "r82": { "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" }, "r83": { "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" }, "r84": { "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" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "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(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r88": { "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" }, "r89": { "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" }, "r90": { "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" }, "r91": { "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" }, "r92": { "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" }, "r93": { "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.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r94": { "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" }, "r95": { "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" }, "r96": { "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" }, "r97": { "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" }, "r98": { "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" }, "r99": { "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" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "250", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r103": { "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" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350/tableOfContent" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//360/tableOfContent" }, "r106": { "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" }, "r107": { "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" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7" }, "r112": { "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" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(e)(1)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r114": { "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" }, "r115": { "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" }, "r116": { "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" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r119": { "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" }, "r120": { "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" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r122": { "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" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.11)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r127": { "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" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11B", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-15" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-6" }, "r131": { "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" }, "r132": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "210", "Topic": "946", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-20" }, "r133": { "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" }, "r134": { "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" }, "r135": { "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" }, "r136": { "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" }, "r137": { "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" }, "r138": { "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" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r140": { "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" }, "r141": { "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" }, "r142": { "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" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r144": { "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" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "r150": { "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" }, "r151": { "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" }, "r152": { "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" }, "r153": { "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" }, "r154": { "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" }, "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(3)(a)(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(4))", "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(6)(b))", "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(6))", "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(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r160": { "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" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "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" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r169": { "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" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r180": { "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" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-6" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-12" }, "r187": { "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" }, "r188": { "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" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r220": { "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" }, "r221": { "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" }, "r222": { "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" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-1" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-2" }, "r225": { "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" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481569/310-20-50-1" }, "r227": { "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" }, "r228": { "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" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r231": { "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" }, "r232": { "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" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r234": { "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" }, "r235": { "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" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350-20/tableOfContent" }, "r237": { "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" }, "r238": { "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" }, "r239": { "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" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r242": { "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" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "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" }, "r256": { "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" }, "r257": { "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" }, "r258": { "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" }, "r259": { "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" }, "r260": { "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" }, "r261": { "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" }, "r262": { "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" }, "r263": { "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" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "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" }, "r270": { "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" }, "r271": { "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" }, "r272": { "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" }, "r273": { "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" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "r280": { "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" }, "r281": { "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" }, "r282": { "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" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "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" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r289": { "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" }, "r290": { "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" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r292": { "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" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15" }, "r304": { "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" }, "r305": { "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" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//715/tableOfContent" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r311": { "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" }, "r312": { "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" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r328": { "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" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r335": { "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" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "r340": { "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" }, "r341": { "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" }, "r342": { "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" }, "r343": { "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" }, "r344": { "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" }, "r345": { "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" }, "r346": { "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" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(1)", "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": "(f)(2)", "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": "(f)(2)(i)", "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": "(f)(2)(ii)", "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": "(f)(2)(iii)", "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": "(f)(2)(iv)", "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": "(f)(2)(v)", "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": "(h)(1)(i)", "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": "(h)(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": "(h)(2)(i)", "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": "(i)", "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": "(l)", "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": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r366": { "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" }, "r367": { "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" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.C.Q3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.1.Q5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.2.Q6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.3.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r372": { "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" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r374": { "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" }, "r375": { "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" }, "r376": { "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" }, "r377": { "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" }, "r378": { "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" }, "r379": { "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" }, "r380": { "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" }, "r381": { "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" }, "r382": { "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" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "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" }, "r390": { "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" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r398": { "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" }, "r399": { "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" }, "r400": { "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" }, "r401": { "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" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "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" }, "r406": { "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" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r408": { "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" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r412": { "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" }, "r413": { "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" }, "r414": { "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" }, "r415": { "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" }, "r416": { "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" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "r420": { "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" }, "r421": { "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" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r427": { "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" }, "r428": { "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" }, "r429": { "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" }, "r430": { "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" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r432": { "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" }, "r433": { "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" }, "r434": { "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" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r437": { "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" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r439": { "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" }, "r440": { "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" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r450": { "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" }, "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)(2))", "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)(22))", "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)(23)(a)(4))", "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)(25))", "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)(8)(a))", "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)(8)(b))", "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)(8))", "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": "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" }, "r459": { "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" }, "r460": { "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" }, "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(9))", "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": "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" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "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 F))", "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": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r469": { "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" }, "r470": { "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" }, "r471": { "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" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r473": { "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" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(1)", "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": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-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(d))", "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(h)(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))", "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": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r485": { "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" }, "r486": { "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" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-21" }, "r488": { "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" }, "r489": { "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" }, "r490": { "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" }, "r491": { "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" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r498": { "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" }, "r499": { "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" }, "r500": { "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" }, "r501": { "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" }, "r502": { "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" }, "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(2)(a))", "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(2)(b))", "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(3)(a))", "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(3)(b))", "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(3)(c))", "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(4))", "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(6)(b))", "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(6)(c))", "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(6)(d))", "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(6)(e))", "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(8))", "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(9)(b))", "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(9)(c))", "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(9)(d))", "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(9)(e))", "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": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r519": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "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" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "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" }, "r530": { "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" }, "r531": { "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" }, "r532": { "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" }, "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(7)(c)(2))", "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(7)(c)(3))", "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(7)(c)(5))", "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(7)(c)(6))", "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(7)(c)(7))", "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(9))", "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": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r540": { "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" }, "r541": { "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" }, "r542": { "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" }, "r543": { "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" }, "r544": { "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" }, "r545": { "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" }, "r546": { "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" }, "r547": { "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" }, "r548": { "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" }, "r549": { "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" }, "r550": { "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" }, "r551": { "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" }, "r552": { "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" }, "r553": { "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" }, "r554": { "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" }, "r555": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-8" }, "r557": { "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" }, "r558": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r559": { "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" }, "r560": { "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" }, "r561": { "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" }, "r562": { "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" }, "r563": { "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" }, "r564": { "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" }, "r565": { "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" }, "r566": { "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" }, "r567": { "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" }, "r568": { "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" }, "r569": { "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" }, "r570": { "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" }, "r571": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r572": { "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" }, "r573": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r574": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r575": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r576": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r577": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r578": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r579": { "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" }, "r580": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-18" }, "r581": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r582": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r583": { "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" }, "r584": { "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" }, "r585": { "role": "http://www.xbrl.org/2003/role/exampleRef", "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" }, "r586": { "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" }, "r587": { "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" }, "r588": { "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" }, "r589": { "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" }, "r590": { "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" }, "r591": { "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" }, "r592": { "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" }, "r593": { "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" }, "r594": { "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" }, "r595": { "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" }, "r596": { "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" }, "r597": { "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" }, "r598": { "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" }, "r599": { "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" }, "r600": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12" }, "r601": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r602": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r603": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-23" }, "r604": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "g" }, "r606": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12, 13, 15d" }, "r607": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "13e", "Subsection": "4c" }, "r608": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "14d", "Subsection": "2b" }, "r609": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "15", "Subsection": "d" }, "r610": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Section": "14a", "Number": "240", "Subsection": "12" }, "r611": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r612": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r613": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r614": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r615": { "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" }, "r616": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r617": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r618": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r619": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "425" }, "r620": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "7A", "Section": "B", "Subsection": "2" }, "r621": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "SubTopic": "740", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480887/718-740-35-2" }, "r622": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r623": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r624": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r625": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r626": { "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" }, "r627": { "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" }, "r628": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r629": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r630": { "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" }, "r631": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r632": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r633": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r634": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "SubTopic": "10", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r635": { "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" }, "r636": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "205", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483504/205-10-50-1" }, "r637": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r638": { "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" }, "r639": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r640": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r641": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r642": { "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" }, "r643": { "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" }, "r644": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r645": { "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" }, "r646": { "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" }, "r647": { "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" }, "r648": { "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" }, "r649": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r650": { "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" }, "r651": { "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" }, "r652": { "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" }, "r653": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-12" }, "r654": { "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" }, "r655": { "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" }, "r656": { "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" }, "r657": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r658": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r659": { "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" }, "r660": { "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" }, "r661": { "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" }, "r662": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r663": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1" }, "r664": { "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" }, "r665": { "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" }, "r666": { "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" }, "r667": { "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" }, "r668": { "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" }, "r669": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r670": { "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" }, "r671": { "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" }, "r672": { "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" }, "r673": { "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" }, "r674": { "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" }, "r675": { "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" }, "r676": { "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" }, "r677": { "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" }, "r678": { "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" }, "r679": { "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" }, "r680": { "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" }, "r681": { "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" }, "r682": { "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" }, "r683": { "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" }, "r684": { "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" }, "r685": { "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" }, "r686": { "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" }, "r687": { "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" }, "r688": { "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" }, "r689": { "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" }, "r690": { "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" }, "r691": { "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" }, "r692": { "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" }, "r693": { "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" }, "r694": { "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" }, "r695": { "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" }, "r696": { "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" }, "r697": { "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" }, "r698": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r699": { "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" }, "r700": { "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" }, "r701": { "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" }, "r702": { "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" }, "r703": { "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" }, "r704": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r705": { "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" }, "r706": { "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" }, "r707": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r708": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r709": { "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" }, "r710": { "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" }, "r711": { "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" }, "r712": { "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" }, "r713": { "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" }, "r714": { "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" }, "r715": { "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" }, "r716": { "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" }, "r717": { "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" }, "r718": { "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" }, "r719": { "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" }, "r720": { "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" }, "r721": { "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" }, "r722": { "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" }, "r723": { "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 88 0001999371-24-004537-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001999371-24-004537-xbrl.zip M4$L#!!0 ( -*BA5B?SZ_47_\! !F1$0 2 8W!I+3$P:U\Q,C,Q,C,N M:'1M[+UK=^)&LS#Z7;]"KW>>O6?6 @_@^TPR9V&,9TA\"W@RR7OV6;,$:HPR M0B*Z&)-??ZJJ+VH)8>,!;+"U=YX$@]1=W5WWJJ[Z^?^Y&[KF+0M"Q_=^^9_J M=N5_3.;U?-OQ;G[YGWJGT6K]S__ST?AY$,%C\*@7_K(UB*+1^W?OQN/Q]GAG MVP]NWE6/CH[>W>$S6_RA]W>YS]4JE>J[/\_/.KT!&UIEQPLCR^LQ]9+K>-]G MCX^_JD>[@>ND'L5OY"0[[Z:&AE_MY 7]X?UW_,?4HU'NHWO\T4@^ZH3^;JUZ MC_*?3QY]%P66%_;]8&A%<(0XTEZY4BO7 M]K5!RB'KI0:"O[=O_-L'QSDL[U3E.%.'DUXI_MRU0K7C-LMLMYP3?H W:COR MP8#U9PZ[_PY^E0_&8?G&LD;JX;X5=NE!\4-J5/@N\%T6YCY-OZ0>MZ.@'$U& M+,P'!7Y^AS_C.[5R94?;EIX?>U$PR5^K^#$U51A$TT#!EZF'>K>Q>J@W=W_+_&ST,662:^7V;_Q,[M+UL- MWXN8%Y6O815;9H__].LRUWYL=%GTP+ZPA M>V_>V7G\IW;RJ5Z_@O\@8&:Y/.?+._5OL,)OVLJ^R97- M/\ANG5ZJ5"O5'WA[[^@; U0$T.&?^I!Y-OPO.G6MFV]]RPW9(T:J:B,UXB# M<9RP9[E_,2MH>O:)%;%O_.>S3N7NW*G\>_[[+[\\8H8=;883OQ=P%Y]YI!7+'!\FP]Z^M6VV<@/HF]1$#]F7_=RQKM&-N4@ MBQ)C/O:P*MJ@30_H9=* 80/+;7DVN_N-3;Y5X/\.#X]V=@_G'_:@\>W/DS\1 MH6'8:N7[MV]50LAM^/41H]2_=2Z_77'@_K?A.@!9^+^-JY99!S+Y7SCAW?_] MI[8+/U;V#G/@9Y/OE6_"9'%@8"O'C%$[5MG M8 4,V2K+ !>37\XMLT\9-SX%SQU 8@=.#W.E.^B-LK#T\ ?(D&7 M*U7X)_+I<[5&#=<$\S'F?8EM;IF/_LN76$.%[ MSW%!^X)#0L7K(9C.8*-O++[9(0MN?P2,:N5P43 N6-0"VW#(SOPPW,H[NQH_ M._I$4'P3[WYK^,.A[W4BO_?]G V[+,C"!XK<<\)7MVW"9B!GR[%;7L,:.9'E MSH*UNBBLM!.M,(R9?1('8&US+O*'Y<8,#CD"7(V834_5QU9@?PI6OJ;]35A3 M&PP;,%GMIA5X,$,X:S$'BRZF;O\=AQ&1_[4_8R=)14&CUP;T'C$O%#0*)A?P M1N @P:W38WP7@(?X-QZ-0ANR=/K9K;VP)<]YU+N[J^<;.PK(G4>?R]ZSPO^]%,\6)@*GVXUS\*'2]VQ@AZS%FASBALHA.'0_^ M SMRV76%/3*?2)\"[L=Q&X$#B].:$")<]E< W.*H>B7 6PJ>S@'P#Q]U%N#+ M_@GK1BCJ<$L;?AC-J9]/P_3#U@2>,%=W8->0U<*IN@[M#Y*$L( 3;O"C%'*X M]\,&,8)XPOH,C' ;@*P#H49AO=>#U^PS=F.YCS',#X\69O13L, '^5WS#M&+ MB6T+@;L0H)8;UEW7'Q/I^,&)'W>C?NS";QBR"G,7(!7T,(B^H=X#N$UN*'44 M^8SR:'=A"3ZUP)9''(JC@Q7T!K"N$W;+7'\TC1.+@G^TBO-IP-].U+""8-+W M U0;E[OI>POQ_UG8#8PB\-U\_/Y12!?7:7\,_S5NLMRM_W&-=<;63Y4*ZD,KP>&[]HW >+A^;21U<*I!'"VL,&I#R MO!T67@6@FCF2YI9)5=5*Y8?9< 8!-'C;SLT@NNQ_ :T;=WJI\-:6CP@:Y!?+ MAG9A(9=O0=<#T,YO"(;C2?*(4#C)77(YP@?#"]\#1@SJ\D6,$%[V>0#XWE4F M%EO*"_,%%A*V.U]FK#6%_7*69UON5X9(R.SZ+0NL&_8)!H@PG'IJ.4&.>V$Y M.Y"14%?/O@MS'/JTF?Z()5=3[./9E_MCA[[8#E2K\Q_Z.SU1 ?W8^$/?88%):V"YR9&-UF_I M2'+V9379N[S9Q%PC^1ZZM.MW3KCU43XV MM>:?W^5.H0'W+A>Z!2FINFHVDSWL^V/F+__@[UW_:T&"&8'-EW_Z^0M_X<>^ M.;+S*3?GX<2ZET\.ZR(%5Z=/SCCL0@JNGQ1\,%+U&\?,19&Y&QR4A4B)QG$SGKCS:/2:M^^1BS/H)JO:)R"]Z*>?F(LYZ" M:L.0J!!4ZR&HU@MM9J2?%.+I^I"_&RIN+E.9&@$ _KX#I;W;'/U ]Z M<1CYPV^?_%L6>+B43MS%%S%-(T:,FQH.=8 M[HO'EYE++?C+7/RE0)6"J\SK0:7"F/S>YB4P:*P4N[FX(LU?6 565NG+Q5WV M/_F^G4$?]?"L'2BXS7S1X@*%U@^%-I<+U:,KW_&BEO>Z\2AG&PI^]&A^5"#3 MVB'3AG FH4J?6K=^@)6TIRI2;" :H2K=B(>Q:T7.+6OV^ZP7\1*1E_VZ[=.= M_T2UGKGT@@_-9845J+-&J+-97.>+UW^]R'//X@O.,Q?G*=!GS=!GO;C/C&2) MC=D%H\W&&JUH,6Q2-+ER+6Q!DRSM>(+-Y=(Z\SU[\.*2)V9< M-RO08!W18.6W#A_!#:A8W[GC.<-X6"#&W(@QKZAK8W$V/BW^F=KHE\J$'HU] MUEV!?4^"??I&OQ;LPZS*.&+!:Q5_,];_4H\_Y[YU?7O9KH?CBL%\1 M95/C#VQOU1J. O^6MTU^92=_SQZ\%IHOT& =T6#EI;9FYZ'-W+G-1PK5JN%X M0MU9&JX59FZ-/K#Z(OHZ7_Y9@43KB$3K&(.M'M($%1FX_\JHX>8YBRS7C8.; M2AX[%0;PR7A.MG+_EYI(\\DI4I(=7]:?>WH]V0(%]RSZF4Y>',SJ3UY0^S4+AMA&^66>-!)W>H4O[E@3 M36"W7*VJ3S5YP K)<0] %*:W0SYU;'G4"HO9+Q<1[M^)I00OE3T#LN:R/PN0 M[&8_ISJ"2/-(=830:Z4Z;3XFOU[,+3#U)6*J9JO!N;0!M@*#GQ^#'S/U'U;@ M8(XOGEW6 $T=:4$WRZ0;O8()[O&E5U#.QE..JM&2.M&"<%9).-=COR"<%T4X MZD0+PEDIX0P"5LB<%T8ZR9D6Q+-*XCGUXZ"@G1=%.\F1%J23SO6H'):K1XOY M8E_699.7YYV=9^HUO=4B\'.E80F8X'!9I% @_CHA_@I9.2+-8UFYCLFKT(*J MU7+E2'ZJ5@I,+C#Y84PFI'ELO@^BUS-@\NO%W )3UQ)3=RAKHJH^[10\M^"Y MJW.$)3X.U>^W8.>%%YWZ*5&O9:3GK?F!J&<^H1UHQ:874&, MFZBY5M)G_$SV888N5G$G:NET\6*#6@5=*+IXEC#7IM/%RXU9%9214,;S1+$V MG#9>;DBJ( U%&L\3I-ITRG!N"Z'QXBE#'?*+HXR9GJ2%:*2@A36CA=?A3%H- M,JM> 4X0$I.P7/=EW!1_D:B^#+:??]0%E3T!E748S&479/8:R&S&61=TEE<6 MZZ%;!L,\? M3-@,A'T9\8.7@;)KX.5_7J0M4'!C#_BAQG/Y]Q]>2JN7-;E\\%P-7=:_IN)N MN5(K5X_DI]J"B=Y*NG;B;LC^B6&SFK/S6PP62(=SE*^=/3K@OPEM2 M$.ZZ$^YSNX)>(.&^#*]10;IK3[K/[A)[><1;I,46M/LJ,G-?(.D6>;L%Z;Z& MU.&71[H=YZZ@W()R5TVY"LT*PET6X3+XI2#=@G173KH)HKU4XLTV12RNZ;P$ M*MRT5)49+5L+9"R0<18RKKQQ+);<*M<.U*?#HGS;YF28K"J]0R#%H]([!/JL M+I-J[@R_3<;)#4&0]4JUR\C5 BU>J*R:/\=WOAQ+J8"]H(YISVCGKD$"Y_IW M4%M+QIFUCE\0/:PE1JS1Q9?Y..4F8\#+XX@;BHD9]>SE8-@ZMPI?H5*6.5:\ M5M7I,0\8KG\5L%O'CT-WTF8C/]AH%9RN.S'8M8@ESG/\\J'%OH8#US?&_AL( M>[-+D,P\ZWO6^5*/.:L4MN")P+/<-D:+8M9AP:W38ZUV9W./6S+PEM?SA^S: MNJO'T< / .X+:YA1%Q]8_DL5VEDLZ" 9@,IRYO%-\M>!!0\L M_[5@P0/$H)Z#S?R+64&M4CU\'?BQ*)=X##P 25ZIAZD]?W%(.=,;6*!G@9[W MHN<:N^)6@-0'!5(_.5(?%$C]&*0^@=,-(Z?7\&,O"B:O V%S%UU@S'(5SH+Y MO0KFMQX*9V$5KXM5O,:L[4$L:OAA=-GO6"X+7PK>=*37%%$#,2*-.%,K+E E MT^Y;>3,&=@U4269W(K]'B3IAN_-E\Q&I M/K8">_HFX+WK?7&!Y@=%5W'\SW3\:RR,9E[H+%#EN3G%,SI@KEC0]X.AY?58 M9V %4KHF&@I^>6R%S&[X0Y2_7&[3W@;PUH"]B%JN,Y!EQNXLU3GX![JTO9N, M*C3_MA?L[:DP_444/]T\3'^68J O$-,+K'UEB#+KDE*!'B],R^,'73E*WQ/1 M5M_\)P:(KUS+P\ Y7[_60TG%ZTDMK-X#!D.E8*5/+&!(/;^409"9=4&0H$&3TOAE2=P]^Y*UT!E MO[Q3*8[V*5T NX]W = IK=(%4*#!T\KPU($^L')V7\1D7AW+IXQ\ BEV+&CXL%$>9<#Z M7ML)!5U(Q4\^]B*2<*;6>CPY9EYO,+2"[YFD@;R]6ZJS, >6:5Q^X)"6 A 6 M43JW_O8#.5F8J,93IU](TF>@O1>1%E30W@_27I&=]*RT]T+:&A?4]X/4]SS= MA@OZ$X^]D,[$!?G]&/D]3\/@]:>^>VY\%E9?07POQ>I;KZNP3TM[A=7WFFGO M^:V^5TU[A=7WNJEO#:R^UTQ_A=7WJLEO#:R^M:2^V3Z7>J^')4L!AWK,N<6V M6H7A]PCZF[5]KY<$G]_V6TN_R]-1X"LS_PH*7#\+\+53X&LS @L:7$<[\)53 MX6LS!0LB7$-K<"UI<+8OIK &"Q)<*@D^OS6XEOZ8IZ/ PAI\Y13X_-;@:Z? MPAI\]32X!M;@*Z?"PAI\[42X!M;@6M+@M$=&DHZ/I]6+ZF'(HFQ-XL(0S*,^ MPK><;7N]5/?\!N!:NF">A.A>B>U7$-WZV7ROF.A>B[E7D-TZFGFOE_!>BX57 MT-T:6G9K27;3WI7"LBNH[N58=FOI3GD2HBLLNU=*=,]OV;UBHBLLNU=+=FM@ MV;U>PBLLN]=*=VM@V:TEV8&YN5>N[JM/!\]#&,LPFW$=CS2;:<6KV]PJ37 D M/]4J&[JY8AV/VERQXB5M;NPY?&>_=$ZRFSAD5A@'[*,3^KNUZL%[>$0.)7]* MC8]CY0_.B_7.&E\LGI[YP0D M*O\26SG%@YN:D/QS8L8^)<5^=-<3CU.._-%[LUH; M)=]T_0BDV7MS9Q1MI<;H^@$ S-\X=JW>=Q->,T/?=>P/IOA1OLQ_KR:_]X'@ MRJ'S+WN/WWXPQXX=#>!SI?*?K8___5_5_2L9C/6TVDVOK1;UZUFQZA?G)C-/QN?ZQ>?FF;C\OR\U>FT M+B_N7>0Z+[$FEOC5"@>.=Q/Y7LDXV6YLF[7*WNX1+FNSEK)AVW\HMO_4#X8& M'Q'%R9U]]^VHJW;_BI"O]\^]>J.XU) M_[!Q-G)A.! 7GN^10'5ZIE!>VJR?C5E&?A*IV3(]"[4ZF/"]/M\6P>/7;:OS:LO[7UI C>Y!I9A5G?,R[99W7MCOS4O3\T-8B&TP.O/32-AC E3K#>N<3E5 ML *A)#[!?1M1 -F]IVP9[GFA%F!"08(LTW8R2S=-S)T?T4F29/;*_D,X'/_ MU\'%SJ?#P]/^#S, :A 2(;%'[VV8:0CO#6QK@L R+X]!I !+63T'9>97DP[E\6,FL",)MG-I_#D1R*E6OE?IX"J5ZO;?HYLMTW*!&+?>K>66I;28FM234X/1;#;K^=S# M^MZ,@=^!H>NQK2F.MY_"ZS:[<<(HL+P(>Q+FX[9M>[5S[^I3L\^6AMOI>=/X M?0@T>M4RZLWV9>>Z_:5Q_:7=[)3,UD5C^R&$3[C;8NBY 6K!F^:=U8L,W%C3 M[YN!VE#3"LUPQ'KH!;1-!\X^"LW>P I@OK>(.>MM:&R 79$/8H2WHV!HUX5O M>V#@_;)5V:*_1Y9MR[\?O0S-'Z.<.<#97&L4 C^0G[8^ @"!'/V6!9$#RH]< M;^2/A,?LY\B6#XF!]W#&DDWNM$H HU\'I:,&GX]@SN M=1C]:P^/=EO7?^XN0UTKAZR'/O"(C0+_%JDOK:_- 6>:VQUM?82=I,/YRP^^ MS\_AWD7VAI[I8>I,KZV[EHA:].C=^_0L-O[G* KW=G_?=Y8FBV8 D#JFG0HH M7=5R;:]6V:E6'G=(\*_@\>2YVN-[0TAI^H'I@ZT4F'_'@1/:3@^73Y#X_?OP M;+7 <>[ZIK7=WNYLF\WAR/4G&+I=[RUU=)JGG0UN+,_YE_Y^^WR[F<9M\\+? M?INSE>](?'W<"$F[9B NP@J;*598M^V A:'XSQF\4O%IY\\3;[0\ M:Q>VO/TLA+4_9T)6^E#?AX&5S[8R]_G8Y] MWJV&M>')[C*_;?9EWNSI!>ZB0#_ !)"Y9?DZ,A\A*\5Z#; $1P&,&LV642?:K]^^EP_^'YL+8$L]/G2A+ ' MVN#^3O7M#$*8"I6=B!6<^:!O70U\[U[':#.*:S=__3D\.ZXN8179.=,KV=_Z MN'>X7P8=_3$:^CKBV9O$/_;?_W58JQY\"(V(N6R$2Q<>ZY()=.[&Z%DP+3A9 MV$Z;O=T<(EIG$#O . ,G3?PI6>.!PX<4D+G M.4M<1W]#3C1;.M8$^YI4:UW"QADQRZ.C[V?MOXY_K]TL031GYTR+Y@,>=X7= M[D1^[WN)MNJG[4JE:HZLP+RUW)C-$[-^1O\=\'UV/VY9/W MN3M8PA:G)DSO+\;,_OBR*3O8S.!I4U#C[!BDM]<8_OG[7:=_<;@T.QEYP+2) MG =3>J_18_]7IVG6:7K+FW/7"T?;TVME-U-:V04JT!NIFBT7Q+_C,'+ZDP5@ M;'DV^I29T9V8O0'K?R)T\N.74\Q.VG"M OOD%_L5 ']K__Z^A@=_=#^JOD MWS-34KE#ZROLWV^X?1VQ>RW:O'QNN>]/?FNV;BO')[VE>=1F )!BC;L58(W^ M#'XXM1?[:WY^FX!CCR%"SX_@FW]B![DF,$O*?@O8R ^B\!XNNH.QK/17E$>; M,-872Y-9DJRG2/(/WXV]R HH42\(\TGQ].OPNG5Z%]>61HB9:=,$6"T(<"T( M<#Q@%%?/4.&;JG#0#4#F(?W9IN6ZB@AUZNPR\0 ,G$.0*1K4%".IMB)=XL^8 M&V[:\"L8\?CH*& ]1B9]M692VG%HOH'Q0#DVPQCLX'#@8Z:8R2]GPCM6E%W% MV JG&0F^;(B%O 69[MGFFYJVVB[HV?!0]V]8"[Y$D\&;"(H8#/.<0X*$(+7" MR#RJF+8U"3>(P]R?P-2(@P!6V:9]0ELNLJ)X!NMP=AMGO9OO]=;^,@( ]\V? MYB$U8I/S,Y%IOGGAIS0;P677^]PV ;<>QVR0ZH#@ADX4 9TR%P@O\#WT6KD3 MD]VR8&*VT$ZQ>A0C/+$BRSSE.D&*#25C2"7!@!]T-;W-;F*7IY=TRM?F&]S+ M@P^UG=JVTN,=RD$=80[JHNS(>( =<7@5@V'AV^T'LONU;*9 *[ \SK5X/2#&P MD)X0.]'^]7*_!87=*^?^$ Z!AF&60+)QH^SH&L[V>B/)"XJPU0[_LTRG\%D^MLV3V[Q4.+*JR3U1N1^? M=PH1[IEE-Q,T"YR;03;2M="*Z\F>$PSS[OO* 9O_*':?YBBJ2\6T65&DY*Y? MT(!#N?[B40O[]5O_Z["RP#6LJ1 (34XHT!.3YR4,IJ!+JR6[Z'#($5,/ M)>"LY'1G8=7^/.>] (/+PZK'A8R7N.+.+ &7OUO5OW>67G #GPS)TI3^&Z ELE7="4X^=F!JF-;T %H?1=:M$Y(&X5E>S[%< MM!#PXB0^'$9@.%J!'9IXM\&Q\T/_9G7GC?4VUU8T"S_DL_DA1:Q#*"68=8=> M "N*&-Y6P7.#(\2+ZC";=4.1 )GX;%IA"#(:OY+'ROI]1MXR3]QYP#<==*)Y M@#/(UP/?-7W0N#142O0A2@Q4"+-;V=6R=SM6T+5@V/+EGL'=7S2#^K)?IVZUDV^R*M6/^U'S/_WTK97*O)FPY66> =S M2[RUQ/6-H,>^$299,H!IYOWY468V87TFW]=).B$ENF'&HW5\#$/W==*M!)[+ MPU\3,;Z^2Z$_^*KG!X& !-Y'<10$&/7SD5)N'3\.W8DDE+Q9IXGE)%/'Z=3Q M.M$P:N*X#37;;*+9"[__^<=%*]JO_WBL;0[;XV'PTK1S.+B!^KZ)1*/!Z/H7:0*ZYD] ABG&H'#K(KW+70GT' M-2+FA<1 C8!:+?/ OYI=%ZA*,&;O]P6A'EH+0#N[18)4( @=3&<((E*W6]FN M5D[*5> *VU.):)5\VFHGRVZ+&>IBC;/I;!P>U__Y_.O);U9WI<+I<;"FB>ZH M$%CKI4!2]"P<,->5=HKY)B=G%-!C1ICH[0;ECRR8-9H.;'=PT^YUD+BC@]/@ M[-<]/UZJTVV&@T2')T5T>T7FZ!/#6"?#Z=?88^9.A1>---\@X;B8=]45GE', MOKI' @W]D.0+\%70V,BP9^@0 &W4]VQ9@O.?F!OSB4(@7A\PW7&+ZO*P9MYW@;P(ZM%S,* %)B+^G[FC@%^FU^GWCIYWM MPZ.W)N D"5L*M_=1707@PFF *-'DIY_YH6;(;B=%=E=D"YZZOA5]?AL+&"BER!+AV]TN[NWNE_5U5(D&" MF)&#&QB$7S<8.3'6 7==;MI\W%7%1N"(=TO3/A5[R@9*XR"_;D>W[7C3B$E [@9,Q_(MS[#^,F_=-DHNLN^4*_C,G MLK8N3G/157312&%L;>MCM58ZW-LM[=8.9V&LR1M6(&WK7*64O8I8,OUD(4O& M[[5&Y6440Y*Z=V@D9?"X.0.'QP(&QL_[X@;6$KC&%?HSP0HUA*AJ7+7,.@M M)@=Q+XH#?!2.8-N\"OR[B=F1)E JO9Q\\)E[5NB;5?IS4B^9GG70>\2SLDVK M#YM,Z9A499L,*W[2E/!9][P8Q'];^7RQ]+Z)5>WYK #@2&2#SQ#]R#'D,.>, MD5L5%DL,9^"[-IB\!IK@3@;1 HEHZ!7VS2O0/\Q6JP6B/F!^_VD$UI-$@9;5 M:&8GI\^,:%AQ;Z,9K9%,;J,9K1&-'N1=6J.9E1S9$GF&D3X=7,('>/R?F+B@ M6?U@7HZ(AM_CL-(]BXND\.?TWL_LXZ.?YG[.:>[384YWZ-$[>8S$WD]-/@*X MR]V 6=_+70:B&T"WW#&P@%7,JQ_\RLY\$RK5@RR=50C;Q.8XG2_'G=9)J]YN M-3MI!\>:"]>?DUX5ZP_IZ67[W$"AM6E;G&J+LCE@;]HV WX8UY^;YFFKTZB? MF7\UZVVS>7'2/#%/FHWF^7&SK;IR;,BB-L/,N*X?GS6-RU.S<7EQW;RX[FSD MOJ[!=8 DM0^^1]A^V=I14^9DK<[212US$*!U_E]ZBPT+[.H%M@R(ZVN]?5(^ MN[S\K77QR:0^=^?\M,4V6OGYB5G N3ZRY!/=R&8AU\XBH;R(@4V__5ARU $^./C/ MBH [_M)I730[/\PL!(#[RZUDMPJ^\<2H]CC\VET8O^H_@F K@JC=ZOQFGM8; MUY?M]9!"U=KK0J>]A='I>+G8M A 7R[ J+\\^P/L!5!N3D^IT^W:*#C8]_TU MH=;^PJC56"YJ+0)0XR\P/D7?T+\*='H&=#I8%)UJ2Y9[BP!TU;Z\:K:Q ^U: MX%*M\KIPZ7!17-I9,BXM M!9\U/]S 2,:C2;)V#8%RCU'"AUM"A*[2X9I18! MZ!PL/;-3/VU>_V6>M#J-L\L.QDM>*F+-V,+J(ODEW%%4>(H*Y@"(M(C;EIC# MWG*9PT( G=?;OS6OS=/+MMEN?FIUKMOUBVN19M(AD^ORPFS^_@44Y1(\<5:_ M)GOLLO';Y\NSDV;;/*]?7X,R37'75J?S!;ZZ^M)N?*YWFAWS\E2\:PIMN]"1 MG@=G%_&2$\[N+QEG%P'H_P7IU6S_T3SY_]8#EZJO"Y<6=HH?+!F7%@'HO'Y1 M_T2!,\7T4$?ZTNFT@/$A4X,'SO[JM(B9G;8NZA>-%FCHCH'2_:H+P31[U] &K>N 9_^:!*BP1=G\F]-ES?K MQY=?KDTAS-$/G]GL9T7!O=>%@@M[X0^7C(&+ )1PO"3#0.3875V=T=_U-MB5 M]>MZ@6S/@&P+^^6/EHQL"_GE/]&.!E<^ E0N[]X\>S4WNQ\I% ,(TNO;E&6=[Y)D] M61__V2M#K(5]_4?'2^9WBT!T>?VYV09NAYG49#.L!T[MORZ<6MC9?[3:I>?VY?@W\K/D'B%= PLY5L[%& M=NORD7#&=M>6$!@H(@,%)P%,6C@R4*TL5SHM!-%)J]VD7+Z2V?RSV?A"3H?+ MT]-60_K[&Y?MJ\LVF(7FI\L_FFU4OM=$WWYEB+>P>[_Z0XG**X(HP;;&Y?E5 M\Z)3Z$;/A5B+)\ O.5%K(8ADRI]Y^?4">-CGUA5Z[(&=7==;%^9Q\Z()S W= M!_QWXG%)@$!X^F>&0 L$?08$73R#?LG97PM!)%&1L QU<4#13@KO,#[?J7-% MO22\9%Q,@PI_TKS""Y:%%'X>7%P\_7[):6,+0735;ETT6E? #1.GJWG:; KW M?[/]!RB"+Y;IS=K11=S;W%C\H[ 5"V91J2WL(J\N.8UL(8B:?WYN';=$:# G M9FAV&I^;)U_.7B[#6&MD6]AM7EUR_M="$*&[G%?+ZGPY/Z^WU^,*#Q;7>XDX M]:1 W(,Q"[GI02O^T[R^S&--Z\&13LMYB5JR(8^1K1/%RTI5IHI*53*%F^XI ML57++;'UP?P#ZSS"ST]1;.NQY4?$LG'@Z=V?W@R:3-L"N?@/YO5D!&NL!U;7 MZ7TP+ZPAXQMTX>.R:ZE26_(M*AQ7E );R12+U+M)RKWFU%?A-"6JI1AYU5*Z M'Q7AK>,"-Z'>YO7 "8U[BEIBO5O+\4(L;CNV KOL^OYWT;I*]H<0)32QWN60 M69XH:(E_7@7.+39@T>IPGL%_;BPJ"=A&6AL:V(\(GJ\>'>UMFU\'S,.F6Z+5 MROT5-[&F)SS6C[$PJ&C*$F*MS#A\3 U0XXUHW=QI-D2;9E'7>^QC;RX_,$># MP IA!/%@E[D.NV7BX9+\&MLU>7;VVY%K>=GOQH[KRN\,[3O3=;XS%XM]AK$; M3;V%?H=VQL -*?W(,JVV;+,[$&%)Y_B5J!)#\:HL](GXFV.?[? MHB5)"8=D/2N,Z#!\:J@ QXB5D &-_[54XV^!"G V'G^VYP2]>(AECWN(];R1 M#P*%,AE:HG*K]ZWB.L!"YE. ?@"-HR[B2VL].FC$\$2"U(;)N&]=8V=7$0N]=')U #&@4VB@Q MN@UK=?V1I$0X\BX3K5WHL8%UR^ KAMW)U)$#G0&M6A,"&C81" R0SNH-$*L) M\Q%I82?H?,7N!@+YQ&[;3MAS?4&I?AS[.-3Y[R)[6^\-/LSM#972FU<-SQN1LV2E \OS&Q)_T(K='( M!0(#L\> TRR98X5R,":Q"\L9FI9IQ]%$<'CL>2FPB/#W'MBI,'<*J,P""#.I M(9L!'"4DU3\2HJ!D1**BL.H:*OHU]!L+,7 * M84%4B[4 MZ?2+9*V:]AHS8 4>@'T?@HE0Y]"#!68MB\:HQG=!JG#-U;JC0KM\!:7BM,$N_Z%V(=H RK7<+.T* Q.P!4(L*S,.;MHP>R0S\$@PY' M=@6;/D@Q(S81A,>XO/C!:24&*<,(*)JW%3*QM[D5#LP^BC.Y?X"(+MB)0R#E M09BS@P3@K,T"10Z,^2$W*Q%_Q,XAJ< I@P$+_Y4^ C@EH#?+<4-LQPM*5=() M-!G7LI$?#+F>!THH+"-<" _S1;)$/D,AW[W>J>W-;\4B:7JH&I@3>F$4M^=WM]L7W,T!5V+6N&HQCD/LL]9AZ?8I_$(]DE?X>(4 MBQ'^#?2Q2%M#+M-4RX3UG4]W=Y^RX5MRO0U?Z^-^JK"LK=:D=YH6+7Y,<:UN M#H^H,LXLW0-A=6$Z@]LOIC7D]#I[,'08<'_#F''W$7F)Q'LD*WSZBILM>&+T MH^SLB\)8XS2\)1.?QN#3A&FV#%SE]YC:*;H3,^>)W[=?M%KZ9#!^,(5:]U^5 MRLY.H[&BV$U-:=J8-66TGD@97.+J[F]JH#/2ZTC!G@J53T<;=J293 M/T?!O3%Y0XN&BQXZ7WEOLJK4B--E1:*+*K6MX@H%T_-\" M,R>%TM/C&A2ASPO0;Q ZKCO,L/^?F(<.J9=!_NLF-*B)5DY?1#THX9#QY&,4 MP!^CMH9N4<=VT++\REQZYART:]>-@YN)Z*LH8Z%?SULR%DHRG[2L'JCY*MQD M-$1_0A[+FSD5J 0PF/D&.[2@[Q(&F*@XI.SOJ.*3J-')WQ+%3@]=QJ&*6(+F MH$*C"EIJK0Y;%F,L!G8F0 CD/EDNJ93#KNOP>&#$;GB+Q7 2 A]""P)6^]V) M\#OL_@Q&B@QBD/,9E$4XO!X^9@@]5E@J%IX';!)7)M&6\\ RE!M:_V]K./IP MHL#DG:+#;?.2]"7?!OAX/.R&$XX[X8%P[")C>6QV] ?83P.I!7NLM@9 MM0D\^!10WVO8)0(:R6+YZ#"Z*NI,GT M7[8[VVI?3M@(5%UIT)QDD.3D4B%(25L^C0VCF'4G0+6XE[SQI5,_56LSIG!) M8A!N@?2:@#8QH%[!+"#K(XVW"IU%(&&28*H6O,=]HA D)R:@\A$+1.P$K$ 5 MVTEV#[&3>7!@C.%G7)X/I#?4K,L2/X8)1F4 3OT')$AZ"T$<6F1ZD/L#S$' M>8Y;H $-K-A5^'C>ODSPD06W#AB"A1]]:;*'[&6R9'=WR)E&7E,,HP4.9=VA MN:E1"6=U$8,S'_EDUS-T%,!)A@ZF';#>P.,!>APBKXXY%"!$QMZ^-X/-X&&P>YZ38EZ&J)?R@V3]H^4 MZ 'E(4:LJ=O=?^-]5:ZX;0\.Y5CIU+[=G9+NO/IC:;EZ0\GLL\2_B1Z@\-* M,M8/F:&VD,3XK>6X:,F5S'[ R%>'F6$WV.^>4[8\4Y@_].$[2CS!3!0+Y=8( MJ9MG+8@4 TQ;4.H2SZ$A>L7,I<31J=(+FPWNZ49.P;/.^NEI16Y8JI\W,AV1 MR#;&7!H>^.29!IY$X2C"_$03P$2)V"7/>-\!7 ?R_14T2C0KJ]42,);#2DFJ MM9;9A[E(#RF1N>H3_5U)=;B5,M92QBYH-)+U&&,KS&BMTJ;2CF>2K1+ AZ MSJWC)C,+.U'3\KD67S"*A6%L>09N;?7H2!Y4E_4L#"&9H[@+1C<:;(%E"_\! M23' <)F AEX9#Q\';)#>CZP71T=,W3WREB>8R;B<3.ZF&,Q-X(]+W+:#PP^= M?YG,C\<9NW'HH$*ZG<4^A9TAF4B/C>0,2%8>#[,$ @W1)I$GP=."M:Q3>-9YM]^ET>. M;2 (I)81_ $02+ EX6'@N0]B/>)L!A2?F+OU>? OL,=^\%THW(F7 2SG@FH6 MAO'2 [5Q%/$<@3U,$:A42LD)4;9!R+,\7!"[<'H^1Y4ZG+Z#6?"=R.]]3W3+ M-Q[@UG?X%VET%W]UFNI1X>1!UBGE2N0;?1^0"4>UT:X*83E2^9;8; Y]L+HH M-34.PA@S'((4KBI:(5\(+.$@E79CC@EF5$.'UM]^H-$6>@L3R]@&RF!@6R!] M +TB^L&/EH<7*PI<6W*BWST7*7>*.Y.P[)WBSN3KH0W07FJ5ZJ'&>JV>2.&? MC@EQ903O",+ANOX8LY7Q,H?P:'5CTHE!;;T1EK*#J3>1A1)VZ,?4'"UF1V;(?6^V XA*2?]Q%^\P>?2[D_OB5]O P,>^"$LH.8 .'7'9R+)QO+[51992%9N#[TD?$78=,&1*W**U"KG0 7DJ4I+&_ MX^4_[GPR&)"6/V$JZL9=X)I>G9B4])N*+Y*:'+MN6<1+4-+%/. S8!.9%%L@ M["K<3=)30>9-1\2K"N?3BKS^/,ICLQ"&+*4CDUK(%RSJV''MDGG>OE0QQ-)4 M.$HE#9#U*!Y+\7@I!T2P&P2@#:L(Z+)=WT?A&KY?[SU[PJPX+<4M1Q?.U7M_ M( ]NN[8W,Q6.?EIDKX[V#XX^9-+94E&DY5D[W8]SQZC2SJ8$X>3%'9SD2DDF MPNHV!=C?78K@.DH84L51841L[ZCAM 0/D>=,VOM<_]>) Z X7%4[MM%IV@I= M&*YD-HDP01%U612^N[ 0M_ Q\7WS#H **?'# 3*RX9>Z](&>^'X0S@\"0@\K MLH$2M4$Z$1OQE;7!^$MEL23/8#J,C9[?9#.F2@(M(^'P(2)8CL%<$/4&$C5/ MMWH_/[IKM ^(W/7!?#&O?#M+SRTMKP)(7]UDZ,C\KK8%F&]^]M%VTKE!:7Y0 MKBR/N69=R\L[9^CE(P,+J=@\\WODF.WH27H-R_-'$_/,Z4?:;\]"> 7A;"+A MG*&;87XT/9'^B&OT1QQS?X0N0\G(1Y?&22Q\OO0HY1B!'&$NR!4W'H)=.D2P M(\!P^/0X"77A]+XCL8#&."EPO<#U>7%=H.8C-+(1PYA'I'+%4YA^RIUV7[DB M>.K&#N"ZY8E*1FVPJGB)#>54?-,9^>2)>P0$S!J^+5"\0/$Y4;RIO++SXUA# MN&\_<_!W\L_3SED!;&B>F3J*:G,;L$0 DUT>3$?C )T!" M@=/EWC=M=/2SMY)["\FJIT!YG&1)?-8;9;NLQMVT3+]>,_$M&=*M)Q38Q#^T M"C_?JW+IU4/#XLXZP+3R"'8[/V$K=:&C-)7:HGL"39XRX%#6 +MCO9@,#963 MDH3WHT'@QS<#F9B-"::NJ$LH4F1\\A?B'6N\!V5UB8'=,N& U,OXF=R2$C]@ MO"V3CL8+4?$8A;HX5]FSQ@T#^) IF#;L$:45P)O\%,G_R#]&OLNPHB#) M9S'0IQ-ZX#J=BAOYOLN3U3VZ7R[6L@UZ:#3 E5.*JQ1.[L1(+E9ID<8!I=W8 MC(UXND[ZM@#L\:T5X*UQ,YJ,&"72\N(//!4VO0L\.$=^4RSWJ943X^\PVYBY M@XXWBB/3E@.I0PBH1@R= 0R&X9@BT+$,5SL5$< ==OJ8GA/IIRY3KG@")P@W MGH13[EIX$ECBN!FV+&A)77I=W!:YO( M['EF2&"-'-L0=Z#8MOD%M7.T!*=#S1(%I7('UNMQ)7Q&PC3D!1<*6O-;) /FCDAB#*T[9XA9LCDR6T;C"[)8/.^3 M^)R;I&;D*EIT*= )94X#SQZ>E:-@>2D!PADG+X?KW(I*WXC9GKQKPTK2<38+6@>E.G))4J CSD!2U MZ?:-2!F<;$\;7Z*HN4HJ%%$G+3*-]HL27Y,8H; WJP05?7(9A)/I(<(V*"OV2 MNLC+]9OAP$EN<@DL)6,6,P(S!YJX(F2Q![SC$(>BF%Z/;%HKA%D"+-6F%#U" M4!I+O]Q &;_\R;X327QWN?$S1;28U>C=1(-L>P?5KB+5'8+D+C8.2";$BMFJ MS"=IEJI\!"Z5DAY%(JZX92LM/44%;[!Q1I)A3/9?MYR4>L&??-*&\6H_,J/, MQ2O:""V2GH/SO!#.6-;KUNZ)3#]KBF86O(8H7DG" G]@,$;8WD/ H4Q/6J&1 M6F%!8(M[!#W*TS$BY.RJ6J3<\WM%$TH;/+$^6!185CX<@&'#2TXBVE%U2_Q; M#0)4)S%<^N@0R=$<06]$&2MFFM9-P"2: !GCQ=8R%:%5E% 29"#PGW3=A%>3 M%P+OP9;!+%1WU+11*2T1[^$S];.!MET/L^77^[ V :&HN#^9FLQ5)6VGV.&# MB(67_8GCQB,_OSZJPB_%WWA]5+!H!\Z(\RKL]L$G2/_(F30*G;L=IZT%O4NA['K\M1[>AD+<_ += [J0E#1;Q M[:(BQ M/Z"X [!+BNKP %54;'UE8R97DAP%<&T09E9XA%PHO/D.E@9"H1BY3 M:A&MG6;D!9^(QVKEA8&V89$]GJ [:[F@EXH2_G0E%:; ME8&;O*#>[_>*/V4 M9/?@=;S=XCH>+'NWN([WY)6N%U'BJ>G6T/J.,A=[CX%QG?"_@;A-W\4[0AA< M<-#/VHV)NR9>K!*R/^:%XJJ1<,WRM[CZBR$PCQK@).:W*!$U0>]6ZC:3*@$G MGA"WJ0%R$9)0%^/1[T8+X-C"=5>*Q:3#E/ C\KXAUIK/NG"-Q%T+A,@;B#ED MF,):AP4'7(D+#761<[()"]_9*L.6LBD(2Y>YP-L\2/)),3DT#5)>%6FXJZHP MRADC;'GT9)G=P+?LA%]@T*[$70'=B0&$&_=DD%KT=D#3G9QBYLUT$0\*#SE# M1[2Q2E\MI.@[F,5:33M2(GD)RFQ-RY "EJK+E&RIF5YC),*F"%C^\%/#3I

($'HOHI"5[ O#:H/J]-6+KSK^,"K@Q M1 8J8"'JQ FGL+BKJHJ 6F[)O'']+I81G56U,:_^)\]#2V(P.B2I!B&(0>FY MTRD>X0#L(AXB5:5PF"P3:R"5R3:>JO!&R,T$'>.I74F2 ""6(NK#DKDA+^=B MUG?:H61F'4I2*./==Y60P/T)"26+J+URZNI+5NZF- UJO7!T*O(2C[7Y-XM4 M%5>J$9LZ84*-WZ6JB.?M2ZW^:L;=+;W@&3\W-XN8[E1<;_+84"V@ M(8N'^EZA!JQ(#D:U-U/V83%%?6E?5)JN M3_\JMVG;9>D'[DVZ8>Y1R3\U'('%+R1(4YB9>RN32UZQE;O'&1 M_@#U A9=>N@N>AH_DIU+NG-1[R"*Z] F8S,P#@NF!8FB+_).>]CF M+7!Z*4U"M6+(<%;"2FQJGF5JJ$"5=5?SE$VB5V.^P/ZM@3\R/@7QD #$RZ<# MAE6%,,E.L*QCGU$WY#K/8^8L2&(.FCDBDU3/>TUT1\?K!Y9.W%0/COSEPAUM MR,**V2(2/+F.2$+GUEKT-LL^_1\J@&[<6P#=7'D!=..> NAZJP@:2VS"M+$I M<:%/AD"2@3ST;?K(&2>V:PY+O,2-8A6&:'.F#\&?I *;N"2,/V@#(8\?65+W M#]C(!7'&T\D!<^!73+;AXT@)GD2^:7)DVKBIOFQMH4MX8L.2-J@X)^^;R*L0 MX6%-KY^+>4VSX$@C!("(5#.4HYY06)QIR6^ :3 6)@(2V&QK'YM@"P,_Q)3O M*):.B-,X0*\&"J\2[1\VW2-I(AZ>AEW(,HPU):E+P()+M&OLSD*S"_/_O%Q% MBR@KM#^"BST(#U1.5Z"$9?(NC,A/,8Q*&:E8JA8D-># (/ M$VIE\30QN\8T4K0[EOR$&;K&(X,E)WF8! MST.P%=&"4>:%XXH-REX(X?1I_3E>IT+NK<2X T/=:$A%J3#O5I(B,L*6",Z0 MTG*,G_:W*VATN5*;AB^JZ@M!4")C4O$"3EWY37!W:!393YC, ]'^BBYSD#ZN M5&'#CR-D0EJW']0MJ-3,CTVJ)9-%_"HI9?EK995U[Y%!!G//(Q_PS]#$G$054KPX+\&&RW MIBL7;FYXH90D'Z8VA>86.\/3OD:\(;"VKOR=*>EB$NB>"U9;7+[A&<@&)^VI M@0(G_/X:)>HBP0V0E)?-\^D^>7)S0^I?(^O#FBZS;.X30NR1#^E8)'PU2R[) M5U3?>Z("%731>4W+5$AWPF-J1*#?P=3Z;>IE*3GI D$N+\RX,QY1 M*R.97V4JRFOCF4%5V[W3\LZ>^:N/*>H=4$% JITZ-X-(A,^L1\R>[K6)EQ,M M3V7UGI:K^WQD).M3R^W)*XY)_Q2FEP-(,L/GAP"X?L?Y#MSA^P3[G6:6K&KT MRBV1SR8WZ<5-=.E_!4M;>?CG!B)IZVF.7"M"-W6H>:](2?MDS:Y5Z1-PK+W7EW:Y%-21Z%J;%8MK/;UGS\DV$O)Q<>V-0%I CK#M:QK M[VBEH4#Q("6@^B%7_4 ;=NS/#T*2=>_</JC8W\NV264>3&].;KGE72!=+HH8EJK>5-,3N: VQ>9J/ M+*#:3C7&YB\_0L_CK;*IKG*HNE;P)F\E48,8BZU2)6+9EAW @LU2T7/S3?M4 M*V#V=O,%<\%Z-M'*P?SDN1&?!U.E VRF<=/#_K)(E&.]%R+WBF):>WH8U:QN M;C"DYL['439,O5RMF $KCT4:B6I(/>;5+[54!.F?!?UZ]\!L#!S/][__B'+_ M 2BE2)61Z*'$4AOY&IJ-:@Z&A^""3,>: HNK[XU%!$ MW2S73A)Q_]D:?V<3$.VRZ)&6;30W# $)9]Z_*D3[?"J!B]@%9M *<2Z^Z5/Y MW(C*Y_+^6CT8(73ZSF.F%YQI>^.YQKHYNP^K_Z%LG,/:?[)!0,=[(,QGA2*A M).(Y\UH 0T0\9@9(7F$(8.F7'F;%!42WY%N',P@1-!/A@:(/SZL0M$]4E'K8 M#2P6/*+J^79]VVSRLC^WS/R510\9W?S"#&"O2WV45AKUQQ5B,8H2 MGE<#YOE#@\4%3TX78S.TW.)NW3+KK%&T"9NESKP- MB$_"[G=K-!O-+IWZJVJR?"&WAS+_!4AN]T*RC4VIB MJ$+09TD=:*V"8JI97>K&G2PZ2E4U]1ZMI?RF=M+$I9 ;M3@I[QP:2;F-ZNY_ MZ.MJY?%(BTE1*:R=ONE:X.S*\@T[27ZTT9 (6>0=KDHQ'=+U$RTG7>L6'U!- M\E[@=)$.F.N/-U I72Z,/%[X1"Z0R M(QD44O&>IH61LJ^\1*I*+=PV<**([E3$\"0FT"=7/E UXW<3\'Z=9\M"4TF^ M3O5HKT+7%_$/Z=!2F"C31%.7$2ZL6]$/'?\T\,]D1I4&3%(:E'5^DR >V21G ME:8A6EF+W!I^L02WJH1%Y^"'OCL1I?IKE3\FYVZ=!ECW@NU';VR/*QI+M6>RZ]74NT1 MM9X)-D^NI1DEY(- M5*FSV "\2PH/UC'CUZ!^@F--CT9P.'TFLYC4@4E7'N[P*>L&,>;XPD.U2O6( M5XGU/#\FY+6HW)A62Y"N*!EBI; B44$^O:[=@VT%"\WR:PS8##I9)3.\O'\[ ML.SDB+$$(3_/4&YI>J6[.T8JC3Y9-SQ'.X\9F%A5S9:]'V#;>L[(DB<]B@/0 M5?$:"Y\&D1W.^ &_L4#)6K5DI% R*?>6AGKZP*O59%LZ#L9P.8:3TR@>8H%] MM,K%,&.1+*]FHGI^3BC58:7?3^?HXV[!"S_5*D?)C)BP)C>"8?W7$56=U*[\ M)#M"!4UAJ+U"&5X8QI9G)&5KB;U5]_!PQX3 G*2T B#S!2_@-*,ICJ48UE>- M8P':&))C38LE2PH;1L)F+(6-)^[$^LF@]>97,N.2,(=B*9R0,:N]R_2Z =2W M@6;_U1IQ,0.[XO:5I7GJ!YA5(&;XM=XY.96CJR82\LXG.B%Q]4FS)7Z;%:Q' MEY?Q+LVT1.5]3V)TN(_<_DQ,V/1E&=$0 M'164KXJ5 P@")U1!9(DI MM*NY,J-62;@#PL)KS434&H=?C^6W0;2",C2#\O$(F[M@$LM@$DH6Y%=M MCT.F]&1"Z42M\+'\4%GJBB(6FI#;/S$*1[P8A"J>V >5<:8[EQ(A&N8(?_[D M;D$23]NE_.SW!^U_+Y\=2[$R9="HKD#]'@7_XMI&(0ML)@W@4"2L,6#)%4]A0LYVH>@@0'E[H5_%]7KM&E@\(]:;D MXC8=7?WG159@W4='XB$IZ97-IOA&LU[>/\:*.F.ZT)VR.Y/"6BC]^U0;5)'0 MM3X.<'D' MTM:UO('H;D^\Q0DTM46>J]+ SCN)[D5=NT0>B8I!&_T8%#BJ0Z(*T@F[!14. M!9(51P,_>;P&N?IS;OQL&[DY2L =$<1+D25].@.6?5.XC2H.B+8-A?=&R27-%&4)5:#[N^#G6?((X!;[5*28DB0U^M#HLEO;NH[&<&W=5*:@"CO^Q% M/NX@#__R7,F(WX(G-^V_'+2?=FH9!Z7<>P.5_!+=#''"D%9BGH,X"V"LF%O4 M> DCX/THS_QH5Y2%TWR,\-*5L,#_D'8YS)B2.Y8G_<;*34DU]PSRY.ZG?';9 M-D[3-G]68BK'H'9ZTCF3<0!4D_V37:9KE9W*$TD[>-J7$3.,:CK*-RM6)< M#^B;KN]&2+#24PB\8N#+ZPA3QH^X]$"7%-(#E+A*_MWSQYZLF2P&*_$L%0Q1 ME47ZF*J+05BL&A!1JZXR*KV:C2\,HKX?R%;V;(@M8W#,,89T,(3$H@DOO>'= M\G*26! REHU9DRO+HN!:65PJ-KK^L"M[D(745K"4E/SDY:CCX-:YI91'5,M= M5@X9\C-ILXG>M!1'DKYSM(4$V!'62HM21?]X[G52E,.B0F6V>(;;#M3(WT3=76Q]9EHB1.EHR4 3,L3_ T3>+@6^T[[[G?NV$BNCK=.6K^K M<%92NHS>5;SGIZ.C) :'-0/)=,GQTO X4;5:HX 2 MOV&#?:-IPWE5.^7=)F23VUU2R4D$$4D"6';M(!F$ RVVRP%[WW:X?+"2K >^ M/,T2DE:/H>^OB+6," UQ9V&GS+11I^T&R5ANQFX2S]-!HNJ ><4!E',< M5SS3@98"0O,9B\X@RI$&G_].SQ3&76TR6995WUV5M#FFE$3)!;IW:QE"7GXT^\YO+"MD(&D M!6$K,RSYR&-WYY;TK29MV>4"C>SI)XZ][.I(_A)I9K61O.,7,P>\+B+73%8R M_]+ND@078<=8J1;_Q4V]E6T!>F[I,*9RQB8IQAW)\B;ZW6E!#. MU@*ALB?Z&US>S2Y59)_<$%-OJR?DHKL*7D= M>X!M/?0N\9P JE*N*K=.2DIXBC]%&-%CO'FVR#NUK0C[CUI331@,[&O+JX,A M'_B;*KL@P#9L,E:2E1T@@)X;HE7MR>6)\$MB94SNU:>FND0B O>1\DJ[>_NT M=? R.?7@<=G-FW<2I>;V"9V@NA-@[Z$T/=(0(BV#TC5,7CM M8^%F (1>4LF-\EOUGHYJ'-A&Y%0&!J=U(:,;8GE-);7 -3'I)'SC M9F+PQ0 M'DJ U4^Y;@8#V=A%0W0J1, ;1H.[I\UK+%-WV>_S(NX6-Y-$^E#2W1D(&51" MTATHC4@Y\J00TK4 1PJ!JDPPJAZF(FV)#Y&GON0E\LRT<0]34BR[?AZ 37IF M=5DTQK0IE$@R:7DW:XU6#V8=AJ?CY$_5O>UD]AG'I.L*H,3ZHPEO:L_]M': M"C @:U^_YF$D"=D[>_42_>>8XR8=ECR/(FGZ:84&56$RY(URK1A3OADGJT5- M56_2*SXYW(C#Y"DJ(B[P:(AU(S!XXA,+&:=S$>M#7W =^1R@'$B16#!JU!DQ M@T(PVBCP_9%HN0GF7LE$;1V3'MFMU8O%S8#IB%0):XQ:O>]TH\ "L*2]6!(6 M!)682LF'XK3O5"S;=XCK].@^::9U 5$=? MK=!8CL;OJ%=JJ5=2'38(W*08'&")4.1E8_GL4CBK//&R;+265,7-8[_2 MN44U:*?-!72A]6,&^BYE1.G[S]L/\HQ5T82#9R@E]!&*K#RTQ^JT'Q+R/"&! MP&M<7T%KS( VPX2'5F^ SI&;V,/FBT!9MC_.$YG)5I;HT!TO)BS*70\MP1!+ MP'P=-.L!6BX0\G94ERL.QLP]F892$UX>*LT] \H2-MJEP^/.U>K.]KY*T!0V M,\]EI6BBUOR$K"3TN);A7P=\PTOB"!)7+DKH5)Q5[7[2CC=MVAC*1/JI5DO) MY %EQE)_!!3!B."4L:SB[,I)\KG5[B3!UB%@%_7C21T-,@V 1_@OT%(%JL8^ M+EPD2HL[2],T-"K8[/8?1G9BI MSGYZAV_2CCVU 6 AL._\.>P0H2;UA0H-?)>T&$ YGQHE$P>F= 9@7?XDE5>\ M;9YB4P%W4C*4FH7>K/PH!C]$KJ/GZ2O9%..?0&.K37D) C9"YR&"E!*=78"4 M^^/*XN;/> #*]=9'//\!"!"#+H]%71^=7MB\PW$MO$BGG?!TXI'B$NKJUD*;\OQ8M-]V.W1'U_K*B, MIB_S$@O9%!8R<*N4"VN'E RM12'-I?0+D43*=0P2*GNZ8G$MKCS^P=D"6A[J MGD0(7 5C-FXL;E:(=D5)N5(@ 4/SEHOUT8HB55V-]XVP9-H>&FO FF^25"EI M^@OSE+9'#OM1.!+65/(R,.@]@FQ3-T>8@,V$Q@W9B]01R1 MP>*$")YDT.W6NY.&2D4VS"3M)BVKBZH)PZ4,IT2=B2S' MI4K/6K)OH@:?)/FR779#+);'<%76EI#;3-<(=K.W(_(W6?>]IG=:A$8-DJ39 M[;6X1R()^K);K#[CZD//82J*OW=\\Y5FN!8'DM21R6 M\"WI)@X&>1:[QVLO$;'ED'.9"3(];X0YR=#9AU M.RF[#M[$2VSY+N,M >3=/^"^2GM)7>T[1^O7V)&IJRVOM\WI3QL]D(Q)K*8'S&/D\)S8'BAD'EYTG''!J31U M:VPJ_T1EE8,1L'V0CLS,@G&]T6@C4'W>'+^#(LEKIL%1.PRA 8X62T0Z2 MP+ HZ)_*6*.'#C1U030^YZ#+K#-QAZN5.* M3*YEJ2O_^=DE7(+K^:ZZL9*YK("6@86M7A5 J.JZXFX-UZ)3B91\"G*(9IS2 M"8K+3AL/W!/( DNNAP@#,_UL=D_T_G5)!U"]]RF/OH(2=L-"2G$) M03]EBH93*;]^[*K>V,*"HZNNC+LS_I%I;/Q*BHRGBAN,-M\F&5/G9YJ^RF&H MV_%XO#\=%@DO:\ >_N ID#F,(1.7IW2NY$:FO/RI)*7E?2>ZQ(NMPLL]@^I- M?NU>^]60O6ZFS&JJ,99)E\J_(+2#A*CG8!5(]:1(=5S>JQE) X,L0HE+]UG^ MMZBXX9Z?^6/D2M_S$?* M'[D9R(LCSO3+L%\@:>5E1C).Z6Z**DXRM4+M>)V>2XU:KPHT@-<0D+Z:X M0+U6):-Q=$M>'&E1H,ZGEQ;D":&#.B"(DH)>%E)#S-[9_#2P'4P$HVZ,[,61V M/N<3.%##G(+*/(7'7?0@=)+0R[FN+/X&UF1+JZ@B.8F,^%PU<)S4!6AD.->6 M"P^W>22XY?&2G\)8/;?0'O0HVT .<]UNG2?WCF7##2T)E ?8N.[)@^U:K$C$ M\;3"6@;M7)=-?,KAVZG(H-FL/$IQ.O@Z7Q*!FLILR.9JSTPYK&U7C)1K4]V4 MR"^!EM+.4_6$)"B2_F>]--4(8"VIZ'51.J]+@HB=U7M^C=W)O0%<'FS^:7]/ M\Y&G+VVDT$KI-GV'[B9(R2^QAUQ7F'5%T B& )\4H5',(@1BI>NEA*FS,(WU M^WZ@UY;">AL>ORIQ#TGB5M55[6 .7"=,D;L<45T/'8;(E,C\;,,*E'-),FI_*X=H] M+**1SZ,5-E19]Z)4[08)"]D5(FFD(-;VWL2S0)ZL]5C(WM4M 9^5_2%0VY,> M-HPA'P?6OPZ5UTFNPPJ^(WM!<)C>4?DT1 M!="UQJ1-C7V*05/92UE35J0RSM.'@K,4*S<1=XS%ER)A848RL;?&,W"2C-== M"BWWF,NZO+X0\E:]>"#^?5BI +YW^'U$_+*%4*D"H3NIFK5&FNUI?&V3/9#W M!GY?R8M'A2%Y73&=WX)I&F(H!@W, M)'U-ZRZ Z3NB&EG6CMTV3SDO[/+CP]=")Q17NF^ 5]^@9LH9)J\R+?7$,.X- M,K-,59:D)%G5J!XSM[G!JO(>1;B8-.?DFH]H())>6KU'Z;GH4.U$,!N8[B'H M-IIYNGURM2<[4+$T./",7:8C9/=*\=C' @_,J. M.@0XS/P VUYUI[2S5\5D^V+CE](H)K/Q,X*;LJD2=V2&(ELZ?+\)JWS"EH9" ML05MP;7 -GAORD^JV^%>Y3_4IW!F(T.NS6T)#2UI6OB0SKP*BUCI6?QOLAY_ M[@;O/IKPTYMKQ)RW*14LW6289AQ3C01]'_Y.]R]JGTT"[KP^G\-&O, M6N;Q +=EZV.U"DN _U70XS(#FKQY\G'H.190JY6JNXLMX,Z7JSD[> >52[;R@;-06U$ %K"UI"U;) MM^9!S-KV'FXUR=*'EB.>?>RQT&M@U\2@\LS%)!XYBC@7336?:R$_CISKO@^[ MI;U*96G[P#%T":V.[U>O$P_A&JKPZ;O61P>\">S1X7^D,X1;,8DW!4WT>XW) MM$$318'3C;E1$/EZ1]C$SC=Z89^+$DBILJ.>WH>94HX51)#3H-TD> MW-M--@,*"ZBP@)9@ >V5]@]SE8 -L8"J1[,4[,("6@OU_W"GM'>P^ZHMH,/= MTGYA :V=YK][=(3[4%A E9W2P>'R]F'9%M"2C9T% S")F9(V*7HJ^6X]3(K" M>EB)]9#D6!;6PV8NO; >EJ5\UTI[.P>;:SN U5#-E7J%Y; .:G.U6MK;.WK- MAL-!Z6 ^QW1A-CRANEP%8_9H_]5;#=5*Z2"??:Z%T3!G8O#JPRC+3:0^QP:) M>,&'NF);0106.=4KRJD.DQM3F8H+X50&+Q9NI39V?C#R^444NK6"<2U5>)]J M@3N!7<:G)ZG:BC*#N.\$0_C7'18YX36]1"(V!K-LUG-"T;E-)5/W@(]CKQVM MO;+HH8<)U*')FX;'(RSN/F!4.I6GZ*K'J?/ K>6XTI(=,A89L@08;]8@LZC) MHK6H48XHE4MUR-2%&Y&)S&2FN*I5IE+,]0N+V^8I75;%>VBX.?!?NHH#$"7S MIQ;+T]NIA0S?[B$V%N#)Y JY':SYR?/6/:0XA:TT%!6V0TSE[W,* MQ19')6.!9N($8<^^%L*/B0A@L^ZBX$/:B=*57']V/C:]6R?P M:;M!7=4WW'F*#7_A&PSR%<6A=CTL4#L,DM(>.KS_ K\'KLJ'IPX%ZYI%HOI. M'93&WJ24/'G9Z\4C2U29Z%A];.",BM5GWH*R+F;@=]Q*U$3'CT7AUQ+OE2$: M2KH^-@RS< +JW]B3S;IZONJ_P97$/K-))Z >83B0:<6@"034;!+4 NI=Y@L= M%@;AY9!"5!9I[3YHH%W?IFXP6 D=+W4#B$Z/[PH%:4"A]ZD%!W;J<%P.XIC: MSH]\UXU%N5^JQH.;HWI&^_J&L#L8'N__X9@#-D1/2HB-=.2-Q@'?)EH)W[S M";^+-I%T6J1NHJJ17%'T40VE>Y"\>0"OG +VQ UL:1RRDKCOYS)1QD7J1P/K M7RL 6STT%#"B-S89*CU9EI0JLE#_(FW'^@'(/=Z;BC9-U(%SZ*)>-P9)[_'1 M: 6H^<2A7DT,#RPY)H,4)WZA<\PU;N91MQ-]6-G',F1IO.6;(S1'Q_L[]L39 MP=:((^TYMPY'D5[@#*FL31]U,-$(Q>B)O;EU?#'LYBEG:PZ_9NL%%L<,%PL61I8.P6K&25K;;.>3W:P6NI!>"GE+L60!8PNX/N]*"F?Y%U)UA[-DG&< M+_)2DHJMS!Y*VPL4-3QE-JD@ET: U%:<6>,2=O 25\"1?_*Z=1(DT3V-F_#8 M*I&P@&\A[!+!GZZ]KHLC(T<<(;+P&05G#4T&W,:?\!H>JK::A:UT_KOH M^L>O(_>QXA+9E &0=1!F8%V^X)VC/5Y*<69K] M(P)C[3]M$-$M*N8\DF[I:T)B$UC1)L"(>2))UW,T MKPE>H2U-J 7W.M+XBI@35I+8F85YC,J_5H MW(>K!.EI 6"_QTL4".XF2PYQ/8&JXHVP.$)2_,ZX!AE E7Y"UQF5%.Q MX]+4)Z!'D#@SJ)?9@$%\/7^JXU'/+M,HQ MR*C?.ER&I T,L[ ?G\Y^E!:C.!-SUIE(Q>:TGN@UJA *%V4A5][[N>,92DO: M.Z1:CV"'8,Z"Z*]8KY.0 RV_2QJAK.I"-B5(1R_DU6"T HA4'%%6.B/>H9<] MX_$.8A\88=#6[J@RM*%:?+TN @D3K'=[68,(Y]3X)(_Z]"W'E98F/C\109>$;^NLM4<.;-@V;+HM MA+U>.(8*Y*/KV@"V^T\,^*2L3Q%*&4[73$F4.1Q\/L^XUMM[O2GAR:AU9S#G5#+U(\,E,M79L^N?)6H9& MTO83J)K/8X.I3.H19UWH4\D;?MOLR% N=GVF(&Z9AX&X4RO M?D!J8:J- R]J1<'&@/L-> !>5.<%C1@5[9-8]6\ .2;.HQ^[?<=U5:>BO/NL M%$D7TLL"D<1S$E TC%A/=9FU07;VA*QT46?GCXFO^3[)3'\(M':\6RS*=L.W MV.@R;GD+P85^!0=+X4="O]>V1Z-"@,.;B(&IL%EJ5"J*FJR*RWQXB.PV2; D MZPSID1(.9MXVV#>[CBW0=0;+$,<(^ -*%9ZRAJ]?,Y%KGA9ABDP/36LPI@TP MW>_.C;H,H^$0D9:2$M6BLGW*M(+1E:CG:IO&6>@RXGP^?MEFW6MY ZN S!THU)A;]MLX5\:19#YL7;>4LP!:&=G8A8 M0[(ZGIS1I6J7$5?&0>)I=@8Q46X4.,-N#$HI34TW"%3CIP39Z(84QED9I&G%,NYIZ:A'U67'7)S MDD_(BT/L?]@#:R4>QDY>FD:X(?:#ZY$7IP M;9*1F)N&/V+O#0TUY=D9Y!?F'KUD>++]9F"ON73L-6!IMO"[:8_K?C,1;C,1 M!_P :V>L!B%:<2+>[T%V[(J7&9ECO0F MBRL.?0NGM"?Q,F?%1RCJL8]7H9J(N"V%TZW5Y-U%SL>E;JM0JV:=<0&\=>-7 M*F@S_F3N;JYOEMHTOE[C&!\L\CXNZGFU#K(?,#/I9>&AF&3U5L28>J=*IN\" MX(T, !;SE7[/?<6"KV_\#JD:_+CC;A7,)V MBH0N80F,:30&A[0Y]G[JNL=FT @ ,CD>8+ A )$8VQ/+D3C*XVPB(;1S0;S< MY1D=Z [),A<8BOKK-A:WDR4U=6-1S:O^1(J 7H@E@C[9:.8E3KT$+1?Q$T:* MX) CSU. UA L&[.N67K-G,_FTR:FJ+V 00>R&32GF!.S)]ZIJOD%C9&(%5L. MEXLT3VAN\U0T1J\M^!?N:SS!='+5E72GER1@ KHX\#\ %=@@?,'K&(W2Z:QN MJ$\T\/\<]Q/N ,>4 *$Q*N,_I42T3:Z4.S89/AW8*\R+W$P4HYCMFFE<#<]O MCE"S]&ISBN!;%+,"GVN&@\0)$LK&&U#TA''[=:!F,YH)(9^,]>.*-%\?(7>O M;C5&=P/JNM];PZ[-8_=[:]SU$]L=]^M@O2=-@I3T38\+RBBLD=H/M4;>ED4: M:,&/A>F=\C"2I2D.Y[#TSK&L;L6P\%.J<0SA]1=#Q4L>ZCU07SG,1Z^/PZ@[FK&NK?]$PNI5>FYXN1-R)VD\'?5 M#12)QO7,/X21_VUN?A\M;G<=%]M]86BR,B81UW"1I)T(+(@+$("ZP=(P%YJ4S ML4LG)&12>G[-&-_VG<;&G-8!X$V ],D44&W51.>4@HYTW/4G8[YQ>I35)^Y= MH*.J.(_/M1@K,T<@1IXMB;^ NL2I"$%JN3SE5ST8.0>4QOQ/RAE%>:-\7ML# M\3]SU)[I76V&OVB(J\4ZT7AUB%ZNN $P/B_D]:;%A1Q(:5;QP]0I3DP9=,!_ M&)F7HCAYTM)"@P@8O5+^,MGR:=G?W#$ONRN_^-I-IAFI> M>_9?KC<@.5!1A0->1U84I8>?ES0J[F8^9YY;M&5Y*"A,4;W26RCD=/A%5WF0 MQICX9$XY5\J%B3/ 0 -<3=[>-)NF.2Q",/Y+"!V)5F9A,WB)0'34U]TUQ]:GTJ[90@ M3%!SUSGW/DW9>*:2*#//S!^Y2/,I6\I49L1U&+FO?D8%A:MNOVLYA5%,&.[H M@ITV<#/:P:N.70M +F@CH%TGRIHA[V S?)++\FGX'\,ZZ-(IH\,"5?)!;XLJ M?QM4(7,[)N9FQ%C*;(/>_K*/=5Q^L!F^*\@XUQM%FD*C4@0+K_3+7EG3ICQY M?1-#B'E^= E63W*ICDA@ C^:QRB>F;B1&SD\WC*H6]2>L01Q76C@+$^MIRV<#]%E6.R8#5^]9Z5>K#+AO2#I;SK(4G/63&@&](O%>4E^ M@[\M4:*L+V+*P%-=P*)Y.)5_F7(AU.K3)UZGU(:BY"; $P#>K&BU>7697L,> MF;>#-K.:B%:X25<(663_HS.F,+-55EQ(H=[>=S;_S.5='C^\,K!-N3KP0GLA MQ1&V)0^:GY-)9L9FP6!GI;&I?@G&N*&3TLQ%6;'S=)%5U$5C_%^WWN&]REGLWGZ]',ZFI,'[)E;.L@R/OFKC"K)XW"[]TS# M=&>(G?U[S$O\\6_#&]S2(>6 .%*F(,6ZY=-RJ@T 6'P6!>J.R:L+XVJD^7@C M0_K;##!:)E@;L12U2D:%@_XS/77M!J&&M;'QVX&AW]I^1GMP@@,4I^A/((CJ00 M2-!0 2_<98*:TS35:4J!W*Z M!.FFG"+"_/,RMDE=N9*FJ[+:.\_L?5#$,\'_.7=WQU=FCQ6,1;$G#64BO=R< MY_LVR',T,<$@3$(=:QZ#T;3FWF0QM*2HCK8-]@-_V YT'K&UH:X4_\ED/#C*N&1 :ZSCUN4,"(Q?("$XRX)4(>O1-$A3?Z]:",R*T(BZ";/L@;JV0 M-Z,UZT9ZX(;M@..0V$=Q8NJR#BDE 3^4?:%T61)RC5I]E!_.#FV3=2P M[U4V4MB1&PY53N4.@;U#8M9R:#RS:TM[*.Q51"DV3JEW2._S/35S7DD:@]AJ;C)U=E>8-U-2_3'TKR%DF,4]2_=L#^]A*-I:]^$M;6>H*C'OBC?E"YF&^Q MH&!&;WH-]SM[FP??\%Z[]_2BEDA0?8NW@\/GF\U8?[/W#>^UU?%V5-7FH8[ MAR=BO^-.#/XF[H]SE#Q'"(R]=?@Y'+#85?@7^? % %*4_X6.V5-S)1[;&+'G MS'MP;X"GG;Q'YSDRB!%XQ9O?!SQI%+-L2N1Q/_P33;,C%46HSN"XN 2UYQHA M_5 KY+?X$IGU&-VHC,ESR&013.)7$<9TB@)'FJ%2:X$F% DIO'7&0%U%!A$! M"_@P",'I\4OYJ;@Z"I22ZF-!/!2_QQ3KO0;O_7&=QUS/9L0-H9A-_,L]-FV> MJIJ* OB_$N\E%7)Y$O$Q94&>*_63M*P&MK;'(T8YNN004O"F(I0C-7"*MH'P M)6P?%]B3.3BD.J"J]6S.$3'S#,XKFD:ND'.T6@?QF:8H)U:_22OJYB99D3)X M,BL2\\(K814A&#."W']3U9DJ'%EM<9-H\6%Z)1Z<9? 7)(#0MUT %\T6#B;Q M)I0ML^AB%MX(W$J6 # %DGRE(K8CHK+$9U0DMU1OHHV@A)CT3F0F^8:*760! M Q_>24G9Y%*!WJ&RD;6N;=?M$\S3/I#F=-.NM7*7"[F_;;B_&GCU($9]@[=M MKD'1>EM*MI<5/_RE0V*VM[FWDQ5=VHAW.3;XNUGRMQ]&TZS?^]0?;)G_QKW> MMLTU'\_2"7G"R_[3'VZV _#_Q?^_P[!.CD__$;P:'GYX=W*Z$-R3J_SM]1__ MU&?:<1$HBSXA"(D[B54\8#WFA?#0$!0[$:K=A&ECC0$=%L6&)-1O!X)'')+Q M3'M;+-)*R2;H.-3+H3]3N*.6-!!YEXB4A!1V4WXW:2 M(7<%4J)3#&GSH5*B9#(G!*5((YR"-Y&/]4PRP.CM7.66W:AD M=F#A%P;M24&-)V@&V,C+\A,QNX/8;\WJ#,G0E3NUG0ZN&A_$S;C!?8;U,U0/Q.=+PY\;GSQP:TOWN+F<&^N#LFKTVO%W08%[F26P[%:5 M3!7,B+L2QP[8WR+BS^PF:*,#]RHCE5Z&S%([ACWFB+YU3N0*WB0038"";(G! MT"J$V&]FD.;6[ WXG)IGGSE-J)G#_+/CD(L\923O?'0,A=X1)>2,^!>55]-D M??S; 2EV 3@S M0U^]:Y@$6G-LOLQ2RY3!8&=U3D:7@6%D&B@!H?1L,M!F7P2K-=?NTJ M8!F#QC2AT[_Q,W/;(VU%_?2V#UT\<1]U>9Z6:"6C4)PF!99O OJ"U+RQ<@*A M;[5^,N728:_MUVW33=!5Q!70B+O$T92#*82/B?(#Q#I[W?R^2)-_I6AIB'I^9EX0R@YP?8@Z'ZF,:<26\8^AH7Z&V M6FVXUGM6-D''\,>/8^+6$J9G7EB)Q\SJ2O1\_'FS7'1M4$R-CSWZ,+N("S,T@?.=^ $K],'7&!!81 MQ03&BS5HNFP_JVQL0KW%6"(P75=Q92'STMU/76$J;!!)KF@#*X-5;L'0TCAI MC?DW5B\;SYBHTCN)[3B9%$S.Y8(7=7!E.Z_];+L,DW8=+SUH.'C62+E/F]I( M"YI2-EX2S'XSJ=H:%;5*!\SH$6)\J7,)^OO)NXA6^]G1XF8QHM-:>K M"BYX--Y*)I=?WRZW$'3PE:\@M\#'G:6C;Q.@+WL8<1D:Y/91X )^(1SP"7?O ME[V^[A)?"/@[2[07]--WTE[P)0UN.#O9,VOH!/COAC"FZ-H(KR7/K661 M\]11[J-,=32-F<:H2C=\"2I]*\3Y5%M_TMC:KR[8[-O#JR'SJWW M9+WEUN_I^*>0*OAKX][8KXA?LH#0W48YTY#_!6(J#N;^8ZI7WTH@*P0NPJR+Q+)44VAFA=U<^;N"[YU MVTI:[X_U_C"+,$DO2\KEGX$#C'*;,P10A!0&@?^,LX5(^I.=MVD&$U::<%V. M:GM$Y->K#T"C(__4B6<-63OYA!G"W+B YL[KO;+>*_>T5V1QK;Y>W3K5)X<7;R2NC= L(B98]6GIOQF"M!. M3-J9TMT@R<46!*<)E6T"696B\&%"CT?V/AX"%S+\GW@R_>FE>P?(\+M>D:2! M5FN\1Q^/$$]*@31;V;O(GC:$7:"6$X'> 2MWD>6@V@Z4"UCI%K4$A+RYN9Q( MDE"= =)YY!/.1,:UQ7D/35"(]Y'@ T0 X\0.AXH(D2MQR6T#JL<++Q=E)6WE MT%43O>79>/Q;A'&ZO^8)Y= -@B;L[[#QV8YI;;F\K$9KM]25<%N:42.5V2PY MY"4K&XV=_KJ]<;#TQNXEMFZ=FZ69-C] 20.E%[6<[<(N3*^&B)B;Y7F[W0-O MNW>DL85LF&#URR?*KK'6:,?I%2KZ,B+ (_!!2R/*$(S TJ7/O\]4[/V3M;9JS+-DK9AW M',O!PN-LRH!!.\[F"2:Z2ELKJU'L[49WJVA:X_"S)IA*R/V?PM?EZ--%:DZJ M-T!+F(<]B:_-Q01!\O;70_M)' '&1LY!B-\D?MWJ/8O"P>XS^DI_\(R@#\)+ MG]OY ,F*3@ISQ]L9TB(D=HP=(2$)F:YXG*5-6&3 ?3EP?O7PUXEUL$@]L,_J M+,GB*A/H=5:T;^7TY*C U9@PPMZ(7RVP%.)^JDD4H%#YV<;(KSIKGRE;3K?)<'R+J9)+V M29H(2!L^OC&&=9"U@#1%66PX MDU#/^^6Y $K)*H;VNL/ L, 5],0D 4XE:* M56<[2NW\[EVW5D7,D 3IW(FX>3(2KQ\8<39/F\&0'64R%3#GYXS8J)5U&'0" MX5F9D!@WR9I;;CWNR"_Y@ 5)0&9L?EUFHJ]T14[_M,P9^AWYBJ8BQ!XT6)$) M\$(Z(>::%^D$B:T&R)UID_D@8I9!\N3X=I2W8=0/8&0P70RT(+ ENJHX#&+M M]A)"\E$PKV52 '(7UU-:@LV1\U\3/,&AD!SKB&"CB]M,V!;KS'%2):D<6EQ[)?%X*M0U 'GNS=#\PW^5]^($T=4[YFH%J(8F MY27HKBM_QP>W/:Q,"J.<*]6A&,5^LY*-31>P?[$BRCQTCQAZ14Y+' M5R1'Y594\R&]X0>NIW%,C#*$=&P:P8976,USS+JW_FEU38&KFG'Q6EH$O .4 M3KNH\ZB+ B46+<]RX3)GZT..:B/-.*7.2B90IR%UGZU^/4:2!PZCV0XT&[F> MMNO:U9S_N,^SIW#F6C=KR4)A-J"L_L_(A1?-MP@7IVOI#-V*/PUX3"9 M9$5&3.7X4;EF7PV'EFK66[UK7^J^?2GO=;IY5D2Q>0MBKT117:';XA8LODW. M]_8/=O:)40),S\AZLNJ M416/A;](?\#*,O%8X:DK><]BG*5I*AZ7]S"<1\4Z#N3#?$RZE2R-&:GQK^C$ M?NZ\*0(SL@-'KH^+R5_H>E]8[N:>_O*E\V<<9SG10+<,MSL2?'^E;2\[<+% M^@(+O; )B3;+!*(+H"<)=((OP46OK>TWL[;'8Y8K\<'8W/-O<_-81.3@,8+; MXGOXX^B8="=TW>H;;.B?T*)OU@L8+J?]?(VZH?0NNAJOK,\6!4#A']UHR M0X"C634 :@+UY:67P"6]7.(P9B8D^S7E8S*F:CJ?I9Y::7.M^T&L_6PC/@C( MU(F:$7 \>:8D_A0]RK.X+M<6)XDM:YI?FI@.1LTR"7H?C22"(XM-X0IUR;L, MY"PVSR M'MHAHK>0LI2AGZ5L61)DR8QEJ+DO/LNO;5Q&I26:SFN5F4%5]-P$B,D&K1KE ML$+7VH7NHN5XWE.:KETY#@3%DK;7+/II:PV@]-&VXW?T9*D MC%$A"I;V.1J[)9 BXBMB2RKFC8:R^<0O1F.JO!8W3EB:0KJV9>*_;34=&$VF;GSQW0$[T[E8H^MJ=FJ#D2&A6 MQ7F1(_'B=4+&7%C7',C"Z>+Y;XS ,T[?E+MWXTH+!(OEZ.XUPQ))\RJP-DAI M#2"&6UNW[Y9GMU._!,7T*(^"IW!&+!]H^<+F-;KX@-)0U9/"^:X"PM:;:<_+6/?F]C?&?9TO@V MY \O<*.A %"T7RGYR\+/<9:2UR#5K@8^0?OCI>N;BBI4P3BORBLTGYF!DQ!D MD(VAV4>(B=HFC%,"CMA;6SE ::^F!I!,R,?- (@%A)GKA-')NR:J%0R0C_/1 M7 NL7C-]0#WA0H17B+:E';A47N1Z'@.69H,:92#SQ>+-!B2F,*2EQA?BNB) M=/E$_%Q@A\KJN)[1T,PR3U!WT/(@$81[3A9*0P#!8#"C/,XFEB_=,B=UKC%B M:?%J>':=D1/HWGI*%3P_>+&XI+MQH7 53P$O@99DD9'*A>FD<+[U(RM^ N8YYG5RFM1QI6BUN&Z\@S[S1C@UP' @EQ/9-J M]QU'R8D;E(43KN^':%%,3K=?MB(;9*CO(SP4 2\[^!/C=UAFE:P,*V MZ:%SRG34%XB 47 I2'87WL-4F@"DHG:H]Z&_@[>.=3T.[4N\HJR=I"A(7Q@W M8;,+QII4F2#!6Y@NY\YZ;![(#9_I'7Q+RRA6?SZQ/!(<(D)BZV+E; M\&W&N65PES'920NBWQY[1^@27%F"79T+K5D4*#TF@FS(^0WE9]F&L/ MYL1C7?L#]W%T".:7$KZBUI 2 AC\VJ'?&C,O&F/>:H X@@?[I3&F@N8NK-NH:A0X@:-948ZAG5;&RF.LBZ M4LCR8:1$*6HQ,9CY"_2@KGW2+SX?^33BLU0VEMV-ZH'#*: ]W]ILT^^1AFEO M/0I+\\YSO869"LTLB5[P7)V=0,X:J]6>]E#57(? M< :?@NE$+^DD_IQ-YDZ80'CS@&7QT8-I3$ Z^8Q65RD)S=9N9G8YTB?LPH-& M&6;R4IE VLXJ&RMSXO.>5D\UGGE>TB\BL*-6I)SIR$V+? 7\,JZ4/NE=H> N?*X)ML)RX5H1=@:X?0A+)@E%>( MU7$S4:C'MUAS#9;R)8$7UU1^<:VV!-/V*W[QW97YOB1?T27!$'1*,)1+^G;6 MMO8!X8[S0CN'XIG$3V0QJ8;IBO97%R4=S9_X+&WBI=;F\B'2Z_,JD(;F2+N7 M&TT962UB,M25LU"&[GB=$' TQDA =.C<3PNP[);@NJ"D.]+-"C5'?@!NK32& M4*,]4<,(_!5+P2T04I=$OX-T']X\DLX;.TH!M(9, _)"/>1[ZWFMAL,BI :P M_C@3) )UE3NM YOK-F.-K8MPEA8I,C%38UIC*@10!V2"/D0'*W)L=QJGUO'$ M;)XXUV1]4TA'XUYM]+=NM_^1KJJ)GB-!8X>:\ZB:9^:0N<@JVZ9"\\DC0%E, M7PA#4AL);GRK\26"T$_30IM3.SA9#DY1BS35_0)WKA(G#RBZ_J3%-FXZI7%YB6J#\48$RLOFX;>>_^F%=,GW>KY0-WP7_*. M%9:&SJ"O?M]D.))T0B#HL@K83#BI$FDQTRI77-N&(7M!$H5,N798>:VHU$,_ M:>@86R6@T+7]E_,9TW!P6WIM[D.M0?82+&%S;=NOAY02>$02)K3I-)FE%UG"1O8W-(DGY,BH+VEWF'X6K#]WP;:A2BNA& MV*EAYOQ_:_87^.*$LVO6..+^,'_G3[Y^$,+:[AK)-UA<& (KZ34?7<0($,V7 MS!U'TOIL?(&D7FE9A3V28Z*55#[ZG19W'4CA7CC%S!-GW+TO/HF$J?K]YN-<4Z_A58H, M9!V.\SD*$E;"J9LIT8K8Z L(L&--U'AI'HLBV+F)VJDST3E%D74O&@]J$HL;W,D/3M\AOK,'Y!_!*G2%Z5?E65&YB[::TNE@*]W? *74!B8+N MVG5%-IS,2"6KM#F$Y:JD[5&F5"!RY/':LDX@>)V,V)*.+1R3OT\%G8M MSVSDF?E88C&-]LO"&+A.@C[0"7+CZP+0 A:MJ18=2:90="G0<:/(*8<>11.; MZD@2+6;M8.2Q\(< R!38XJ.'3FYRE4I6KSU2;LYA:%&S7JW]/YYPG14;RLOR MD^TY-%\(!%W$=VV :V$PN,Q-M2.N1M'W6.U4F%FN74,<>@71.45#:QPK#CKO M46 Z,=M 'LKGU5=J;Q7VI*QL;/ONK@4(IIB:Q+PXPDHPG(:$QSG'O&G>=ZKP MJ!/"1YPX! 46P;%YM#/SLVW4?:V[48%39ZF9U^_/8MZ=@OEWTII%4KI3X<7; M)FL2Y:\:H_F#%;=V<^KT)Y"^NIXBF()G&%?5]9)7D:2P!FLP6Q%]NJ[Z^WE6' 5S>DL9_)N+M;/+OJKYSYJ\]K;Z( M;YM?"\&J?U LTL4[HGCQXJ0*[\I9+:D1,R:J50BJFF_&3JIL9JXHRF_2N-/ M\HZB@">; PC_[83Z=LAA7R'5>P/ J),Y8A%KQ&1QQ",@((^ZUQ5I2?5%+:: K6V6B*R*OI1?0-@WD,9+T,QRKL5LK MQL4$$#E/D_-4Z09+%)R_0P_DWH%BI25>,*_-MT4^H9O/ DCT;6 .WS!NM15R M;3JJ3@[7+O=$N_?-ALQY962C=#-8T#^U&%2R/[+4/5!O$^];UJG:-*'Y9P,J M=)*^\=+=);:?);H#N^=\ )<:2.''PR,YOGO<0Q^+=FY\63+\7?>E>1,C8YN< M\\";F!%HW%KKC*5V=":I&8>J$MC9]"Q:Y"%J+1F@0.?XWU\_1C9QW:]^N4_/WRHZW\HMVS5UOR\HVIN.U)UN7Q;SP)/7LB;C"KHV(4NU">W1*X_Q% MQ[F$;O'T%TNW:-GTC)D*M%,(3]W]R/@5C9U'Y71IPJ0D2^>FT'P\NQ2A;$OY MZ3%--;@]J6>Y)9=&939J( -5$79!M5Z6W,T$-$I."U;%X,32BUJ:'2B%>"F@[[+< N)7]%>1LR^&?6,V * 3Y&5 MXX2$%RJVH6/!,0I%S4JW2>FF4.7@PNR3S$N2T=)":JMQ(1>5,T.CB80735). M]1$XQQ[3V,+DR/'(;S#]I)B7U)SB'&-VSVD0+_;S63(MMQT$H_ZX3GZ5F\:6C.77CQ;-9//HDQ:\* 5!-QHL"=(94:85)3KQ&Q&@]*E?X\GH1 M)_'HPKSS,!>$/UU L@?&6@0QA_2D)V5N;_S0\Y2R(LT#4QV?ML[90X.PG\(J MV=GL/UB19%A:]F- BN2+67634GDO N=I&2U,/0H1B3->#6FJI$+5E-S&9(IB>T MI@?:0_&,C]$4Y)9J(203%)DI;]P#SD)O%0?S\=B:F%UE]06Q*#IX] M+^*Y69<5$PO,S,1.>4&>D^X,!9 TZ6 GQFK \Q;C+.'<4V2SCU<94P+/*&L5 M^&O8BW[G==@J8DG2_>.U3C'+]SUR9 M>@ NP4QO\,0+K;$\+09ASG1J6I?U5&N7N2>JH:1Z4N7RB &H=S3(XWF!)*MJ M5X!8$B'NS,]2>.TU=C<+V&!&]/%PJZ"*A!#9'C*LT\MR*Y7=Z8U'J@,_@%=' MR<3JL:P?+#Z=.\H?:G:Y:1_\!("4@3Q>?)>:U?W)GV1^'+)*23R)A1K?=34L MJE0XC$;EO59'W#R9S O-5N(S\YEJ2BPF*NS#!32PFI(_+0KGQK*]42_4O( < MJA7GE&6F^_XW15$Y$^VP49K8HU^D35A+LBP@:DBS8-^19CB=1H'LM!#CC#4FU$*33AA21W)W&$4-O/7\8-A*3#0'[ [;)AKA.6+" M$^OXS&[6J91&D>Z9"+0/W%5"N ,(AU5:"5S".BW^P@2+N=Q'MDM6V"JQY@/0 MI4,O?BP"62)2J0+3 ?<^:C.ED%>X,]NN"6H5ZEJ#G5*372LEZD[TLVA$%U]X M^*:LTI):]3E%FEZXH@@:)ZDKKWAU$#-^R2"65^:+1+?%GJ*D$VW4_<2F^(D-]UL/ M=$C'YLMTE$YP(&_U(Q)8C12'T%!H#7[%ZT9K.WIO&+.6QOV6S78'_M[FUO^O&(Q'@VISV MG)$GY5VQP5:EB)L/Y@.'U:IS,^CU]VR-Y["LC!-%,7 XS)(($+TL M';.[>:2X^U/U788C4G PT]:+0AJ1\:B)WYEO;\.TI<# _'-B\C5BJ)!*@,%[3N$YG0;_7>^9Q$IOW0L&AV)\Q M\5^@U%&U7AD>J#$Q9DP\%>9_#^@NF&:ZE70.Y.1.,[8AH?8EX_5=IN%U&IO( M.] _*%8C*Z E8 **-+]NC3K447<,%\.D*W:^TT&?46%3O*7]KHL$S8OP^V[O MNAY'R(T)8/A3Q_H8]"./6-A__FCI] 2KS$+C*3I?X"99I[45_?Y.IY:G JH@ MGU<4QM-Z*Y9,IC+:"<" 7<89FDK@CKON"* ML<=V3T:=]^1J6.->B/<)&K;S+*POS&EP4>9(VCKF916+RG/.<'N7E2,O/C^' MW(Y%HVLB"ED8Z+:1XC6N3?)JQ-8\,P,*=WH^Y>6TS IEAXT#Z)A>(C4#!#^9 M7*%=I%KF(;&(7%O::%2<_<>*S;Q=0Y!&N_EA$T.2EULPB8-(2$O, 7PIN9"@ M*!=GC^:J11*Z;)CV,%MP>T)/L;*S2CJOF=D*:WJ=27C0J.@]I]4#CU]6N+?C4>$KD%/QJ(AX6Q3 MJIQTCX3NAVK'_YZCRY R_?'L@C$533>_V27)=3YN*4B3)IJ<>8_FK=2X(^B8 M@+,T9D8X@NZX8;J5YRE+VO;-&S[_@L'V6D$,%C\*IXY0A7S^M-?XE]+G>VP= M-Z1U7<'Q3:CE!X%_K%>I3U]:I4%&%/2> M6-&X',W%J]=&>&_%>J5OMU!!G&=6V2?U6SW%0_-/$_17"^O-+!/;T&&"B\"K MN"]9U 0SL@O;^N!'I[^ZK!,3YVV&IP@G[*@I-$ IS7PV'*$UPYA3BD7FI(9) MT8;7=4-@RY3:V-!:0YKGN"#P[G4DC*0E-9V60F&%[^)S<]?A(;XL0P=*8!M2 M@=4+EF[)S!"(KO(KAVL[_7 [(,":D'6#,UA+IT*0J*J$RU:Q,54$>A#@*)I\ MZCI-&JRUHO+4[# Z1PD]I2#7G.5:XA]C ?$A[< !%#!B=Y$))G;@C-HB+E-/ M&%00%V@NT26NG7)QHX7-M4VG 7UZV:/I9:+63H+:0L>J%KVK95>+:W]% RY% M;5,"MA @UB+1I&!&"%&Q]!782C+![$'H)E!F:APCEA(K76X_@ORE>>$*BR 8 M0C:;L_AH*^.065 'L8>4U0H+PY,U9=D3$37@;B]]_Q2#FVL3X$I]9!S2EKO% MG_HTMZ1Y:G%:XX(3.4OCQ%+31\V9O$H]:$H:. OOEI2=(>^UFET2\7>QC.%W MDV?..EKNPUIY=6J7>[0&^GJU4+6]XZ#=N[Q,W*\D,H M4MR6_VP*/$L_IZ,YP1#-J\GCHE#&=<])"9#[\<3=$#2Y&\+EW W?N[_Z!U#&LCHQ MLH_&Q"1,HD+HQ,0)R5S%Z"%G A &&]7Z.?2'4 8S(U--.]32>!EWLZ"P:RD1 M"7.I_!(7GSX6F8K9W((^4ZD1&"*(?R!'R]3TS6&P:=GZ-W%E3FV;JV_! ZW:%8K8DZRN&6BK MS]JZ9-UY3:[4SXLTW.IYO^G>W,&JFQNW;6[PB&L^M7%NSQBN2*60! 3BU'3\ MUGAAX;ZE*_)%T=RA[>E[^3(6[T'+='P<'@.IN<]92N/[#0N(*X4G),N#M-TK M=(+W>QO_H$+**J;B+&VNL. V \%$8HDYCQ-1R M=E+Y!D%S7IWW=K,].S/#X;2 ##OR1P@?-TE'.<52RA#AM6JZCP:Z(3A$]^4$ M&.[M.L+U@FW1$TDB=VRR,)LP8AQ>5L+ZAJ#0HA#*MHB@RFXNC3R N;YA>0D M$A7G(I9[+,N %7Y*+F%U0^H))YM:Y+0L.%*3'A/#%2L)$-E-8)ZXI$1@"POK MV%5\UBY!Y3LF+'MQ"SQN4E]Q[T.SI\5\#MR1J73(RSZD-C\)5M5KIUT%>DGC MRU+!TGOA/CQ9JF^5_6P+]AYY^6KVD5589C/X/55D1(K,N6P9+V7I'M%)([6> MCX,8KQ8-%,;-]%]KPNM'37B]NT8= W6\^YVBCM?[Z0L1R5TLE%&+&[2+)JJ* MT8CD<[\HQYLZ3XVN&HOUX<*=BT2LV^)/:;>DY[4H-):XRQ"J>, MQERTR\Y/+]!CC9BF#AAN!\;Q6+M=A=A.-XM/HH@_>Y+@&J$6J(M@&/.*^QM= MXRH'D:R,[<5%.N*@G9GY+)]+,Z@Y.E+G1"AFI3"5HESY^0I[ :&D M--O&S/DWAJ +9/G-PK])0RQ\>3+!>WOF^1O+8^DBFJ%L;]:(\9HT MW4,,ED)!230,TN=:R4O/LT]I[AB.BVM/ ,D7DZ-@?W(F IIX.U0X4N%17(H" MV,"1Q.-M$+93F"V]]F;??"K-8?NE=JP]9V">Y%9]TG;&\PS+FK(D]L#T,C'M MC"..W3. G=0/>%^9JX8GM _'3FQB"F"Q.:XFX71^EF?UA2/!>D.ZUBXR933)6-F9C[95-JNO$OWUB4-A\.\#JP"=[?LN8,V)8!/G':.Y@).1W6@+"O MGU*0FW$B/$,F#%E7(E80EY?!ADHWFWGES[4K^(L*<:_UV:V)_61?; M,KS'?ISZCC.(S=S2O'CN?C"RVTQ,Y8- M"<4P8EGQ0"<=M/.&P? =1=$#Q_BS^G-KR8*[DXPWK2W5OK=+W^^K_'_,%/N " M*I^C/4)=:URN;8BMJR^PR(4D':?4DHB^;R_?T/B]GP91^:-F&V5F MPP]1$,836.HR2M51T-^:\ =?+L>0L!!0@2YT=3O]%UQ?4%%=5C:FWVUT\XS ]2;>*G> M0!.GX*,<8HT^ )FAH7?H,NOS>GU=O IP('MTX+B').=?OP$LLO4DQA*S7&4L9&?I''-I(L3=&HF*AR /%,42A'S'^;J23F) MPJ,Y6JS->,T?)%@F=!AJ&>;@EH-!_2QTL# \3$8#2!=R6?:F=#0(!W%#[,MC MMJ6NAPE.HI%"TE+HO(F6\4-)BWZ7:PJKR1S[L=;89>GHHN#76$C^D?(E1/=5 M.(RC=ZKC&^>\[T6H61P>*?0+^(]<$XX4RRP/7 \.N2F)B"M\6'%-^IVD;E'R M8DS8%O%36!^\XWG1RD7[ 2/5^,MJ9]?&-7$ND?'.S/!D@5_$_KT(9$#E_:NB M<]/18R'6;.P'GD$065^D3< !!_OBR2DBO(JOK&^EFLQF3/"&8\=2S#-HGY6] MSPXS0.!,V7YF"/:AN7U<+B-O55^U4ODZ6U)KQH9RP@WJ;D<_-452?63%Q.1Y M'%2"^XD78L5/BWOAJYUP(W4V3(XM#@QH-; MG1=_U\A&*??]TL<+<:WMP/Q,&QODCM5&'C.-7[Z_5KZX.[4(9&L"7L82B]%> MY&X,X61.NVBTO88ZW;CM,)#[#IH;5=-,H#;D@-"3*ZT#9R@I=[=L-6EE*&9J M9&:L5MO+YM)1SGO4\APR:JW&E6G("%<-IBA;]ODR>Q/QW+1OX&CF4?5A"/9_ MYM0@+%%R603F,:@1&A ,H+4\*62GV+"HCP4SWPE+F0CS?M34U5K_Y)X#?STV1#ET M8:Y]PGL;XV\9O@_\63ZTTNK9*:5DAR9 M7F+R %7+'C?EB3V94K6)O(^V,O$ M]Z56+U1\1-SBVO-]59@'+\J/@IU0CQ^(=2S]R#5*4=7:AO6!!C)..Y+VK/K) MUDUVF6D"T8FRL?FD/5LM3PGSURRX0!U"7,OQI@BS;N(9"Q^29VS96[[73-VR ME71[9GE_G5E&9GE_W7[TF.WDDGSWPR4\47++T=ZIV<[CNHK3G"S%;_$D!C\< M,V'/H-L%.ZB?/#2G+Z=%/\39%6X">_I%&525+0MB]4_H'ZC'Q149Q#HE2YO# M[:DFJXCDW%#U>A@_=@V":PP>OABE'B4-Y"6/$+'.YDRDY%B5)@@[TC_0S^93(_WYBQ_P*DMF%W\EI8@.SZG32YI5>AOSJFC% MZI28+_[PLQEJHA^0J_=^^,O/B[_=V=ED9^;KI@F4=#3;_Z?7V]HZ/.1#F*Z5 M)7_[833-^KU/_<&6^6_*]#^?CVY.CTW>M_'KT, M3C\,7[T*#]^]>7/T]L/IPHW_,JOP/WC!=UJFM[VX1W]ZWF&,;TOC\R"Y,,(T M/L&4P'I_WVE_[[;V]^&#[^_#?_UR=')Z=/CQY/C#O]9[^@&V"2DNJZ)F0-*L MKA4T%#[G"15WBIGTYHL6"+F!>=C^CO$JS*=9Q-J"V*5 9:4[M4F?RJ!4+IY, MX9$E 6EV,15LY"';HQ;D/41P1-IH(W0^8).=GX?/O)!6HKW*94R>4H4,1H6U^_G.=H M[;=(7GHN]8P#J>5=INQEB]ZK$V]M3; F]VP&F^B3QNGY'-)-2BG5^;PVM MVCC+!KNYQ6JKL_,++B$2,W*DZ'$1HU:-868.8<[QKN<5>?6"/&_0DZ#H]M MC+^G@4*%6!TY35IO?&RL:TK:[9&CUF;\D'*,,WH<[1+*.JW5N@W'DMZB>GS5*BK5;W%+Q>"G!K[:^#D?F M[UPX"$[XXMA-IRA^28NN"_YMP<,80F.DKJU:0/-Q!(WE/RX]2E)>%98\1<"- M]FL!'6$=#V'?C:=\0"3>-- %NVIVN(734\HD#8TUP_#]KW$83J3I&,?IN\.- M0<"M#[5?%'W.DG<9&_0_-VPWW4&ZH']OG9XI*#"(5D3+JOCZ!#>@ MWP7"!+1X0,LSI&SR8RK YGBH IUM<04N4*LXI^D5&H\]"=6=L8Z%>A7:QL$B M\71. & MR]RR55(%%..KF6=*TTK]$X9Q8W6.R(_DCJQTML$L!PY-%36:<37-3!M,14JL M153= =DS,3GIL0=GM+5GHLV'XREF(U1Q!^?0W+FK+I%.G MWM,PW@2)6ZY0!F>IV[JD'F'EE;4]V#.?"\Z>+"*Z%M<0Z? M@9:8WR.-#Y%2*J1J$7?!]H>1MI2B'P94<"KV@9;2VUM&U^;U 5DOLI]_M?I/ M]R[:N*8>69F%[JPD"SR6VB$\9W11N'A?XF*%UW$3D+5%[1P,G654WDJ[2E=.!(<=L##U6XWFJ;.IA/$R++(0OEIRR*)3FCEB!0X'U'KS6SMX,D M0 K'+*[(X"K7HJ\&N.Y3L8)^3_ZE>/&49%A]9H@ %6E 8$(%B+B;B+CGZG0/JDW"3_^-J MQAUO3(F5.#$BWCL*TL9%TG8CXV*,4M:XGU;4JC2QC%AJ528B[N,YI%CWUP2EE8@$Y67X%.'S=/-\TZRR\SA_T5B'=5I F=O$7XFH,2M.E::(/NN] MI3]3??FQG>"PO_]$L/[>K"5>#V85_C8W'P6WF("7".? M[\/?3N@30\N6AU=;=X?CS,R+%HZ&:0F4.%.+"IVI$N=W<@K:RTY[X4S4AE7Y MP;6WWOWX@]F5O&<1.XZ$QBPU0R9>$3U]*1+@ 8)-I/:O*./&\37_' M()KN<&(E?/>()W2["&\7XON^.&$_7=@M.MYT)6NWRF4S_5K*7G)==I/MZ0M+#E(1#/ MTDO=>KQH\"@UC0ROOS-!ZMOIACVV"$=IZ6ZQ%=4W,+HYOZ=1,?1]?IN6=2QO MSO/2&J)Y #-^IJ*>QK/1A>VG!OW0^9P/O"=HU?]\F)S>YMY.5GPC3,Y> Y-# M5JS[/X,'!^N\/WGW_NCDP_'1&GWW()6"]\?!,*W*=BH#JN!HKW:!*E274 ,W(_U56QG,QU]NCB@ :*%NWVFK> M"O1MRA5H;SFFWG'M1"3L@;$%*179MGL+WZ?@P9L":FR$PXM@'7]L%SN2%&0S M(8V*T'-[%+CX%]>PR\/OIU^/J&0;;^8XSVX='1R^.WOY+5;JV- M[]5VWXE"*0/S@YJ7O#0[XI]95W(4\M#J9D]GQZ^ M?G?Z\63M']YU=SUH(\8CFZ:.-7J7!N(EB[O?LXO[_?#D0W!\_!!-M_?V)&OS M>M_6K=]?-9#>>7 +_&9X\H^C#ZL;V%?O3L*3HU^/3S^<#-]^D/CPE'KAWKT- MC_[OQ^,/_XK,)UX//QR]#$\_O#O\QV_O7K\\.@G?##]\.#HY#8=O7X;'IZ?SPY_&UX>G2Z^OW?O9*;A-*JLTX!/%R]KKZ(!0WGTWA3W3O/ZIE3)'K[ MK].C<#A)0=U4F)"5B5P\U:WZ>G)6Y@I1.OSG1RG@;8;OBO -85,')+"!^(J&' ]/P/27*6#(!ETEA8IU+.-"^S= MH\U:_@3SG(]MC,;.O(1B7UHDP7LJIZ[ITNZ%0K<,$E(!\Y&'TSA+"+&3R)37 M%AW4V"5#\Q$5JB6HB'ZZJ1V0U3Z/& H&5>ICFCHP5<^5YE]('X"P%+Y&\U]W M(Y0T0%%AI4DZM&P)HN%4/VC?CN=$_\2ZLL9]$@SD7N3AB9SLA1./13IN"*@\ MV@+,B%T$?-C@'CAQ2--WMKS_@KN6P)[*$L(RJP&P_=#D9>;(0D#TG9K$2XA7 MO/:1*LW32W0_"N.%L8^=>)XP*5,B<0@<;B=)1SFU1@"E"PXKRP&Q^&[---9I M2EZ<*B*=S6<" L+'C'6/$VZN8F6@A:=$LG->@\.YB=C]MG0-?_(=#GY[$C,. M3N.X_2M2-F(ZII9NB:Z?TB(U0U7).WNP*D7%P#[RZN:^Z]*N&=K M^\8L22( -"W%J@6I*,GVLU)XXVY5JL0P=:#MTO,9==5Q%Z;GN25_OJXY_H;)J<$.&<6BE-/2G!2G#WX0!)A+0MT&RJ,IN4KQLG"1/.E"S_WP,W9R> C< M:EE=:[JH,:W-:\C\V/OV?;2:^;8=IGE4S/#??AC\<,]#?FNE59T-PW+\W[/J M+S\#2PX#ICS.1Y_3:@29,_-Q_L [[Z1[)PN<__*[KG+RZ&F9MV>DX_$[QMV8 MD4<_G[_3)])D8PAT\WG*DV$G[KTJ>BR?OO"[GK_.]<@SG9\]'_2VH\'6?C38V7FQ:-S$.F[M/5OY+2QW4X93ZL6G M6C3-17"JT,[?.(?7G@XUSL^ZEU+[4\T!Y>EXMFP!ZU?V6]^A,Q5?VA_T!S_Q M=V^^PE?<] Y/\^.?Y4&^ZK7L#OK1=O_@JY_@ZW?*[^S[MA_QSEOB;3GSM\7- MN^*FR5YUAK]NC=QV]?7(OG1D#VFT5UR5'\I9G#_V>?K2D2T8R,ADO2!A[D.41,!\14Q9U&JH$OT MVWUAFE:4;X!O&G/!P/)V4R%5%)71N2(]BBKPC1YYNA&$7.P%[>RTLA'S"AXP M%W^N2LY./,$LPF,;X_]F/P]Z_=V 5ND'O(!C^P+@!U@X.,D6A/ALN.RSW/<\ MH:RO^;=F#+F1^QQA'U;G(!KT! "OA?9@4=*; :/@E#F3[[I@!0N.J)\H^6P3 M4((B,"Y+BE8GXI:B -/IR8 !C*]OQ>CYYX"_7*4Y^E[M)5T%C?ZN3$*T.R+J MR%+>P,CNL\AMLDC;FU#XBT4=W=M/F^&0?J5)ND"3=*[TJH_>CW;V>]'!]H[. MFH(@LIKV MUIMW\0]7;L1RJ*+#'@1F#);Z+U_>])DV;06S>SFL<>]-;-K-^5 MH7_OSNI XCY*[1I[? #[XJ!H??1L/W1I99]1^WZ;78Y6-DNAU]NE]M&-5PP MJH$:U>V#O6AW:_KJ?^P]TUW M]9OAV^&O1Q!W48#[Z@!UM!Y]/#T]?O>6D.[F2J__=7I\"N#ZJ^.WP[>'Q\/7 MX>&[MR^//^AGC('X^/H#?01=[4/\80UJ?WAH1M*$AL8>-!1Q[C*D9K>H7GU! M^E=G1'.*],HYBZM:!FQ?DC1PUZYM\Z5Z)"6S.Z@;>TEKXL[1K_\9G!G/?LH&P.!FK+#/=>J"O$%?B,B1]::&,OV&6%E#.=@$&2R;_"7JHCVV,#C?[,KTT,"2_PP\7635+S2\OT"14)$Q% MQ,T!A^9SV2P5^F\S^&C;B[H^QR-260+)=G;?TFSBY_$+ M%D9/%"!+3/^(IXD'J9D/U/QZD'[.F#.ILGS=H,2DH@#?Q3SF<'YNYES#VYV? M:+,_/WL!5*!5:8G/ST&X"JK0^',VF4_":072O2E8+B<0<52F=GNKH'4K$WJS M7,J/_8-H7V)\LF1_CPMZ6SR";4L#Q9U7,C#S#O'%WK[W1:8<:7_M[W-SWZU> M%.BW]DWP[=]NGB_>ZS2=SB3.[[G[F;A^V_OF.V/^\9'VE]LY OKN;G0PH.\& M'0^YT_V0._S%06_)0^XL/"3_%J_LQ_Y.M"VS0XUE\=@L\XCJ-4@O2#>-LJ!. MXB35\T$WAD@KY==\ 3H#GW-'A5#/ZC500K)DO"\B[;1CY$\27^.]I_'H(N"O MF9U9)NN#XSX.CE^DDR5PS3_K<^.>E(2PJM/BG"1>Q!U2'1N?38IJ1M4$_&J,5'^?R:&/) LZ5^Q#2_2/!N5QM!4U.MD(IL+NP]CO+E?+3"VS)C26$UM9S*"I)@H M=0 ?F#;?Q]/PU^'PO?:T^IH'; \^I6#9Y]?(EJBNYY.IR/BA084E7@*.K!'$ MHT9#WFU#4@Q;7!(B>69E;5"&NDR+N5P04N>]BE@Z)V)^1N30JC(&&\Z_ MU_9FZ5(#<9G"4S/C1#@//=&EHU=%-AF!:@XR:S8N[!ABT:>KQ3'09QG3-XL_ MZS@;GPV(ZQN4_&4%D('JWG'.@9,6DIR0C 1$2.TH-\/'O B?^$8QWDI#9*J1 MNFGDS9*DQLFU5S8+",[)\NR9!)">\^ T+%+ $<559PEA$JT)?Z M;!X[.1?"MM+$( 7+X?&Z43?$'(%)U[94-2'A(\;')Y#+K'2+4HX1T4DQRZ\# MFT?;1+*-&_"]AU<-4[_2ZVVHCDF(F$..FGSNV%[:[/_?CX3O3K,'C>LN?<_O M;9BMCC_V(13(F!7Y=#Z9(*Q$2XCW9.[H8DH+\V2>VA)6 J=PI7'/S_XN,[AD M89(O2_7:S?5X]]A3L ,$NSAAVQZ<.-L>?B.YIC_YY!X7 2Q!E3A=Q^'I8;C; MVVWF#:V2;VT/6K,3BA!YM"HNZC&LE#"A4SH,_OT$6M[A>5F2T)SXZQ3+A,9* MS,;R;2.;R0%T@#FFF5;U+V,3-?OXB!-59Q;2I85RI[+9(\9F9JMDUS\F>F^9Q/ M&E'RHZAK;":,EP_-"*B.Y:2:\9S!ZFV&+EWK'DK>U MWHJE!&6AZ PU$@GDV1$?/H8"E!#/->HU!$#"J$9#9\L'SHM](Y//Q3#]/:H2G5K!OZ6EESZ'@*\^AL.,<(D= SR%=Z:N= M0[9$: \;>KM+1 J=6%@7#+W#:Q9='3W 'G5GP%,PL2LKQ&!EK$&U/P_Z:U#M M=[0[LI]?2DP>''-,_@$Q.1G?ONP(MF1#A'C?4*GS3SWS-VGS&)\PA+*"V=;Y MM:HT7J4BAR/,<9],"'X!]TH5=HF!S?ADY'QXCHK*JI.;,HL_VQR2B#<+G9T* MS97CP'R(+B(Y&C[5C2>5\D$95Q6I#7KIJ:[KGUT+*R5]UDL#Q;J.PFP<.;^# M:@>*2@Y2(F8CV3:2P*3P6L61C9-)C'[/S7T9S0S?RYL3A.XE*U<6X4[OV0N) MX,T,4>:>4EU23F%=;QHR32&XXQB3 QWY=>GPOD_@!QK=4&50)9N)MRIS%UMN%3?DYNFJ7, :/39:T0W=K<#\]T0W=&(Y@<72!%F@B? M'-U3$O"U-K:>E:6=DL:LQ>@FY;!59A@1,)+B'.K)PF:N26TTM"4'7'_XAF;)S,IZ\M7_B<*&B8T1M7O+_:,7MX28";;$?]O5ZT M?]#7*W0=$E=Q3>R?=$YX!8NQ.;!F%X$.1DZ_1+*1;!HFN]$&SX. MU>L42!CH52J.0M.)FI0Q%,;>)9$>;98($)B9 M;#9Q,N[9K+98$:YF4B'73?.\5E>$Y-MGM5_Z:9REDR:U?3B\Q"K*9>.TUW1!OVCTF\K7RRX77_Y@WP%/8I *RIE)UT*#* M7B,X'K1717!.-54T6CTKW;TI'6T860>XBD+3T8@W* J;MR>+R>OF_#)LU:Q< M;ZM[:2NUQ4AV)];[Z>YCU.JN%NT0JBPCOB9O_,?]W6A[=S?:&O2IEA-77,WZ M<7\KVMK:B?9VM\,5+C9 *8O1HX060+^C$N_ +]^*^EN]:&=G+X+/LK6Y_VPS M7 VY\(&ZN^12&+%#46H;FG+#T,+D<1>EE=(/14; M6_OA^WADGN0P-^Y&-M)/1BN.#W!=P#3'8X@2GEU#H8"'$DBL7P:Q-B7WMN;/*>5 5APP,L;CGL,=+2B4=B[GZKNCWX_VMP7-T[(>]_6A_2_;#[N;>,_BUW)/('\O\I>[CGO032;OB M:$+R0)*OR]?U>L$]U(+SEIH7%7W):ML]B';W!M%N;]!<;>;W2(?L#0X:%PM6 M7FZ[VV:Q[6W18NMM'CSC&,HMM<(A45:UL"N:1[7#0=,.RPNV8-'7Y>C3!3*E M;]#*5H2O-OJ[XN+>6K3/!V=+#3CW;VMIM[8B?"HMX;['5<*NC:$G:9\(XXV(OZ.[PC M^H/-+=D2]C/>EF#+JT^CG^BROE+Z"GZ=Y^-Z9CXV"7_=W>FYI=9]N]7K1[L-4ZS_:BGOGDCCGG5HLM MXB)HG&?@P3J(^B@V()K8>;;>0?>2BK&$K[5+,>MK)ZG*N);V@*?(=OJ'::;L M?*UDRFU:$?>M-+%[WTH3_Z)2*>WK>QCPBF3@B_/8A;&[V]Q^S16_@;+'G=1+ M/;M+YR:I<)@_P*#?P$QU3[.SGF]OO@??8+Z_@1S* (;O?56.YJP.^BV%/@;= MTAC;NR:6-C[)8/]QZ'M\S?@/MJ/>_M>/_][4/7Y^C7+P U/]&U]Q9QNIML'8O%.S/%V+4MQC_PG/2QJ?:C_G;OD;RD_DZTMV5V^?[@6[VE M)<(W[=LMLK<=L*M.KM?!E$NWM;7SD#+Q[>9+1',MC?LD*E.]\Z4N@KX5).3?1V$HGXA=> M1>VT33ZL]!Q?OQ(?^3387,N]3,.?24/G]BZRP;J+#%UD@W47V=-1>/+"K2^ M@;BPJ)FJ=>'&JJE:6R%!QOC'O:UH>[?'=<>!UKA=E:5ND6*Y*G?,PQLX>7+"Y8MX(A<@B-R6T!\\Z_WX?%QZ)41;45SM;N9*P5'6HF4JS?N M^$N:Y^'PMXW^_],L[4 ,%B^SR^,FV*N3,!R#H L#X-@67XI M4](CWNCW(-@\NRC/U\OHWL8HF8*@!=O_@A7E@O_FDG(Q^&IK:@$TB#!R>V>? M2O0=H)5;UY1]I(HP]^UUM0.-Q='9K3= 3W=OO1UNXNMNPV MH9I_]6FMIFF%[ 0B].=""<6T5SQ'*GNP^H/T#\Q-[".@5]#\9O<97>"F@7^' M>_5A('>OXLNR0C;P+\\_%F/]X44P3' '*Q7 J^ ]KX(U,N^^QOB2>N@#W2KU MTKU"ZI&T8:]$M,$[[1QQJGE32MUNL;JB.M3Y><7&HM?%^P#3Q34)[=;(L6^) M'+LQ;_ETD&-'7;QWA%*#5/ $"/&<]U]3I_2H]LGO[4, M=G^KZ:[0J266S9ZX8>S.V$> 3$+CD@GY^@O F"<"K(H.=A&M?OWP'Q0\(J]_ MR<9J^%XWK8NG!*/8CGH[@ZC_U4"2%T_YX;>B0<_$: <'CQ=#LM+R%'3$VW3V M)C[9W>G3 5MZ[-QST#_6AO9R?:V=M=@TKN-9H^-2$%E)FDAS)G MB99DDA49L>L1RYM(PJRCZ/L:XY?,NLU;G?[Z/_%D^M/P"W-67#+KF?VS'^T. M&DVM >@&MLW?>KM=7:TWHRVXJW7'7&";JK [0BG@];0V>[N3.?$$VGY6$\+7 M\XJ8].19.>F=GIL)&:?I]YC>?IA-?DS"L?4LD'E>;^3[&F-[9K\@(3XP1_I. M-.AO1\V$^" :[/6C?J__E?GP_OZV<6%I2^YO]CL*6)VE:]QC _7K#;I;)L\E ME6PN^U$A&WQ8Y7Q6SV(6]4W2LUDXAP@%)07;*L ,^V'Y;X?\B=OW\ZMDS:+> M\ON%7?=;VXQ[LQE@DPT82>FJP;CLR:Y'*6+.EYCA)ZU&5G8%P],Q8F[5UN"?K\%Y79_#\S+BP MYLV]6%N&AV1*\&8V;$[Y2I;@^8_]K6AK^\!X^]LOHH!I8? 'R#*18B%"CN;% M*Y%J>KYEMOCNLQ=$>N[;D=FR8>%+/^Y&.SM@X>O?.,S 69DO&]1@^\#8G1?6 M\"R.@@$WKA+9'8XX-$W0+2G6P4S>R0;.>A40PVJ*TXM'PXSC88MQW"+UFG\. M^,\#MK:.Z1R?-A.[O;<5[6P1!6(]54K[;V/;'DF?S-:Z3P9],EOK/IG'>PK< M^9!]F\X"MFQKH-I7C/$MD9;3P?!%,+5!S_BWO>T&QNO' V.#=XW;^Q7M"F3$ M]Z,>&A;V#B@NWP.#U (E8N$&?)L#'2QSH*-.[]D>,_2@7:?ESF=9GOT7_^H/HJV^,0/]@T7)"KI-W4A*M1SC'WN;>\W8>AESJKT] M=!X:=]\_,!Y?;Y6[+QJ;WN;NKIL14$X&^_L4I;_,\CFNMGS>ME;JN]Q:.O#M MO7YTL-M?&'CP-=.VS+Y^[;0%MTW;=G/:POW=S>UG:Q&?.]DS%=X-WLUG>5E^ M6INQ^V)/;.@+TZ:14J'5.I8I5^WBFL7 6#:'&&#,;KN*JV0#GV))-7M)"H>S M.AP6!32=3U(H=J$$8*6+ U+5GI.L&L?2DK+TE+9&)K#E_64W=<95!*=2::V1 M2'5Q]\OIT6$XSG+Z ]5'9S+F&29B[6O\F\;='T M7#L>]S;=WV1TW.3$L +[[K*?-ZD'8CAKG*4!-^5=I>%%G)!J%G:MR&]Q[FDG MVN[A6&V*=71^=&!.WEWBDH]GJX1$@VBGMQ/M[1U$ =KM#G#2WB1)T&JW*QJA MB.V24X%:LY9'<7VQI/[8_'(\&E5S$U19R 69&Y: -R.(KQG\BE\VPBMJ[R4] M1"ME".W%#0B?4:%R[3GZ5K>#(=ACFJT/^LX3O"VL6#F-:]1 M\]K(EU3I.'ZK(@E'BU?DXNIRE)$G27)-CC&>=2JK-! Z$)RGN 3GJ9.29.-$ M-HKN1*W4^)2Y-1VA+(97>T*;$&(V9R:^J5++9Q"YQ)GLOD^JS?1!QX_,#:7- M12[E^(:@E.I6UA\L1=;"/%7*NGZU?RM["SR=J$S#B3=/:8:<38EPA:5*D9?7 MET;CIXP[Y@$7IXOPWBVKA,4^_?<78A.NO82[C_&7=!2;/14,3P_#W=YN:(6/ MY]2]9?[DM6>9%Z*ZC]ABHEB /G.[ CA/Q?_.2+S8#%2]194%1\\WVU_\Q<1D M69G44<#MXVB?AU9Y0W\WRT8E,4I<3!94%(,D1VF,9 C42Y/+]6!7)S MBSJC#2^"ZQ-CG2[B2WJ*"_/]L3FAU#&F.XXARXAAX)/0=$8:\JRL*O/KB3$) MUPA/9_$GL]-GZ;1F9-TXE6^;.!<7,"_)/&TN1Z<\FYT7M8S9?W&:T92[)Z8G MG<[6.^@^T)Y(0A E %ZO,&[4NI-D(Y'S 4NX,:Y*4H^J]1"RBP5+@#:)67 D M_V$NW)12%KN)G^:%V6:;/$''!:&S1N)[-82KA3,D,8? -6W+OY1VD-AKZ#HD MTUN3JS@BQ4.,MLJHVL1S9[YOOI#$S#JALM+8C7:=!6-AW'%G*QT:<@S@0)3A M:O\G<4UH[IK8$,S@6S/$XY&]I+<*,^.LCF9Z0N:-&*=3SG&]SN\\QM^AYP#K MRI5U! DLNSZ+,UCL&0K?XAOQ\F.LT%V6?MG-E5D^%]E]R MM B:<&76:6#^KUF:>U156RUD[$<#\WEHKB.GO360D'$I\LS8AMO]'2)?9*J- 4O**XDQFB#40'P RH9S/+MK8MF]W=WUVKJG MX.^7N/CTT9QBQOEY%8](KWJ=CKJ_!'(&Q5!S)D]BE@6O0RQ]\PNHDA?AV]($ MB?MDP$4EH_-7\/^3G(SF,_ MR6=ZR-+XYFS^S^!H&_<6'L=Z?]U7ZI>2[>LM]6VW5+^WWE-_QK??*J>LM]7] MC+&K55S(C-_-JZ!=BI"@FDN8R!1=QM6U'_ B*9.DB+7Q->1V8RYK(L:<91/\ M5JJ5K)M92VAM]O2<&S,X? ??IM@0Y]L)Y/IWEF?B(WMJ** MAU05C#-:E&%\&6=Y?$:^#Z6P. 5$^1O7=>4(<)-,G;CW$9(D>)%<,+[ ?$7:H>!( MIZ?&LHZRJ1F[INSMM#4ZX'1YY&53GCV@+EOC^G(T+?Q"8:K6AD]CD43]_N9Y/',ON)H3#X#"U$3 A>@$6MM[]H M+CB#O< NMR,X&#_&>:?WQ'2651PTCNKI=@TJ[G6 M(D<'I'),C,BUYHHG=B'9%@1)L&?T_7BF-*IF?$&>?4K)5,PH-4@-!TEFUN>< MY8_Y==8AI=XF9UD1:ZH0N7E-Q5U1$6ID3(\B2_$JHW*09(G0ZQ&>EUR-,\NJ,OOHM_(*^5+E MBI5D/TQAK>WB-&1BQYWF9D,&-'KD]B?&F%*V/LVXAY7>UGD9YR[A\^<]*3O' M>',?Q?:ZCP)]%-OK/HJG1EQR**>!,7/!.V=HUE[W?0(,F8;R+$4MLIY/ ,3Y M+WE.+L2-S\KY3+U"?2,-TQ]3I:6;(13G"+?Z$2\!TKSNFP0O1*%I)'S95.1I MEW0LU(=+IMIN-R=GG3A*GV!L^X?Q?_9[7TH ^I ,C?W]^Z9H?*]^_DOC?OQR M';ZGFOT?2?CYQ0_V@V_[PH;M>PHDF1] U?L]L(&^1NQD7-4B[ L/*JS1]_#D M_8TMMKS?P\-N;^Q\/P\['*.&O^.MYWMY[&] ;[NU8\ZUUR;@)P$12I9\2P[8 M-KFN4MCVHMZV^?^]!1WC1\9ANVS\)'GZ9(??WXMVG_+T4X)H\!/?[I91?3B@_W^(]$YW]Z.M@_V'\E@!KO1]OX"L_P?-)@5 MEO!3'=FWXG3F.[_CVE1Q_FVVUXY90X-HK_=H%C61J^WM;S^2\6Q% [/I=P\6 MF)?_H/$<8'X>R5C^P)VUXEFU)&HXMM2[ CN!WJF6#I\PB_U@WQR6_05O;D4* M^^YAK!__J3S^"MMQ/17KJ;B7J?B6/M%2D0O*I89^.AC]LC?EA)^6ZL-@)]K? MVXYV;AV*;, T'N&))\ MC>[;K.#?Y/$9\6A4GX110E5KTE%9E)-LY.$,(X9!,J+1@A4M"#D6LN)@4A89 M?004 .:_LUDZFS#C[3"C6 M;*1< OCQ4&^]2-"XR*:)Z(DW@PP74X:4U:>H,7WH]Z_=VZ:G=CARP-R3 MU(Z*_BA]_41[0)#:&>&7IV7M8R(?YY;YAL 8#_W2@3WLQ!DN=_W-%PE"TRY= M])[]\)>.BD9OGAZ_?G7X\.0J'O[S[^"%\,SSYQ]&'\.3X]!\+#XDC_CY.^-L6 MQY_Y),/R4N+?$QCJ$V-HUD["/3$H".:Q%!:K9AL*F?22>IHRK.$-^BVC&7#X MH?,@2WW"*>D4(,$IBS5HDK!V<,)MAD/;!T(D-F,P?Y"4'-$\2B\1 S$;C&?4 MQ""\'_9SQ-TH0E--EV-] OU93Z"E]G_'VO];#JG]!S^C7AV_';X]/!Z^7OWT M.36GSM&;H[3([%&OQ]_^"T<'AZ^^VAL$7[Q[JW^>/SV M5_J"-7>>S]Q^K.#>[-5W(C)2%FM#\:=U8FZQ"P=_8!B]Y\S"N[L1?9O4H+VLTI5&]MA1"XO>V$Q[OH5G3 M>,P/^!3&^$U&]VY>>2W[$2=\F0 $]BR;QAY+=7!XD:7C\(B8()#&?C<>9R,0 M08![G_[F>(#D;Q$5"5)>3:G?,PF:NY1),1&))VZ)C?PEYL@6(F[&),X0D(T* M=P03UX9*QDSY\QM=:&4T &DSVO!3N]29 / +GC+0OU%S)S.N,-$%&$+IV>@6 MX+J(5GQ,SE2@K.)D)$7N4?@SN,IRE<:?: *M3&Q O:Z;7HGNT2WJ)['QSGY^ ML\!B$2RLIV-AG5&+R'RV;@.<*+6R/O/9DWCZIS!&]WJ"K"8=T;)@AFKD#M,: MIW]67VAU2^E2Z./5;+!$CY[,C!")SH'/5-[>P4^ML*<+O'CWMV.V">S.ZK&- M/>.)_H>K%&,19^;U"(9I?Z,EJ;F#V88QZ(^8 JK>!QGH,728OWJ P"-G-FX M=3P2_@M(VF?&P-9*Q<3N&M-8_?2D0J_U-GFDVX3/C]57:>=!PW"=QMJM/&%S M0)52'*Y &4%A!SH?,_^46?W^RXZCFPZ>2 ZVF/EF5*%"N/6(T1&D+_7JH\#C MG:4X,B?&JS$N:7[=-8)X;DZY*OMOW-B_K6/='O@_?<']B^0/V?[K[?MGW+[. M3YR2\ [[?:R7:!8VA'E&Z@O."UW4V-BC_\PS/IVBU<< 'L"R\H^VYLG&.[5; MGJ.);VSPB:Y\_R[[L?FD3M-[#12_S9%_$YG@SII,$&2".]\=F>"3V!\/+(]F M3%]&_@N0!,8ER#/C&\6"B5XY4\)J7Z0K2!:<#"S9[7"2U9Z=0]W@W^E('9( MZ&"7A25ZUT:*V+AK0HDG8FIA2[N74@N EXG5EL0J0[E&Y03I'IOY.>.')BH= M2L\ G=% @9.(MX"_H0R5\H>)H=4Y5I2DT-0!JTYIY@ W)BFYC! :3[#&^MC& MZ!%4XTW-1\Q+W5HVG=4%7;_!K>OW3.L"HRJCL][E$CFA1]TES;3O!J4'SQF( M\ZHR]I2DH]![\GS0ZV^]",W2GS> _69OS5+:=*=(7++Z% L M2A76Y =;:*/#SLO*>9VK+JZY<)'..NZN.@V+(_U%A -/K8)U^[8+1V[7;=^: M+_.,1N&12MZ^-S26[$ABSM['51BP0[9CO W.](42T!C%0B*2L V_ M_EVKNS6!&"TQ.-2SGY/$!JE[S?-B1Z&<;/&<-MX=O^OOAW8%"Z9(>;>+E[+E MT@07#84?[Q]69"M%GE0N&"FKF9W1(+C''%] K\&W]KK7"5S#VU,=7(=- ^ZF M%:,"VT]=]7<;1UWS%4SATKCVK@RNO_T:E)V=H63/*E5_&52POH$RRJ*"M%#I MFK]Y=\TB+K]4[9GXSF5JQKEOX]PCUA#VY]HZH&:0-Q[ MG7[AE68I7K$2L,:\U-H\Q,QS/F?K[7@=3XA(&25BK1&/.3$#*A46;R'[$%Q5 M#6SYP"2!Y9X $\[ZU =":QD#V\D"6C(5U2S$RP! YMI\H((*FMQ3??PV-@6; M_S8W(R)&+QL/[ZQPX4JK#MA*,5KN:+MO)5W1_66@7M,U4-PBS"Z;X< "<7A9 MK! *9U#/=DJ/.WUY^;;&_%3#-$X#B\53/4U'QP5 RSM?;0I.4>#?0+*>CI/Z M.P:]M20XQ )DIX,JVW&H$<>VVKDDM<1A\DO@7$.,D9^F,SJ%PV7\4_XYI:FO MJT(M^]'IF6+3^IQBTV3K\/<,O/.*VOG>1*1JVU79OK'!N\J9U ^F ,R1M4YD M@&U01V('W]W"U0+1/E>:R7]7ZF*%%J^[9,$M*Q R';LK\7"6S/07Q/5.F*C9 ML)U)4)6588S&&\X&TJE@0V3[?LV<"(P?X< B(0/G#WBV'M?H-JO3>6+; 1&+ MKL\W,"WBQN/<"37AQZ2XC^;6(WD.ELWTH>V &_D KZ<^'"+1Q@EA_B$I7JGG M&G$8?$(;5SSBN)V10=^P'80?0*EJN!7M;;4 +VZL*X3F$PC%BSA[_.BKZ\U/ MU;M4[>:R?O>EU*S5;Q)OPIUC+,WT&QZ 9CIVZA[Y^U7\75QU_H@@%,NQ\[[? M>9^ZJUZ5[BK8G ^"H%J[NA$^W]_5&I5:&65"0VA^*C6%V[OJU^I-4ZC=-&ZK M[!=':7&4%EL%8XRHG\>5BN0GTMOGMZ6[9JI6JVUIJ%C"I'V4X/%*<$4.6VBR ME("4O@-A6[]KB*GJ]VKYG@X:K%]>ULK5.S;XJ5R_NZW?E9I5X:K^M7J'@U62 MGZ5RB(+Y-2-S0]]T;ZED\?\61/H"8YU2$6.=A)YE#B*3YC3EH-%'B7545(=)=5^2JKLE*3*Q"ZI M;N]J-^7:;>DZY<\!%BZK53ZJO'KWM5:>'?=Y%$-',;0?X#W(A$8[_%WZMBY. MS%&QGN0CJ\O6-8,L2'[X([Y9YN.K!X-C_N.H26;()3^E2;()Q!0_U2YJS48J M/#;>6WXA-,J?JI7[ZZUHDUU2;)!"IREX[7N%!B/Q82AP#UT=VN2CX/[M9.%: M84::=(K'#!FF<\.7^" 1L?0SGO>\4]]'O63SL>ES%2]VHWD;0NA[W!8L-OZ" M:4W5IITQ7JLEJ_[\&.*G\&K0.)3DF]2V[']?.XA_+C[?R>]3?L%VPVOYB'G" M*+]%'$/$]@^\)^=N#W%/J(%M@F/SL(_ACCQHMD/G?]^.VKK6$4I^Q^&E9@V2 M*XF/YUKEX!"Q4 _Q_+XE+ '&EMZ#NIM/]WBINM]4Y+8'_:!]PM4YE?1OX,ZT M@[MOZJ! ;>XL"=7?(^QW^F-@X#6OOS6\8W.[G7),(4K2[^.!DP?E\M%[N>/H M/1R]E_OC1N_-T@L'L4;5NC\--=9>HZ3M/"72SA,:G3[I8O^W9_#M+\^^M9,M M[#,/U$J_M7OO[\D6,5#Z?2KD_ K5E[[6UM;R>_?FHCL,TD0#>>9C9R@E\[ MQ8/"9PWSV5*'?PD1L9W ^__[ZC+[%4+2'+#M,RPL!$#EG*-O4R#KZ_L!@ M%9%K(?A9:?0 \!.4+/54I?=GTZ3QENB_Y7/ D0>V ND(+B@AD802 MI&TVN1#ANO53.Z<&N+CE"%[YR) IM+]$4="T51D(N%8IB/Z $6\-** MW'3D),2OXG.2[HWG8B(\P)WT>&41(2\A+ M165-7E*.O+0RAM,^+Z6/O+0%2,?"2[YCJH;R37Y-W,D?>61FC69]WLD?>V0*D MM\8[F6<)2K.Y;#B8=G1_DH=RB07&Z(VPEN*.#>KO"A?C4UU] MMJ>":2O'S];S4NCKD>0_E'R:OS&?6+&'DJ%4+[\YJIRV)8:3ERL>M52#6=/<;PV1TKLKU(1_R[E/W1)3\ZH M[/ZR!&1RI),M0/J66'1M@&NJ\BK36UW%B>Q2<8DT*PWI5O(7H31/R=_2OCZ_ MQ GDEEOE),@97\F\7#:)*!.P:/#94]/A!)\,#V\B.YI.ZNKQXO%^2DM5VA3.\)C@5"F MN'%:\!4Z=2J5 JMG?CO4+V>D=$Z692DCYZ4,Q8F;N@3J/U9*; 72)5Q1[)-? M3[@FJDUFLE# )++H;@04/A'5B_,L2W4:L+UV>T96Y T)T"RFOG+O;SY MK//OB([RU\<1T9!_9X(A0R%9@3=F$&2=N M#-%E&L__DED+BI04XTP'$1G^UX\B_G$A%:F8EQ@^@_KFF/_= J0;N.B$!54H M"RUB'XE18*+L$S+:%FF>M2(O\IY'7M9':2:=SV>*0)E*(9/)3#-/YFBL;0/2 MSH)4%EVF20!0H"YT?*-E\UD] M<$<@0:9W\._81S%F6[$.\!0]!2H 5CE5V6X#TI3FRG/Z6>&%>K&ME M7O"FQ2CY-\H-11!7.24[JQAR1VY('M*76F]KS/!JQ<#2C$PMO+TD.[5CHQ@A M?V2$Y"']387O65[@JJ&]./U#X G7;\B\3;\!"R*R^6Q$/+=PY(KD(3W-%>0) MZ/$@^(*&E_)O+8HJH]] ^#)^H=QZ2^1.&-\@5H M]DP^'Q%DDJ4C8R0/:IP@@+D]>B?&)93Z;[3M*@W&$!NDQUD9+\^-*V^1/0I% M)1/XT:FBG+(?TK&4+T&6.2;,=P3^>6S4W++MM3D;\0!N<0D?1>RB\$84SIN+ M&OC "M-W\\?INSA]-W_PTW?GT<5QUF0B$JN0+A8*"D@L)9=6E A[*LYZCFT- MH%Q#3P0'4.X=!JHZ<\,/)6P[76[\A@PKCJ6T).73A4($GQRK/;8 ZN8ST0\H MC<%K --OK5V*8R@#GF&Q$!&51DD?)Z6L B<> MY4,R'Y0,G=Q0[\%O MP2L>CBQ[I#(#S9W=E)84E_D;JM56#6*?UE]T JJI0TE&D21EGXE%\8A%.1++ M, D5\PPLQ?R1>);!J!GE:^CJ,R8YA%M3USHXN417Z79A M[IO#*+3"]6F#M5@2 R;T20/$DSI.EO0#/K$ZA,W M?>!>@6W&W#E#SVN_B"W6[59O@+!FS[%3],B2?%:[:?R_(X+<GBB-#E M"+U6VT3?=US>WE6/N%R.RUN+8(CU .1MYHA.=H@R.IH"EAZRX6>J\),N>I5^3DV.0JQ;:CI=4<@K,&=K+7=19[BXG' !%DYF M288].*\,7UZ!C4BJW/QQES1QB;.XGC6G'\U_*]WR%3>*^4I?5 -HE::*D1PM MM8-_X8$0TQH+0QQ(;EJ":EFJ\4#F"Y[$+QXW,D>6H=G])0B=Y;MU:Z3YNOJ_ M!%Y[^W\D*9TNE^?R9Y ?I_EU[2.$WSE5MCTC-#)8"AU@:>"\97B=95E),TX^ MG$?\_"R?U8RPO-5)SWE->+#-OZMU_W?2&6JR]"@K:?A/E93"B1M]JSED(,BY MLYG=YZ^A'GCU9?WN2XH.06KRP5 R7;VNI4O6NWFC>W9>;]W?5ABC4;LIG0NFF I+YHE&KU$IWM6H# MQ7.LX-T;*.SR5I'-)XDB?*[*+_HJ_Z92_9YJUH7+VDWIIEPK70N-9JE9_5*] M:39":OHMPRJ*+/;(#US]Z2MYC&L?MHAGC?;^W;3S_PE26%N2Y)A)V2V.Q3VH M78(;G5C)+)9+@E."M0YM7>L$4\R7FC40WMV62_4+H5;Y*/C<\-)]:14EI46Z M1#L]+8VZ&CAP^/%:M]7!3@U)EN16"_^&%VI-FDK)*.A*Y5-#@=-H+Q\-T[@9 M#>"X'>H, FCN$ J7ECG ;YU*,OSGF/3OLG*:ED\$ XR _YW &S^&7GA"3Z2] M/)W*4CJ;/CG/%/_^$'J#RX+O0^RH1@=N-B#$N;B-#7^7I\I"1WAG]!TI9CA[ MN\+H3%; &TM0VKP*BPEC;D'V?Q^1%[?!9!K4[\#R?GI.OTK/6Y5E?YQQ9O?U M1@>&S",G'@KRYN%IGG&@Q F8(),*%ZJ.>R*%1I\0Q^8[)[S)JFG6=9:F.05L M3XY/FR:N0;.'A?HCBQX&GN:Q:#HQ%O4U)_)F?4C8\DD;,X"T8O0'42U;J-+6 MU3?!NKG#(HDCZQX&GN:Q;F9+K-OHJQ;IFSKN9.(%YNYNYC?+ROG#(I$C*Q\& MGN:QQAXFL>ZN3@!;I)R86\#Q47&]QV.]49;XI1DL^@\_PFDUE\#^RZF1NZ'4+D7K]<)4K2Z-_6H6B$'38F8N%L!$#'=*]H#Q M<,;NWP'L4!]J!AU;P7J[HPV0=L((_T:$OOI$!!73Z(3A6^UT6*<[LE<]:(-!%ZX5!OAD GGXD>^;N',%R[$7\8 DO/ M0YU_-N$=EI^@U?!$]#&[3M3GWI\!O 1S9,%-*#W,_Z@P9(TY0D_5+'RF9H * MU0'/('#@HRGX]1#>:$\_8FC:FCLA)8"%%9#@P\ >Z0SC&O[A!YKQ$_@C'Z2I M^2"% P/@L#L%<8+%[Y38N"0?6AJ<=Z@#E!_8:#E]C+\G=/X&'X' 1\91'J'G M*=&Z#O4-R!U:F>.A.WG>+]E"5[,[(]MFX$7'2)"]N911)"BF\#=(&]$42F5) MFP#&+7=@(#RM8UJH. 15&&AV<%3%&\#8A6IK3(IP>9X\WII]$ /1\ ?YY_+K M$+A3:VLZ<%HJS/?> ).!UX5S)M1! H6_)6A4VI$7%#O(Z*Z$QM#)S3]7@ 7,P/H3 M"'U<*<3-E7UZZ]9X\!H97" UBH'2Q&I&TB: &;D[Z7"]2I89-4[L*; MK2Y5AO23.#U(Z)$N'8AILX&8J/5T]=DWI-3A$$Y/2R&M$8HY/ ?V>X,+ M&_[WZ::DETX?FZ#P_T9W1"A_618(#_BO M9\%!\ H!0K/1Z@B1*4I8$7YJP77@77 G8CP %W=3\$M^*]3;_%9<86OHDQAP M%-IM9^H"[1?U&=:B?A?PT9D 6F&HLNI0#P\BOF>:83BTX%6 3F ^!#H\ 87- MRJ\3V@!4O*)K,PQ'UA!12$=OOOZ-\!I]2!S=?01YB0XW3 CS.R0+AKRB&.@?X "5?J69C_: M<\G:14&DT;"8Y,4@0TX? ?F6J25*X [E;WJ4,W O #&!#WO7(2_@:1OP*!') M107WW'90$6EP%/*D=6FT"N2N2C'.9, %0F3MV@4Z:;-GSGW6F>I "A5W38# M!WA2]9'J> ^/M'%'-A\G#FK+H&/I (QP4FU 3=N!VB4X!ME7TG0WB:Z1)RX= T(78(I0 L@%1&';,W0"S@KCAS<2 M9SG&CG9PLU7>/XV:!7'[M'0,T=.NR#\@1/\68O1+_MT;K"+F^P6";_*M*:]MM"O'3/EF_3X&PW.0[B[I )HWLGO>42/ MVC=,,]OXV*#:IR_G]V'&SH*@"'WZ.^4]Z/\G4W]B#DR*NHX:C6&!^Z;K8*93 MB\0>M7\QTQ5?BI%6G;P(OT;=!ZZ8*="].W$]/@<+79,P%T'5X=_46P*W 5@V MJ*13YGPC1A0<]9$8:%&H@'53)\PQW=/,>0#:%T;0:IK%C8GDV:&.X)CC\@W8Y7]K8>5(94Z7=$P6:?W( MO"P4QQFM-3(1*,""89<*>N>TT'KJG2:^+LVR%0UPNUDH&W_B,7SXK@BN@ZWEUC M7\1/"4\>1%07(C-?3_U'.LMYWP['PQG2W:!XV#&W "]@M$^('7%()A!T3:5Q M-(SBN-XM>)6$1CAZ(\R5H,-@#@A^,X4)!:ZEZ2GHKCHNB()15?Y>+QZ^2A#N M+$ ='BQ8K(*;^EUZ1/X\)?^I:LQ?1-$C8;TJQ;ZD\' F?CX(UP(%# MDZD63D_JDZKIU'%AV8\GI@0,\/KH/UP_4.1>&U56[#D6P5@B>'0L"J'9S,M2 M7^CC *:XI,8:@U#J\0TU-I5XOT*X=3_/<"P*(+XP2V)98^0C'A147TXQ)&50 M2>F@G'S0.&9\8+\!X0;.)H(;IZ\C\7@NK4>V70+2'YQV2J1NO!JI@%8-DC8\V"+.7^'/P M$.#8&T1G,55NJ]"3VH]X=GS^HV$^ZZ3[\";4:U"W+@^.I0)Q)3:8R?X)5U+YF15I@B(FWUVHU!NM'=6@J31_IHA;F6@X[:EB<(G B(!Y2C@2#7LTZCI&DOF M/B[BO V&N9W1@N#H>6[+:KH;XT';U"EU%]+A NC-1Z\MN-\](YCN(IGJ25*: M\F,2EJ>VW+RG:07,02_Z#ISG6GK$-VCG$@^PAQN-7VSVT',PRF(JCV85J5); M0>F%#3S7N%,]TXYZ_1A)GB,#9T<>QC2N;M=*9@T?[@XM_!';$O+ 9F'OUF%3 M%N9P4A8_;["ZA]7U1%00/8,)]I]"[BSK^E9!$?B?@G*6]YPN>*G[Z(!W,_+R M?IBR \E.W$^E+!]@0*5=HM.<990#NC GA;\9J+],B_L6 ;+^O[;[,C>A"^2L M@W8^12/5FUAJIRB?\\P5\R_;(-AX,A]7NMC4WO7OP"Q3CWW>:>\%&^4TBG=, M?MM,=!@F"^@8C&E!$TR7(-"0DP9?[ZMV2L4"*SA#A[#: EH& 5^PV (:.+#- M[(X1Y<,A<'LXMP-O[U'S&4F'8OC9M!ZYK"8I_AG M:D"GN;@P(C!8[M(_(-V+=7F OGV* > M I+UW.QB"G\3-#8"7M! ?:1&KYL>=;F3S8ZVJ>MEF\!/CEN>$\$:PFJLD?)8 M@V;= S[BE$Q@:N^)E5[8)/"B^7[@&8N9HY@*K0!VY)=Z6-6[7#H.>GZ M&6%^B,"S(URK270E)U:Z,&7+[:B0+%LQ-+ U777T+)/W+(&BVGP?PW0IW1P_ MC]*=/4-TOC-)*_"]N?JN)O4-<*1%%NQD]EU ,>(W-U?GOJ6[T,,[DM4VR.J6 M88O0.#&2%/4E:"T<#:D#T>DV*Y"S520$S[3V,>Z:UC86WQ&#FO/@F+Y^''()#^2P1Z1P2]S1*MA09988R\0&9 B7%([C.>5"OSQ/N1QK8.0W4YZ"&=1]XZ:]@P\F\D$B*AA9-(ZB\ M,2J"A2Y#"^,T?A<6#:6!:6>[J\!8_OE($;NGB(#,!W[N$_@?%M)R%4"T-] ) M+$?U8^FI0"P]* 5H%?\1V3M'=I0*H*TQG//GY+WQI\& ;B"$FZ+Y8GR$FP@/ M;%:+13&\)N+ _N^,KN)Z\\,=/M@?9A8DE,(+$C"R&+T>X;)8KES=W+>OC5Q\ MZQ'P=>'E")F3\[O&%^&^(5Q?W\Y9DG#XF'#'6]C$>F+;,,-I/C?:;X/Q15( M0OD-I(*F22\=)KUKD_GNT>3W_;M2O_Y:K:IE-3[R\X=I/8J" M^[>=D&()S"1=R-+D=>:/2>HHQZ0.WCOS)R1UW@Q!)W6-Q*>?K;4P[BW<^4UA M;^[L.L5K3BW7;QKUZUJEU*Q64A>EZ])-N2HT/E6K^[+[;3LH7LU_=*V3M*2T M9!GLCIKZX^EGI3EZ_)P![W(T@(N,Z4<^^O/0A%,A"&0A#.0-]L?-71DWM8]X MT:)I=X'\]'#8R)&O+L"8^QC"P3/!LBU\GM[U)^2ZR)6#X Z.HH43(_3_=Z+X M0,T4,P&++FL5]7OCZ^"?P+N$O$&[8' MG!P"1V' N7U^+G0;'?G7?7U"[O\_7(SSGN8AH*C4: M5"#R $H4UB(8B&WLCB:0X.=HZ>,J'XQZX!X=)@+#T@R&RZREVD>T) .J_WE* M%ZS+'Y7?_?;:J'X%7OEA6#@5EBO0@1M, MQ<-/0\-5I_^-%M33GPH?@8'O/_.>.;UTDZ.%!R\ND3 M%:5B1LP7,VYAT[0DMW!OB<)$WQ:=FL?;UU[_#ZPG);L"GWUA *A[![#*D>WK,'/+C MB]B:D[!<7$PKBT":-&,63LXS8CJKB'(QMY2&=J158H9>C!Q81.@5LGDQGU=> M";T(ME,";%3OM:%T[]40#@*]I+V](E*2?A0PO@(4WG._>:)58BEH1Y M T&7%G.2)$J2%#]O7 1-1)ZS_:8Y_3(OMZ3&]US-E!G\:N9_=X>/U]J^:";W M$KPO=/=::06H)JR<XB7COOJY^F_'Z)5_ M[8OZ K#!*X(31.CLAAT32 0HD^:K++@$<=@\>P^S&+DK%Q/,(E@K&V"M6XL, M5:U;?1D2PR8EHUO'@N)0!'F*T:1\^I=2J_^^K3]N3VE%YD%69D1^23I@S[#Y MW@3:+^D-'F46Y@KIEX7!M&6YH55)=)WGK$3"*Z Y:2&0/SG/Y0NBI"R/J+H4VP%F$:,K/2V.A$&J"%'*8%$)IU"'=UJ0_ M;/XPQB\OVN,F)O0F2KZX67=RFV,!P M8DXLRFDQGY:74F&#B<%N&YUO, M5*<#,KS.5@$:#]?+@HN#+T:1JH Q M+&:5G)A37AMI6E(KYSM4&M9)N; M,&"BPMB]!?7FV<6!PU-L15Z>M=_? M2Y8BDWU3:NZ)=TH:[B&2YJ(\2MQ\ 4"9/5 F6@BI&%FF$!^DEJ2F P'%&]/H M>)&V(/_HW])?A\W[NYM-HOWK:*7-0OS,4Z.A_#<>PH]$5M)<6P1:+!3%?'XY M)1Z#]NMA*3Z)49!.SE%!Y3.)8&FE?B*4&CP^3\7&_7U?^[>?^]*YR">B=E<- MT4_?5SG+KBY76.1^Q8C]G'>M3\;T:T+7'+5ULK2=;$Z=_NL?O$88.F$A5)#! MTE KKYQPW1?7F&8CXW>Z] MC?3OU6&65+5<^]L52T:WX9B=QS[0 ;%L##(YXU#WZP]-_:?\Z\?5?;6[4U6U M&GUM:LU9ML-D0GTIWU4_UZTKUKL&GO@G5?^]KS1][B+:].LR2"OH M#46WTJ9O&NU^F62'^B9T$[_D<"L, @<_-MJ^LI.:]U'=JN/(EJ)&N=2:E)\N M+H;=J^'=CV1,W=<5H7K=?4-VA\V0,&-UK&\_1((R:=,1*[HE,5, >T)^;3?: M7L,L1ALLYDV2M+V4O)9\5<<7F[]5Y&==>#78QLE@.O5DQG,F*VF$"-=RYD MR3A\&<<=H:,NH[FL='/S.TLZ5X_/FW10)*W'_$L(MM?!&=@SDC01K=8=*TN% M@^R.G4WI'FM[*.&,NG6+2H^=RO,5X9OPIQ9Q'D' MP)?I[/+*_;WDRU=",C[N+,H@X_(Y,9M)H-4V;"L:! Y?MDA7FQT40;EP4JD_ MCK[4I=J7O=&*//(U-"UWT05NT::["^A%=FQ;S8(T:<93:&]V+';5OD,M1B:C M_?]*4M9H9;KRYMHT'IK$&E1(>PZK*<\5I6TKWR_2Q3U4>%%LYRV'[,*E=DI M\T"<-.ME3L[!J<\4#W0XRUI@BY'WLK3J32Z*^5P"YF=U;D_2$A^PV/QZWWPV MBS]K2=>_K M!? D)5&6EG?+'>M0UT%1C!($:X5E,;U"TC">(M0Y!3^S R-0IJ!L>7ZZ:DW* MSNUO7H'^='_.$%6)>A5 %S1#$:Y :#_ 8E*M K/WK#'THC M<_?0V;6'Q@HT0Y%'VJ)._QD.ENPXK#T+U:2%L0+605[,'?(&- \K6+*MSKZ,E,'* M"QGH*IL_T.3<9B",D3>S=(%+/@\T_-KBMV5CE*:#LG.9\J52A[($RU3DF_/-%V S::[/G9PK.3%36#Z+X1A&V015,4J7_,EY7A*+A>72 M.9YP2CDZG!)H[$4!,U"O2XWJI#'ZV9K(%,%24LG+.131"5?$,$^V8SLDVWS_<-1':-T*P*J ML\#WX->L$)N+!]7;:?,]AH+B"P5E0@7<@X'FT+U-):/K5^5Q'55K3=K:X$&_ MOBLV'AZVGS;DZ4!6I.V=E,XK#)U5>&<3(ABF0P0Y]UZ@JW_W$!E[=9@EWM&B M_F[:J?M=^V&DO_^4KWYL,@-L*SF?1E^U"+^#U\9-[W+LX7U=DR%RHVE0&J$% MNWZM0<<Q9#)86!>]ZJ M5MUJ.*I#NO3*M\2B]-72:JVAUFV-0!W?TI_8K8Z_[3S_^>?XX8M9UAZS)X*C M.7C^X E$.*4E/.$3A7>:(71-75(P0(/XSL*UTK^LBQ'; 700TL>#FY^WI7N1P]2J/;_G/6QBZ[^U8PFUG[< $ M;>6$6)*LB/D\[@2,"D/FR7[N(6>;G8Z2[N$^8IW66EG)B/G*JPFLR#_QD2^,03 MT<O'&#&.^*HFD&Z M5=4R@,SM4J*&:^O?S]8]F/EZSA]*)T:@3L!!NBE#CA] M_6XQ]2Y':#PBP(8S_>_D=!$9XVA762Q(:3&OK#_%=TY.^_T1=:\5/"N@#ISP M7!$<\(Q8C&][Z_N5*A%F8_N!Q@X40<&"A,ES>92_[JJ3[S$V:VZM"F%^"N"8 MJ9YFCEFR2-J4R9R<*XHH%7 ^SO(&TV-MPHXP'J/=A5OK1;F8%Z5-UQ]O7J$P M;SC+XK'67JV6+Q)SF:%E7%UFU&XR!MH6]S $;D_C&+'*R[<_P'\9\20M0'/' M+0X'2@0QRM3\#O<[?'"P&?H\E?I[&*0)D-420+FI#4"NW)!GXM:I=2L5H2>9JA&1P.-86.JG-9A_?VA[<7)8T; VP/]'MZ, M'>'_.ST5+C6B=S\*M^H#B,0&^3TB1@?.G4[_)="P.)Q,.#WE@KNK/:UJHP;/ MFHLX:P[A,@V$X@8PF+U?%%Q.SB]/@_=U;_J7T!P/X9(E"P1YYR_A!L0[@\:- MB??.!K_TP?T6_@9A^/<'@,@L;(;P]=.V1=3'TS8!9H,GJOJS.K;7!LO&MW4I M+GS&X%WPCA2SNR5%_Z )'B19[@;I6;ZMI4K5NWJC>7=?;M[?51NB4+LIG[&5 M,O<7C5JE5KJK51M!P7G(=]ZF1$L<>WYZOS/49.E1IL4A;0F[A?D5@QHQU6C" M'U^J-\V&4+\4ZK?5NU*S!A\X(G??;@+(_4%4RTX1\(F[0H5TR*!-+"$MBP*Z M8]3Q19-\>ZC;O>5![79XEZYSAX Z&?AO^%3'_;<;,DE+Z98LIUN30CY[_^/? MTE?G"_@G]F@ %QG3CX V=0U#X31L.\[CE)/U@26?^6]D9/'DG)]^&DXNC_UW83S'^]1*01J/;_^[0>AE RB'HS'X M31J2DV3XSS'C#<\53LX+.3&3RXEI97F%U$*X1?/CFT6(PA 2;Z"L".A(B^ET M5LSGEK?"KHR.;;1 [G&KT%X=9DE76]FTG7J/$VEK8'-Y>]?_7KTUG.']K;[3 MBAML3K+IV Y;U6?[Y@^H#F-9V64 #5L4R&F)%EW@#/]<\3BN(RYD)2&LX2'G M.4P3RV)6BJVTZ2BV]_,P$6*[&!#;5Y9IV[>6V<-:R28K4P*YC?;RY5.N-=%& MHYYC X:T;8GODW-Z)F%(#[738MH <+8I2MGL02F7%7,KU.[L91GR,L@E(M=P M^"#X TAPN==NSSV*L/TYS))AV@VBZZ"@KHA!+%4O&=U2=Z 9&HY4P':B*EMY M2TU2*M+N&\:7CO5K4,IL,E([3I.4GUP4'MC9:;A4#9U^9F/OFS."5D/?-N5O MAJX)SF<+('\WG.OTQYFRK\!B(KH@2Z?[9P"/4BZ1)0Q+@I3>M$^V:0,W\[GV M%0JA@5J[OBS7)S\_2:W)/S^4[S_^+5J?K_*)MHAY:S]Z 'AWU*QI[,ED61]0 MV^3U'*X134MY;!BKG!5>F?3NE3(\85)JOWM$04:+N'=HVK ];* M2[JRIM"S3U/%XK, MUO*%$,:SFK^^MR92K_SO<^XKN1YO;2>W9W:Q8D7XPR ]S4'4"5I@#]M.K8@$ M<;%%H9/!'4IB(2N+^>*!;NW8-B*2D"D9&65*3DF+4O&U5O4Q$+<_AUF2 O9( MDNNP"R;H:.2-"E^[2B:??GSZ-I34'4?>+EP9C)YPE!!^BP9&)';BE\[+._0S MF.%(B^E,4AIWA!G-I9&Q3=V#"T;@060:!6%HVX^G/7-LR"2%@FT9=AN9#%4F&_U]? M6@1;MS>(R+]MC"5B_65/SHNBG,^)BK(\*+@1NHZQPKT\3(0$+P4DN#L:R)T# M?:':6J_5P95Q;C<4A($AVQW^$10/,UI&X^S&51GN'EM5HV$ M3 $TRP[Y1<[4S.9"Z9YEM>]';A.2FPF\]..9/SJ6S?&QN\&JL5='T MD4.Z+G.-U9'9R]XW'XRM![UFV*S+CK8OY,$AM5-6PU&O9^EMEWIM%Y;;8;9B MO,QVC#GM_#!+8D[?:!<9Z98 1SA58(3]I_7>S"1L?\7.16OR\U9Y_EU-VV9U M:YN7^,H<6QC9I"O@Q%US,!S13;]:M* \+M)9GS(*&U <(U209E*:&RO$EK MCS\Z4O'>3'IBC@K[",$?5:BX[[3LBPJ\H&.:GX] MH%\3ZEL-S#(#-8=_W#1!H,7[0OPT'SI;BK MC7J4B2NO,7&3I:YYX-P9(RN4PC)Y62SF#G3501R@3IZ5T[&S#,3 MC8ZCXO88Q\LGMV6.D]OPWKGCY+;]%"^[Y][CZ+R.Q_[VO-'\(1V_MVD^,LN A4KCL+KMR2Y4QKTO@F29?I>C'??MAP M%ER0=?ZORS3O*M7+6KG6?+\G\^'6"(^',!3#F+05C;45)Y^Q]5I_MZT/YP*= M4LZF_:]23;C&B+C7S8.[R+<":VHX$;$QZG#\H6F@-U%ZT6S_8X&M85\H,[@+RP- MS)'AA #JP75=EDA 9LYW.9*_,I7?]A#K]G.[_BEE"!G8^W?.X,IHND*VQ ]-1)U M\?:V1FORV*]FF]VG.^,JR9&AZ>Q_,?VGJQA&41WALVJ,P.P3F/D\,U@UAOF4 M4_3E[=\NK+Y_NS&[?WL*NJOR[4*KXYX4GZYN[()S)7O;O"\(Z$'D; Z ]H[ MC:?.;=_ ?=7(S;57:\LL=N_>I35SE;B6;FV]A_NF*VW_B M0L&B"N=LED-_^7;)/QCR"XV=.+" *[H4L9!.B_G,\GE?AX&))8U &Z(BVA:* MLS$HFP=D%$2Y((MR]I4#F6?4_Z'C(59 %T[.LU3P2_E7"O[IOJO7UCKM;ZG8 M\3#'P[R^O#!=7N(_A%L4)Y_JM7\'_Z@#NY/,KH'9\\\V(B8&4/#>E'U!;RC: M=&J3SJGV M\D[+/B,*!HEGX+4?RLDNAQP++\P'W58B/#WEIW2?GSRF+])>A.?5L(R,"&WF M_JX-MC7%7&*1HAR6<.-T+_FU([%W).0VXOWI'E5DR.WKR;' MJA?([^L%=D7V<1!W.@[BCM#^%TNT?ZF+!2*T\KEISHDP4BG85FW210U$#)O. M3;LCH)1L4.,-8CUI'<+@>4Q%!8WVN;-QL> M,7M*;T%[!=UKO(&9I7.G$S&!,I+I.FPE%JO6#S"D7U$K,@VE6"()]G.G-#&E+[\JG35K M19*O#]F>UY^C%0I9*2?F7[V989<>T/((03RE W'F-Y94"N2)=R2J!-UI4EETYFV1&[UA3L="E MSBYUJ??] ME]O4 \T[C]V3W)UU3DY;5&=1\V8&,>Y2NOWT;V ][40PQ7SXE%A;) MIT_.E5Q&S*7WUMO<5E8X?N@O%&X9"OB]!?J*MD+NT M(MN[-Q MD'>$TBXL4=K)ET.TEEK5KNXP:^EV27!Q:YI\7,04H6TN5]OG2]):NA ')%X-/.I\JV=SM\/.DOXDZB:^ZC@WC?\:3$[U+=_$ZZ@O[ M ;O*(:^"/%;8K23.\DO-^3\%8DMRG*]@_'U3QH63\T)>E-/+Q>":KGT,G@D MM!YT;K YLW*Y774[4>4?DZ9ZFQM61^6^5VY7I4=86&N7Q+K3M4[ M3U^Q'SSY_42K#&-VSW6PH_V3VU=TN##QT;JSFRS?5)0];BK">^>/FXK>RG:N MXV*A0Y986UDLE%UEL5"YU/@D7%[7OQV1NW@U6BP3O> MY%#,M2*&YTSR^;QT7_EI=PLVOU;RWS20"A50+?\4ES-&*7X3V:,8*?\5^:AEUJVPZZERWMHC6Q2/;F^\^' M[ZJD+TDLS.8/E@"%U1O0GV@@NY -3XM#)W)%-%Y'Z.GFLRWT+',@F.Y5!-6[ MR\<];-O:J\,LIYI OQCN"Q^HY8GU^-*:=*_JX^K7<4ZYZ">YTR.?B1B\O2J) MS#:>33U]?S8$[*IGII!=JV?F,%8 [./,UT)NG9FO*\-Y"0.'ZO:PZ,[H:#H) M0:!IKJ@8?"4@R: &LL:/LO7S\N(YETZNK'E53@_<$V-HEGM3.L.4B0#\.?ZK M@WICR*\KM,='Q1&3XK@(T%V%# $'&K4>X.\ZP;^4C&YI8 *%3'A!HZ3X^N3S M_<]AKC'X.:DLLRKB*FM!\38U2?[D/).7Q&+VM:,? M#@V>B:B+PLEYKE 0I>(F6<*H4U!"!V]5[ERS?8#R43=NQPQPJCW+MEY&C M2D9W#P1^X-C8IMHE;1#T;E]K!T^_VX+Y!6#=)E,6P;R3TF+Z4'O)UX9C$LQ8 MQ.*C=%HL%E\[O2J"&8/CW^95_@?9\.M]]B'W?2S?CM2]4I0[[C];DJ/?=<%H M469=)[F-YDCM 2.N <%$6%!A8R@+^>4%#VNS8#G @N 8602N62'LSQK8 CUB M6>@4H1O15%\(58RT&V=@[,@+4J9O,9,9-;OE)OC>+WD':D M,0H;GGAI6M>F:ESCQ<% KSM]8F$H@TQ9K)_(=:=]6>]_*N7V2E5>J%UFL&Y) M-:[6HY*6T@?9F[H"66R/$;)THZI4?.UTE A64!9J*2]@Q^M\ ]$ZY:(U:5<^ M=7*D>5W.Q]@-$FU<+J2=4J<# MV,:&JP[1GC 3#U23#ALX3[^_7J4'E<+WBTW"O4G&Y]@MD')4?@^,__*+[%0R MK0+I^&V>Y67>Q=S)>5;*@L(^4&=D8\"^0N:O -8\^"AYL9#9Q 1ZE8M2,^R1 MA9&OAC>[;2$S.X_]SU\_U]7:S\(^>"N<@]]I_&+OD9DU]TXTFP.G&^\O6R^& M_TY8O "T*.8D292DO8W'K^WC; #G1*R\(EAYV4U!.]_9*2YDT%*;*2 M!'0F%I6\F%VAS^< 8A3K 34!ULU*\LFY B#-8LE+K,R[V,2N&4_ &J:ET1C% M%+M^_G5_733-BYZN[)$ZICJ8G7J\=_K6@^8.E&M6PD'#HI3-B9D5NB0/Q()> M!M,D3>NZ =0J"\JY$20JGR*8]MIX^%75 M&YD;-;]7.G:..3UDEW1#CBRJ8N(%AUO M9GUM];PQK!/1U'3QG"3FLYMLWYJOIZL+90$&CX&A?*0K@C99A8[[WD0E M+XER)OXEUTN8V T&WJICO#[6\'4ZUHATK_TL K*UGRDT.C]RGYX?&^U_]BNZ M[3G,[[HDH,R]0/>0W9 5IK([>AI^SZAR%:1LT[C79#C)VG490.6@C[7:AZ67I= M1'PWNQQC@VX2)KHL@PPMYL1\$BH^OW8PW)5QXS!K*]:PDK_LWUP\;++E+CG= M/H?+O;AXH.1AW]3,0NCOA+F5D_-<1I0V*M#>[9;6.*";"'.G<<1M02SF8EOE M&M+;J]0RT5*N>6S]27*T8J/WST;%?0EZX3K]RQYS[QSP[H1O,]3_+F;%C+R/ MK)LH;!.UN>4LM;G3^/_Q!M#2"VUNT\8E=L1Z(F%V+?;2X_93!GR8EDP M# , @;8 'AP(\V?'S"KWCZK\E$]P2UGD>)Y-BD>"C2UN$&P:A >T$V&#,$\T M3K<80),+H& *8GZ%Z-F?LMHB630F8N07L7%'22>"PPA1E=EH)!5*JF9KX#!1 MA2+KNI)M37YD\IGOEYG:I+I)V13./B-6//5J3N%>Z^ M*>,L>?2J,WQ6I)TM2D2%1AB+2D%,KQ 06VW(V^I@/Q+%*XDB"?FJR&#R93)B M6EE_0\)F!!$A='/+A2X6?]GSQCU=M":%"^5GN5?4;DHQSOY(:18"(@+6<\:VN&D[)Z.+R@R%^!">$>24SJG;=FI1ZGZH_ MV_7+^^^/NUM:N2HQW8ZL3A\=#;.'JIG>D6;8B7O! [91ET2T5D?R-A4KUMMF M)#&SPFBI/V#G8+(H3$0-ID_. 7_YPH9:<-,Z_-6U'8HLYF*@O/),;#H#)%(;_HGFXQ+&69U:=A&%53*O%((K@7]&+A[I MXK5TD6A,6TW45V-O,\>NYU MCYY'; WO=V3(;9IZ[UHS"/Q1MDA7"SH:-^7;B_M)Z>9[:V)>]S/C7WG-_+1) MJC'FRH!;2P-R&*JZX-Y!,+&4SZ#N18=>8[=)[+G0W::%C].Q<_M:FAF5>4QH&@]-8@TJI#V'!Y_(C9S_-+[/7VZ23DPNW3^''>$^IPY< MB([EVB-J"L!YF]Q8H%4Y#-\>V]]/USNTU^=O9!/[)KN'%;=^B+;T=M MK(H^F,=F4!G>PL+\=Z"O.'BXY!KP=FE:

51[!0Y^M73:YTG]NC&&.HF_)- MDU>,:5W!8K=S]\+8>*508U6/)GPP]_.L6MT=EW%OBI-MLI:"'0.BG#YHUGKE M$-PE^?=;3QZB15KC"RO<;1L1W//O^/O/ZNU#-=_;9'#KEC.GE?E;.-YNGBT" ME=MD.J#7;$9,KS"^X ](C:[,Y;EE7!Y/O>-F\7$W&>F+ 2\A^6_G[N[JJ_&M M4-[$'MV7A&14D/R8>%HU\11!,;M(2*8S.$HOFY'$] I3T(XIR3VBC$13DFD< MW"2FL:/Q%R>B&?Q#XY"VQ-+,[ M7;A??>GH(SPT_(6.K;\#B[S:ZQ',7K(B$BJKR2\U4^C<#+J?MF6ZK2Z.M>C! M,BBE=Q)E-,.@T,":J=)XW.K*SL1IM34I?QX\WORZU#O*MK:* M30--.F-B"V M<$.>A3MSH!HB^X$H-(BE]?X2!JKUH!FGCCG\*$CX1OX#]QS2]"DZ!*6U?X[A MME\<*IF@YG9/'6CZ^..R-]+/VMJ$L /RIX,_8-B(Z8\"V-O$ M,:9.??[?,& M(2G#=.")CBF4ZS>-^G6M4FI6*VXU %CEMJ,ZS+/X^T/[W*O,.%B8^&C=V4W8 M*_^_TU/A4B-Z]Z-PJSX VS?([Q$Q.G#.=.XOX:NJC_#(PNDIET1=[6G5X&?P M;+F(L^40#M.7+FYPY]G[1<'AY/SR-'A?]Z9_"$>*V:-$6Y-[06R5;VNI4O6NWFC>W9>;]W?5ABC4;LIG0NFF(C3N M+QJU2JUT5ZLVCA)KWVX"V&,/0Q.B,]1DZ5%6TO!?6\*]3_R*-_5FM9%JUL,Z MZ;)V4[HIUTK70J,)/_A2O6E&8)@9(3>C 9R@L[+=2NR..D0'PAJ1DRGKJFX] MJ(8VH0&HLFE0$4O_<:':FEWOW>)X8L-A/QK9V&UJ5^"!EC;$'[&%+[@"!HR? M6_AR1R-V$PYUH9N=1]^8RBK9')4^KA]5"$V13?04K8E1)$19 M_&?,OY)VP3/4BH1WZ3JW1:EMB_^&3W7N"*[R M''\7GA &RZ^1[6B]\0DZV)X=S9\FG2E9S3CY<#[O5U&F];8L2_DLQ)G<$? H M6TFW)M_D2E6KWC\_ROY B@1&JWI>O4Q7VC=E-M-(12N5G[6FO^ MX)KERY?2W0^A?BDT:E^P5EV1_H(/T+_)?[T7A6^$=OX(7XBCZOK(>AA/??K;%^_3='P=?65' MJ) GHIMT !BZYV&7S@0#NSQIG@/CA4->(A6A7-:MCJ3U' M&*H6$"F&)GO:"U#',ZW>=W^+Y-4GH.C-(:A6&TM)X3Y]2B,=7R MSY>[>HA_'C6'#E%S-S391SH_L*N5C)0_7]LF#R@#1;H=&Z@#_H(L@-1G&KP! M%-Y+C<6AI0')@GC$J:#^EEUBCW2@*FP=+(,YOF3>F_KY&> M_ZT4QCIMC*L.U$=@LG=!.5JO?/%(SC'I)P3W\_">MCER\*WFR.JP0%H;&$,' MJ]KM9,6'\8NQI:# -3;P(^X*)1:-P +=GZ7JTV"PX65C^KB'![@+?9YIH)@W M 2BZ-M !7TQ183K>" LT?&@[#L<@: 'H /+1;U+A. E7=Y M_+G_PA 4 M<0^B!,N@2'P&BH_9R^Z@#8Z(]5 1^B!U&/CP?985K,S.= _',$ M0OR>+WVH(1=V$QP].=JCVM-^N,G66]D&I>RO@M?- %TA9Y$ MWP536I-ROVG+S='H2^[AY)R", 5L%G3W*>7S M*4HZX\)0A, CD_ ?;YT?WLC5T#/!Y=)4)');QQ?"48D:$) @X=N$4/D->I1U M>.)#K"YM W_6P!!4/3Z$CWG$\T ,$*CHAXID:X1O8'(:53.MUL,GS3Z^ 8K*HMUR*?R\ MVXJ"JF&@V517NZ]M5,N>ET.UX'( :;2@D-#W>HN[^3EDBN9B]; MD\JP3.3?(^WF:^^-B,GM:+5[F]1[53C\ "DMJ+V*Z2GMI02T5_AKK4GIWTKM MVU,W??LK_T; O[&6*K4FUP]WUY?VY_2/YN*V!%;Y$!<^D"W#$ZB/M G@5SM."-X MMNO+@4S5NZFNUNN!;T9GTL%#X!'>]]>0FT"JA4V$\3NSG*;6\J>\5QJE/$AG@&=JLTZ"OPS M8L@\MACY30BNYV4O?NZ#>:LYS/#M8'\6\K%(#U,<-@]=&V"!\U8??!MY&;)?TL@;Z _- MT5G@#9Y$7+\!PU3X]:EW,X=AH/XR+51:9B_E1(31 @&JP Q'%F3$D6YV3R,L M6'T*&@GCXB%0O=/>P_MTW480=$<>4@RXMP[> S@#&)(#K9CBX<*@#_).@Z_3 MD!<&/N$<'<*<*:P,Q6LB)N#5;+87NC8C"SV^H3[",!FV])L&_0:\O0< 8^1- M(?)L6H\"B^VCHP$@=DENNC]"H_[8.'&9OXJ M%H7EA,(@Y"*14B="5C.[-'D 1\&$!X7QZ=%PI*/AT1"ZC4B05A+)"!< ML*0#(Z,/5"10ED\M9'F7.-P3[(\(V J?_*FRP6-%W38I&WHY9&9U(*&ZQ@9R MG:D9.*.)4GZ0'4*_6(4E-#O "EJ- 7L))Z>9_E.FQ[,M:1QB]W7AD.J (DUV*,4^9](W]M6<9SJF$ZCKH&_6:,3 M=A)H%!XC-@\HE0TO81VH%G&_85HV-9U]+G(CWZA]5%^:NSX!U7-#W*K-:T[P MH9I#WT%/16M3,.=/JTGP*%0/>F%Y_BMZ#0W[]C34S6**3S-GI#W]V[!F84SN MW05C^0Y5_>P\M(Y*;6LZA^:4IT$U6!OU[9EPR;T)?GLQ%7H/=>9=KPF_Z(R' M6.:IC]'VA"=H=A\83:12 :F10)2P.YCI!55![!)&VLN:/*-\S9A;;#!X@OW MJR)E(>_A??\!U-<.?SCPFIDG(Z4&C/*4;Y1[QP7E;$Q_+F"\ M<=H<#:" N/@UZOH5.7A@KP2(N8]X^)2*WNQHR(4!!Q*RO@EF/XV'DZ"L SO M!'B#KSG4YQV/1[,%'I:@"4@6ZH"7!/UH9BZG$,$@"E@"E]O&9T)ISM-9N10/ MM%!!H1G!$Z+UP(T)^'%7PUV)\..(@$S0R$A-!U)@RI7F@PCVICIV:4E/NL9BT]V4KK;-2=99:4#M]^'I7>]*ZZ"AP M_XS%P<'P=].O(;E--1$44+CA!@&LN%^PX@*KS08_$OJ@;7\4G# M_;!G:')=Y&B!FPQ(6,6B^B*HHY@9&(2T9^#YKI+:]PGH\5L[MFHZ^6J9/3" ML> MZ(W=#R) X';6B'3/4HW0UYF"9]E[GC_GA=J(>3M$7GA;',4+.%$M"X%+Z&:Q M ?X.C^CX?OM?0M]\AFM9(A) QZ=]H#[5,$S'U\SV"$@K\$17$NAC5Y:,A:XI MT.^P [A\98/(&YM&EZMEBU;#L04L**O]1^(E\?ONHU-S&.2HSK=S-2^C1NAH M5'*^L'DW?VS>Q7L7WWSS+DTTNR0Q12!^ZE-)YUN3:_7^=Z96'4]ZVD[SF<'+ MK79XI37Y7/DUM@:/GTK*8U*'W]N>X57!5&Y-VL^]K/5Y\KEWESE,,,T(WC5H MI%.Y&(PN;VZK-\7#O#S0R,VF;@..R\12A)X9JT[ELYE?ZO3G&6'X4B]5Q")#4_[**EYK.+?N M7H*Y5H%[IM@]W:O-.9$7]T4+UT]]!()!F+3B=;^8 Z=6_;Q?^^:H^J1J.@; M6+QK"?Q'-FO*X EZGGMAV2N>J:(!0;R(:M,GT+80=&?0Q/:A&(J@&>3!!#<) MLUHF<[18'PI/_QY-X@.[&GJX*\2A?0+@[O(OPN,9\.%+@F%:72AU?H\TFT7# M[KP*1AJ+KG*B@O<1.U!3X#KJ2-_/-.FJ&7XT M-\ L2+\83V$UX)[GQU_4Y<'AJ>OY$& >;) 9HJ/O]# >HU/W&;@,HUL>A] 0 M"@4H%1:^>T\+)\9LD)V@#;!UJYMJCP/GP1C]R.F;K *?OHNKMRZ+UH?".9&" M /X"E 0D0;-9%BW\H96C+U02!$/KJIT*AIL"N!Z"Y2^H_$L]PJ)/3/3Q2 ;X M3-VPU]\UX<147'617.>$V%BU4" /Q_ 2B()X\1NW=(C0%1A>0H*F^S#*2.,= M Y";8S_XXV"-_X/ :E:IW],FSC.AP9,.T8;T+($P6LJ+QK@33:=C<@!2'=L& M/46"(T^/TN[ KG8L2HDL2O'/,+*)[84( 7>GU&C0C.$('D5 )%'#;@"OP09T M>,>#A5Q!YW,Z\V'7)AT5;ZSA0A-X8)> B'%LWX[IL=YZ-UXZ%0'GVL+LP&WM M:8!3&-AN)))97<=^]$.]6C#B[O?"C1Q-I[6NK.+#-K&(U??\.&EDZ-A,-WAF ]N1DUU6 N9#8I%5RW,'^%GX!+PV@Z.;'#55:C: MB@&/R0Y0J9V1'K#-J5*;JHR"DZ5XUAE_'4BA!-,D4U"P TU^9T(C*LT&ZHMN MFD2F]Q*:C*L"0(!34B!0Z>#>W:132C%[X;Z1&TFS:,"W,$SQ3GE/(;,B4%?D M!EH?-68L>$X*-0Q2"!*+)6-<'>XPU:OUV&7=$N,9^!Q9/N:K)<3=GKX-TY_9 M#J;&]ZNFJ;Q!)IRIGU18?WF6KX^F_-WN5]'2?(" M3.V3;O#W;D4(;FK#^( !-P\R(?>EV; 1P/J#3ZA&'0Z_=/1,,7B!BL_%*6$^^"=L/C;X.:M M*O"#KNT\ZI$#NUJ96%CH$3#@>.D'-6!HX.!)!:NBK4^U,8DLXLFCH%1^!>8( M!.7GD!C@Q&G3E0Z^H>KUQ*:B7Q4P_6C9L*X]TLH%9J_Z]?4&G]0S<**H3YW(YJHY45N--[+J79 M7".FP1QJ,CK!HDO.N*$B+N0ZRU;UH)T=T!Y8!XWSS9G?YDOZ$;R58@I\<,JP MMJD_D>Z1WP[L:C4CA:;XV"7HN2&#<':%#NMP6]&C&TFH/8+& J?(Z,8QUV=( MA=M)0BX.+S)B%I%C/M-&3A;%H>>>'[1@MI7INVW\CG! &S0(G3/)V#8UQ\UD MV2AVY=#U*"OQ&B46"5D:B$(=& Q1^EHM-6LN32FR,/AY(-EVLSS4Z\28LD:/ M& CT1!F5//;"+DX-,\KAO$74+^IC@G2ZLP<.$8KFT]=YYV5HX08N*\>>D_+C MXV- &)J6Z#F+/.0_:@?B]!R8;O&;2:WW+O@&M##0YB(>Q2U+G/%7HU_I?^8H MF0[L:F7FC[GMO* 7X>T!">)-]N..8FB7F:[U(BC7&Z;"?20^T/#W2+6 ^OSB M0]^=2U'.9U6[G"L6R[&IMKBI3@ZJ*0-/31]9ZI-<"L-[S4\ M\_LAC"=4M[9OEZ!VGQD)@M?QHT>&)U(#Q<2 )^%6,"+_5VCU@L:"L9#*B@N M?&^>%\O"D6TF)C6#-8.(@4DDK'B>3GS$2LW!T/?P_8/B9$:+2F,J#MRH.Y;, M4J2DN-E$^TI$SP?0P4_W

G#Y]#+HH MP=[G*=\[%:PV\-M.VF/:-!"66A&OIN3%LEJ8QALQ!>1.8PG(>F]N*U%YRM^B MOGT*D(!?IA+0-4YGHR.XS)-9LKQG@=84N'#J\>SG5.EP #O@BVGV(T.2;^CA M'#'-Z+,XGI=DYE'+=&:R)\FN>O[?]7>8^[ :HPKKM/C8N#A1,&]<8%UN3YT^-R=?,Q=7X7CG,R[_) M&N.W8A-@$6S*3:0Q'XO[9EX!F.P;#GKY/AW5@;E^L;Q*R#E-N*?*F8?"- DY$\'OX3W HCT%L,]# M=JL[4<4?M=0F?EP)R).0;O3'@S'H<#C(&]]%2^.>"'@*K%S2=KW0<'I.Q_H& MW%;9@&4+_V+V,W67\+NN8TJ>Z*B HXE[8%=S2UU2:J#>UV\/=>A* M""!*EH#WB14]M(C"+: \LTW3-,&Y%6S(@E^3RG0M<-RW%2'NEKX7@- M_)9]BHY\9H\G\PI5_7I7^CC_(;/W,X-UJ8$>W:DJY4!]=$<= NOK?'-U+MDUX(*9">&J3QEUI+%3Y M:]YHPC->G+WZ,-=\:]+6L_5VL_S]8?Q6=@4D.\RU\S3Z>.75>7NHF#_)-2-G MIR:Y7K0(8XO3T^5/:DV>)L[W\M6BZLL"72SA4K.I+A:P>4#ZL\#SXDT)X>:1,^$+GVC@!'II M @.1NEK'81M[QMPXC7S\F=!P*]GHKBX:"F45 6X_2B@TR%M9: -.Z8YWU*2\ MH0M)=]0L;:3!J#YY43$VZB8*W#(+9B($@LA83JLY;KF$8VGM$8\FJUVZI1.K M)D2V[ 'KQ]%J-6Q> #<D0SQHX-M7]BPU&4%5H>AORMT=->IJ7L:&%M.Y],8SC/0] M7M=>./$HJ Z#!3\GW,!AU;DKZ"P^6!Z M$XV.QOB!78VYS1RE6$K!Y0X2_U0ZPG@R*>?2RG=OB _UB+W\?M28LD4FX$5K M8C[6[G[>MR?9^]W.5GC+Y+)>>J)X3$_0](1\3$_XT=LOG5^EBOSS^\]ON_74 MUD]/I%N3QI?[VJ>7S./M<_=MK$??0KH"<%Y[MDM*_O/#S]Y.?+\]2E_D6Y.7 M*^URI"GC1F\G^;EC.F,'Y)'((IZR:O=+1A?_J/X>:4_@-A@+0SA9>2J$DPXL MXUGI::W)?:=O7/_^=/'UWX^(Y0_HA_BI%Q!P\[&+'@J4H6#J.P MQGV>-#Y5(1TR:!-+2,NB@+>A0Y#A+TK8G\44SPQR2E/(N3>T:=2,X))!_ RE MYQ=)<4PYIWOXP:\B5#B&6/WJ*@B:>E_2Z,F?G&?$8B8MYI3"/ 31"-,,H+)K M $IA@/I1LAP]GQ[;=]IV *7$!ZC"R7E:S.< 4-)<0(ENA(ZVNXI(B_[-7.H- MYQ 9Y3))!9_"5EK-?@29D[+IJ.#PHO6@Q KV/[(T?E][Z..X'O:<9]-R^N,U M(C&YUB0_*O^3N:N38N>MV C;,>B:EMHE8(/1_"E/O]IWM!H" Z_,%@L:=+GI MG%S0H%OI:8"L\?WS2/JN_Y/IO!%D;6S094$(7V*FX/Y[7@9.+='(/5;"8.ZA MS!CBVL2&R*.==\A7B[;S>/<5Q3B;\L PKE.,LW53O!_7\MB(+PUQ*S5HS0.3 MSDZ-UM"'O] FN-TEIMHT[8=K>XA;1&VS"I[@$M;E@WD MZQ(R\!3)R.!OT_!)JVN03&OR.+Q2A^TOS;M"8F-D]X";XM<@->,)*,"TQ@NB M /GT)LW.ET+U\I]L]?*/WW->;4W,"S/]^Z(S-%X*V(#,@7;4 M"H=\-1>-N'DJYD_LTT W0!RRZ(=_A2W(IMR!)_G^6\D /^:.$F,_]"GBA3]YEFD M4%FD1BNMR9/YHF5^-VZ^F?TW(K.WHT9OZ78M9WP+OK8#+A0&Q(=(60O4:J&P M8-/]J@]L39Z_=R' M'E$Y3V=!NG,5;-!6J%9/D>RX,DUY^X>#VH'T1GIH# -U[\Z$:P+ZIF_J79R: M;<%7F=+ISGN_]W"[CZ: Y3Y.Q^?00JD4UBBN\.92MZOYPP=";V>-YS@RB:DY M[R%/Q)W[Z2K_+BW2U*EMHFJ63:%/_6!BL$68=- W+6VDFQ#<]H:S*%)W'_;;C;=M1#TT'7&!\@E-06Y72+Q2FUDPFHG07/:$TL==^0CCJ@I9!21"7K;6QS!?^XOCU#]HFN4D82.'L%MJUYU?"J\#-7O M4N2.$PL\Q4ZE:\S/09<,.U!9OQHMW&0] M!BQ/!:U^UCOF'#NZ2$(@ MW/?[. 8B*A[ TYU?F$$$B :$DR"2G[][NK.F00"AH/*AW4OIR:=/E175U== M=55L--TK"##& NQH67SCQ>^'&*T\>X?)+]SN-(029LF!5'T48"3&1M8D(SL\O($AN96 M.<=9R$X%A GED ]-)YYB)A_Y ZJZF ZQ)?D4Z3!F<)9Q(G8OE/B-#C5-'R([ M W2.AO/'G?*[I-K*)!)#P-TB$0>8G*"*"7$$3?48F+A(]T"+8(7C98^Z4XLD M):@G@JL9R7DG%$5#&!&V\B5<-UGS"/XDE]7/E0&OJ@K^5,Y;91)>&(J2[)O6 M_O)A_(:%2>N=+!UH),K?X@'7DD7YE:&_(Y\D=OE8.\QM$%A6V#\W[<0M[NT>MOT$"NE0+4R:CG MP40C&J; ?3BH)#Q)=R;!TT_XHT-TK?)I%<(7/$+O[3/CSK^,45,\#S$7,E_/ M.?T@A'..Q.E!&7.W1!1%\4V.BF]\"E:LW!0*+ K^/,>O8 4"/[.TVI3SG]ZRKDR7K>\"H5O:O7_2MGE5 M[XZLYO-SO0]\.V2J=@[^KSPT=Q5SGC)W"Y]A:!)4BW!/#Z\*!)PA 3(USQ?0 M$Q7#][I I-FU8[N$_/& ? M8:X5N9<&*'IV".#&26=FD*X7"+FMW/]G^'9M@;8^1C\.C31QY: 05Y',^E7 M/2;Y> ZLRJU8Y-9S<:%S\[_A8<3"$"W,=(F/S\@G,-U.I V2/F8Z1[GSIQS\ MR7-:^QVA R5+H,,^'66X!Z%6 ^,(%15S(D !^0*8.G:.>6$OKX0 12HB@/R% M)#)4VJGO"OB4?!+'AXMT=XP3O)K>.^\.V(^TCO9+2!J]+>$]3\I/O:(.*9:( M/=@NRCU2&=23,/A":K%2P$$;*R_D[[_0;AU1>5)S*KI/-)WJC0WB(I=)#47X MN,L#NQB2G2\*^OWMWV[/?/XFQ_#V'2D+L=(4\CM6&LQ*P^Y8:1Q2#K9MY[GS MT>2R:!NES6[3Q5EIA+8]&N8KBOWWG.EN)#7C2[+2". -&W1/2OIML[P1)J(M M8J5!%Z2+QBN7?QL.CM^$[S$96;+2S&"$XK3;?N^2 M-HUCQ1SIIJ@V>Y>ZUK^$"#;Q;R1C(/EB?@;T?IG&V[;T+I3+W$VU]??'9[L= MM^WQR^6[T:^,_Y2YO4.8NGT\=SDR>3LWRE<>6O#"Z"1>X1L3]BFK&$'B^$(B M_@SP44 A-*_$!;BK0WX*-TG*OZ+%W:DU!T !="Q.,;7>6,5.>I\;-WB_CX(S M-+=.,N0W P](3]7? ^4,<4D)3$SKP<*<,H,>LCXWG1SFU@H,-H,K-1((/34> M.6YVW(!WW<=.FS&&M9B8X0<[2EQW?^0:&@+WYY+]#MY#(=> "/8W+ 7Z1*#< MAN1W.6EJ@I4+_<=SP2[C##]9BB"<'*16L/BJV[^ 9#C%9PUI>MEF#2[G>63\ MOOEW^D1:GG /HY?Y:3%^EQWN9<]7L1#-;(LKMH;74+7+(GZ"YQO?N M*R)#?O;;C).]%&6L8P,G>^H6V[9BGEQ?/?2'IQNA[=RFTYQOV\Q3?"^]CK6+:>$ +$5 M1 S;@'EZ\:P+S%_2%56/2(5\AXU\AW*^$T1H@N,]")(F!6;U#A0*<,H*X''! MV4=:Y=QXO3FKT1#R>JQ--;A#G7RQH<6!.JDPM5]0'.+QWQXP(X!W$GA""C,290\&^Y--]8 MZD _QUO_&*4.G""$;2H&SQ,0HJ"JHGZI1#O^=N%2D8R'@*XG6C:'E? BZ)]: MVWXQN)=&Q9;UXG>.8&5O\-9$ Q([S&O9N!N(ACS#S"U''5BU@)D[IYVV?:>< M7KP5+SZ&)QMQW6Z3=8ON9]WC9K/^U^#5$VGOT)V[W @I>SQ[.ROW*P\MZ*S" MY>[AC/6\*Z)?L1#']16SJ^IP,W1C]R0'">G:D\K=$4[S;>'ZA6PQ3U-._JLK M,M2U*S)..BQN$U*\,+X$@*JHZ0D:%MJ$#HV$FUN&+-BN4TX+Y]"Y38(4FM#D M 1HS3AG6A[A *HH@2AMCNP933/DM MHC$C2Q6*.$(S@8Q,I[#LMY25;[P-CD13Z>:(C*MC)\]PKBB1Z\RR8G- '4]] M*Q?]5BC]CU@D?HJBTZ9;2XQ<+\?:FXS?N+V[)_ E0R8NNEF)4@_. "JD_PW< M?:=_>,^:3;_G%:\6F9,6@;-\\DR>:;?]?)_"T>0O*U\+RMC/]ZE/]QY?B\'3 M'=[B<]9A7K;%DN/92VVH?"(S@WP_G)S![1VBS467"NS,[)7H$@J9+B'K+:&3 MWL*]J3=EIOQ1*_)?>PE9LH09I=;$+6!A[S"123]FT^;<.8LYW>:I(%<53- Q M:%*R!N#!61?P&2D]LVXJ;-N^N*^Q9[?RQ]'S=Z&RWKXS;#&L';/#VF&L';?# MVOE0H\M)8&+8>WR;5N['#P4.PWQS^TW 8VM 6N'INWNW+CC;MC' M?/7E>TS;TEB[>@5D<.VW0I.U8!;_VT)R5M& E2=GZKHNO@GL.R3[WX5I!1JR)ZR3$-.G@ MUX.8-JZ[)'ZDI-"";Q#><^@"SO!V;,EHC7;"M&[)0Z@I9X 3L8>^1I[LR-:[ M+,-QQV@[XJ=/BQ00$"/?-N2\A",N@;+W*/]("A "^$DM1Q4H_=H8L8J7F43J1$1@UE@DL8@ MIX[['7T/;XPQDAL#+^7.E?[%AM:*X9D<8.P# M/0)% (N-YAVKO":FL\1D&@Z](!1H,*=(.8J%0L0B#E*++=%VV^ZQP^>[RONM MP'P77^5G"CV\/1S?GSZ>?#P5>WN'=Q!1W<<3F@O.Z,YR_LI#"X;NO>IQ8,_B M /H^.:2[@>4F&%%0OL0F@2@_A.Q+C$!30;F@]BDL,N%?!DF[T2LNI_5!SOD% M:'1D*D.])C.('(AV2<2V*"1>8/N,V.#(0%3UB4SH:Y&J)V/9'%-XOS05T>*]J!L5M!"XZ,^2S[DLTS16ML6CXR&^,+=ER7^FRS69TI< MRF>7Q]WCUHN@/6-E@"<.NWP"4[>SR;[RT*I.(<;]'HB"E#.<579HD;Q5]HN# M_!]Q./KWV"L0XA2&)-27N$04D*Z94*T1]+=;\ 3R83%G65]V:> !CXEIM+"B MQZ:2).=$^ FJ*2(C2,86A7N3EN0>=L$XG%;8)$2&&,GR 5^C5_;8I+U*R9(, MR3L.D3S^96*/T!AR85_N"/4/RB;# >/X>\@1 T># 7F^8\\WBX\^MRYG9%8I M9]+ _@I2>T*#[K22UIQIQ7O,^4O5*4%@BJILND!4G#& SK>A5WJE&O3BWOF^ M6_2F0^2+'E@,3&/=W;ZU'AZ%X=UW48;KJAVIZ,8U-CAN9;=B#Y%,'_5UC%HP M%.PA"!YBI6@>0"%40W*QAMOVWZ/ZB]0:*>_:ME& )IY1Z1?X8$JA&AFC<)IQPW_ T^ ('729R4R5'2LZ-9V&R9@4T/I8 DQJ( M;S+5@0B9(0=J;I$##4X?XHSPN)F)X#@DI*+'^.#H^*!NSGFZ&50S=AP"E;1L M>!>E&KDSNWP4,Q1[%?@<3H#/8?':P.!);JKOYZ.Z/BI^E_)_Z]'OJ#\5SUN$ MKA6:/G;JWYCSZ R* A?1[T:H^WY]?G/ZYYK[)$BZMTI'!8@S9 MF\90/+I6.;BO@--=G>3JICE&6\>?6=A%F@0^!Q?NC/<>,JLJDCY"VVRGXK_D MT.I:;IH-1B1+2E7N[BDVSQ3W&?3 B8=RJ/L)U=0^5248A$L=4Q[_(JEA'%O\ M_0\58!C!JC?T)%+W7I.Y8)._ I_]33O@!)$:ZA(Y4 S9,G0/)T&N#VZM DF1 MG,IDF+D(5UR#^*.A.!R^78_G/UJ:;"ZD8^>*_6)#2ZT6TZ@]3]\UD'CM=-Y7 M'AK2>5XFC:_\<'*KX@@ TD -_8 BEDZ9I@B C<)01%?'E0IYI./JH6KB>N!) MZMC+I#5=_=33NS@7UN61 <(!<(8@7:,Z)=!)13P7[X ^-Q(5Z2#:)3L MBD9LWX@N1FLW /,=-HW8EX,T'MV)BW>CJ8ZAO\C@: $]C#[LN)LPIYHE]W4# M<&CD2N!XJ[RO8=)\<-2XC.*!MCH3E^$#/OL\-A134KIN>5-2RL BM5 !E4;: M(01P0.+O=0+8?4RX1AR@TP<=>:1$/(T15W@&?2 A83 /3M[T"N$2-7#*&3(X ML'#04,8$:N@=L=\WY+[H9";W9*@QJM+D;/DOLDK1/[#["M)5D-3CD:$'0X-3 M>D'Z. 7'7*"JCD7Q_\'Q(QT2SP)(&;\@9$+/#J@3='U#XF'2& BGH1UD.OH. M/D"P8IAE'I>EQ'+BWO8Z,MJRN 2GV(." ]Z.8GB?TI .\A\0/[%M$:*;(7EG ,WK2MH\>6]:C??FG=;21-(0U'9$S)H$Y;MM= M4SPS3^7+/KL1WN,?82>0/LS*KV1W^94XO[+P[?,K-RV,?D\WU).MRGS\-G.P M+4IONW(25^(X=H*\\'K5B4(_($/&C1;'.8Q+3 35DN<"#N.T#;9MMFR\/)T_ M\4_C[UJD *T827SJRJHZ@CN0ULK. FHA0;>BODON6TYK^0.65[2]_QXF_2G<%$Q[QIN'/0AM M"DO"7?$DD2VV[2?Q2/LH:I>/;WX>\ZH]89W#V]J?6N.^%NT=LE@M WX$,5B? M&B/K] TU\FH6[]AW(:![%US5'"VV'0?LEXU*AN>UV7-FM06;(?9DX83PR5(. M0DU2M=:V6\?JX^EE415*WX5X$K-HZY 'B=TG^$0)%1>-XII='-B4:\P%FE$6 MNKDX!3:3(&/__!C!7]$9[5QSNVCEQ)&)>N#^Y)W.)3B<\X-S#]T MXVYR2>^Z(W;.RN D$L8]>%1%UVYG\-[R,$EWQA1?\CJ,Q@Q3_;][OE=JWO4_ MIFN+].))%@VJ!AC'Z)AC!_C)KP5G%X[Z'[*:[+I6,^A-_K\=X[^'.)Z^[I7] ML3/-;N<>0LH5#;YOZ&-- @6K&_]01K_SB\T7:)83:);G?T_O,T?K%O+_B;NG MG *.6L-@"G/<<4]*,SH![L7J/_'K%GTJ[DO_,W5Q*0L+7*%KF(D'^!J= L8M M\2.6/;1M&A8@=#%VO6GG);$ MEV/5XZYT>K<7'2H;&:L!XC"/GW*)H [5GC2\]?Z;%6WM\=ARDK M^;W#8IDNEEBZF(^C'4T0GCBQB%I.Z?FUOCJ*65.MLM M;U-]6E6&5EEP[F2B)\KU].G3VJ+*0ZM+>(B$2]@X%NECD:"XO?%*& M5FF%QFC&V#O$WF%5'Z*I=T$A\>9H[(LSY'_>)6*!_;$ID]6?EJFM<7*B5AZT MXNAO,UF_+C(#VZ%_$P>\(1OE2+O;0[=+/R6%F!YK=[O0'+ MC+JGYFWGJ\KC)XJY)$LCBZ01F=\<3Y>*BQL3RTHC4=LQ$(LY()D(?' 7!=Q% M 7=1P.V/35&[ .!Z)OD'Q?YNPR@8VR-MG\.MI$ORE(F^HH!->17>%J]%=&:A MYYN]EL-KV.R=ZKH4N=7Z3SM/&;+41!,$!YY[K3VS+EKR\<7Q34/9KHC-M'?% M^4([<319F$0<,HE8NL1P=($K?J'X8'X5'I/LQ>WN]7A4'?V]?;HM;I>X37M( MUB)NA;W#$D^7&89F"_/O@]L1'H3/)7C $_7R2%H LRBPVU OU= ML:YA*NM:<%?].6X]"#?W'/LN;K\O,I5BCQEF%MN-WSODZ!+/TH(P/VSY59WG M6<1Y5G 4Q$IN];JO5:^?E:K ;+_DICHC5B2Y1710T 6V0/-PF=HF7_I\6_X' MNM57 6BQN6&S\5ZOJ]7"G,VRO6[,%;G52SNW^FQY7$5 U7XY%H<7I>! M0ZCFE'G#I%20[*?*H6I"M4K5HR#S:*M>QZ)AR88Z.:".QU[M38?;RRF(\JX; M+R$"KH[L99[3<=\9D A M+UJXUI S&L5T_O4!7/F=9[EKY5"7$L461G MO@*M..4\,?.7[ D5YB[#2V-Z:T,JX?@-YT(-.^U19'F<>?($PUL+L0.,> DON#C2X>KB"X["VN>U2<(Z^0>=4J"WA"1F9L#?14$A@ M.-BO@]R5+V-#U!":AA=<7G<\')'^0"/^%$,.KH$EP9."Z&XP:5^HPHNCHGDT MW!H4N*N8S4Y\$Q75F5C:*9N+MX\[T697'X6W>F2'D[>"[?@+A NK$F97,] Q MO!DQPUFNATP>(E!D7%!T _43[1)5)%Q_T+HJ:WUK@'L!KCI,5XZ%7':YXV*4 M2$+'+.PK@+: :0^(W7 ?0$6ZJTE6#\(V UETAH*KUM) [0=6>1\1*PF7N'+ABT-?L1__"%:]S MY%@9#\<@Z4B%=46K.]@?CUR:3\)&&JD-''C>+Q/LE.2#7KBZ&7KCD/CC8JZA M*@"XU![Y?OS6"1[/#H/HOM[;#YZS3HWM4*$ =!*&SE._[K.NX9HVN!0QZ; I MY_PUZ.IC%>DB,B!_-.ZV!=K#< .P6Q-,AP.J"=9.I4J) 9L6*2#=K5'CVA:D M1B(^G?4>66MW^N#XQ56\ Y4.@><1:PEOE<-5==SYC)\P8BI\RVVU6AZ0[MOX MGSOG4&[V/"NV8ODV;.#RDD@+(D3+J)7+;=F%6"_;?ML^_C.J7PW*U_?-[U*U M.%)_X$AHV]I;@>,O6U=\1]D[;,A6+KJ[!J+DE!1T"49\'G?8,GW#V4N@HJ2Q MX1+"DAKU,JXE-07/P1L2G"#__#0.[XVA"/G5HP@3@K2I79A9?FG#T$(S'ENX MXD&O 5NXW6N\-BS]^ M1GYLU;M)UO"]BQ0);/8J3AF 7NI__23$V*F: M=% M<;0SHVQP#UADZ(NEQR:.+XO8&[IY +4+0Q>9^0B?[8%OUCXA<_&)KIG)7-WB M!S7A0;@9=;= JA(S65F:'I7_#D;2Z57N<2-GCU-''@A5A99FF,SRPW]OD0!S&U;J,P7XO7DY'G7*]W?#EZ\JP(EGP;H$F 4X,9LO MT?GR?&ZOQ01XXXPV#EZM(5N+' ^9H-Q2)UAE=CS8JG@GR-*P>G3C$R=&AKX( MQ&TSFGPY5&4*.>?V#AFZP.=I/@5G8@*>;0E5O49A8C)4U?;+L,)* YECA/** MA&F=2C4+^[D E3B>9HOS4^J2RU RZ(?\VV[67\KOQF50>NHL$,_!NN$H6F3 M,7A6/IQ9,XS;U0S#-:02U/=;]MH6\GIC92IA>G&VI!)9VFFJMFVNW[EXT!X^:F_/J:LGEFJ.H2+Q [1R+6JRZN'0FP_7/@Y=D[RW<@_(6IUZRT$T MFP=4@I]@N:X>Z3*\5$&&(NY$;=@Q1-G(70]D31]27#X?^')LL"/E=]GP=V_% M"?H_9#PW3L^I:UTR_UNYNL,]N-2[+P-9EG)7>/VIDWVF2-V.)6304'53)2"_ M;.:"35ZV'%J=X(10<1/R8W ZWV1H2/_B7&%R][]*"O-[0*KB<^I0@=V+Q;\LLM9@^H75]( %",)$ ,"@G! M2;N"DH#.I=Y%$VJO&_H'=@FHD]S_A!&'Y?S)=%ZH)X !^?/%KZW4VR.-UXK$ MCT8<'N47U;+%Y]+?1RG C3NG>RE3/&=W)^S"J)C-WL(NL'T>F7)=$?IH$+WV-9MI=K* M5>[N:JT[[.NXK%>.ZI?U5M35L2OQ^Q5VLZO/CH73F[%"<^:A/G*1!4^;.I0 M>U5QTQ118R(YM$>HY^ _==(H#ZB*TY>A.,')Q]!+5O"K)#DLKG?P MF(']WN[(D-&"%GBL8HJXZ37.A9:U W:6UO?2]MZ]ZKK0/6](1'8.J&KX%S@U ML*NB?Y!4;'C%S=YSWFA-BT3.:U9USE.25>U^V)MJ9XEP6J*LO(%\&I2$1H,S M7T.K$AK4]* #/0]\,Y?<_*+B >,4E>*[:6R,DACBT]36Y4$7"ESIL& M ;C#JXOE2WV6F"^8J."N3Z',!T C+?;D1"F-3DL:MQ1$RG/O;^+87DEL(2EA M DD8]4U&Z8A*3 +/* WDZW,TY8M(:C6 2/FX_M"YM_>+R_QSMEDW,66(/T%% M'C\\?TAY&!)#AG0_; V/I->3FBI\;O-U8BHIPZ?A4V1] YV)QV][/]V>KMX=LB>:$ LT7\IG- M]BPX+)X2WX53_$_FT\-D-ST"FIX"7>#+-,TSM[M*IRTFS>UFO%P4H.GQD'3NA*LM*U6'P3>].UZB.E M#%42RUR)+J8H$+XA4.B4(0.G-RP^D MF]6=I]#[^/_KFMLXMDWB]Q.@\>-(]US;P/4' 8");V/,-'N4 ?V)<+#]'L"4C \V/@431I89J M[7,"=2UVT5-5[$'NND R&O_=Q;U15]#A6;@W0MJ(7O$ :Q7I#<8A46?B^XL\ MD3%ZS7EZAU+[8D/S-%$PV"')B9HGGT;S!.S/1EM2XG50\_GYR*H7BOH#Y^D@ MMZF0#@KT;#E%E' PKR>C3N"0U5*@\^6XO&>BD@*:);B5'944'P?%7(^):B44 M;W+C5#DW3K7;I%]L: X^+A<0 3<$.PM\#:%A9%D -M"#'KL,HW$QSHZH@B2Y MY\RYJ(U%8T(YK>6@G2E]P*>]BGH8/W<(\5K!OAIVKBK-BP?E)8 OG-H!L0-; M1&.D,N2G^KQ.:Z8 &><"4Z2YV.J$6,P/J)BY22$:[+*BD8L3#9:*%8W\YT1C M*M?VZ/5B\,BJ7/WQRXC&*C)L!5S9C"\+P'V4*!CIX9WHJE<_S9M_"^K9X]5F M"X1\Y\. ]&%6GFUAEV>+\VR+WS[/=M/"N'&7RE9EQ'Z;.=@6I;==N:PK@<-= MZJ)F-G1+-EN&*,D536H"TO$6W[# P6H>*V97U0$\&0.(*^:A^G0(XU\*6$M+ MM=ZV&U>OK9..H=FLN(EC?#T"O8/Z9[JM"G.@_GS;[MZJ+4N>3.X"V+?50_TK MU6KS'NWFW&VM6JO_J1Q=UGX2O#][E>578ZB0 AM$PV!=@S3,B:*A&Q[:/[Z6 MB55<@-0((7EK <7UB6^T[8O;!^ZR]O'Z.-J(^EI#T8=\VWZ5[O+Y5[MW?8WF MT9TDQS/G%[/"]9IP:J@D4_X?L6>&5(,P=^4;UE6^H2 L6+YA]7!DJ:I,A%%9 ME(Z[.SCR#HZ\97#DHX#3[OWR9'3>?>BE>3F M$+AOY;91M1LFLI[,_%GC1+U[>.+950)^6386"WE$PLB!(V2=*-2%.,-=.V7V M]*X8HB44@:BX4"C0?'Y^/>*8T*$>0(JS1JRI%BX$M^T M/E@[B?82[Y%E7K5>$?8.RRS-Y>=G$GP9]O,M7K@,-114&1$8NBS, MKP:Q).VWKZ3XF59&0[8\G=1"1H;E*Z3F7[/U\' ZU$KEM0"[$SC$H]I)."CR MTPJ**1UPOFP&_]O"M46,S;LURU@KE7$]#8$OT:52AC3MRZ+%N;8MBPRGG'$#7EL36MSQPH9"F;-@ M#GG4Q]NNR+_V&ZH@;ZZ/V3MVZ]H;DCC=F,P..3&HG7#(*9A&-*L1=(F5ZL+D MX6]'G6QP=7>1GTP]9OR/NWB/=G$ M>[R][1Q.230M1:90B 1WN-C@SNP&VW;KI58P>OI3X?5E/>IBE4$;%JF_45.^ M$ZJ=AE'<.VP-Y!SP)ND:)O_1>T Z1:;##=ZXG$M>X6XW6+,YA,:WCRC*E\?I-^MM;U MQNM7[SD1O$_W]"N,W1GM^VC MWL-CH5@ZYYX+JPS#E1++7*.N44.W;UL?%8J=T54[HE@H'<8()3J?PDW^'6)O MZ6&M^CP^%(\&P]'YZWGU435 MILX/QS:&VQWT"Q*%*IICH(GZJZU)D STT-*94.?MHR>+*HT"S;+'8 M#>;VF^I#QZE?=9*=9[HD)YIV%?<>]N6[M\% MUA[>'U=+:SJHYRF7Z5!RTG_QP'R/W?K%-UUH,A/)Q6-=M6H!9D):*)7A?U]= MM6S%VF2H33#?7)$IT@5^/I@Q&VV2C],FD-:,F4EN95,VWF33!]6Y.B5_<<,U M^:?7F_$6VB[IU8LW9"AR@(?ZA0_(.3"MY.5=KW-V(?'S$$3+0!8X]NVW;L_OGY4C6&SN.0'LH>57!OZ""G+ MR;4J:E"@I_8Z5D; +S<;?<9R? 1]%DRI6J31MEWHMSKLB9+GWJ4EIV4')UVY;3SF@@*G=W->O@2%D#JYL;8B< M3>W4V/U9B.;UY]/LS\"NU&O"6W7,- :#PM<'?561EKF7U)>NWB@H@SC0U\B9 M$LR/*[OS,1=D!-C(&I[_EM'$Z"TK'PH9N!I;[3!)Z^PTF[;S,.M*=^H M@G[F7V$^!26:/:)9[A.WQ^T9'<[B^EZ E+4\$I]2BD#1IM%=OM@<+RPV[.K$ MYNUJ4#U]?GB\>>IL3&S8]8H-9CLNEP2Z6)R?Z;ARL8F655P!EU&$1;N21O[( M40$G!0BA9#VM6'^U3+JR/X7#OTM9"D[9MR]Q]I;,"9F?I2[$]A6/Z*>X?\E)_.*=Q@Z51TN=@O MM%SB1W"Y\K=:^:-586_.NBM9KN#75K=_U5XOI,_*2YSWJ19N"Q/%B:?; @LB?1>,UE4U:OS\^> M-WJR)/-EEA0,NJ?27;^GR%5^Z8'2'2IZS=7+W\ZQ>:#MM$S(_N5YM>^TDG'A+"I8R*Z MUL./;MT>]EX?H&CTXD?#C#7*]#B8X7S78T4>&E&Y,1;LV%IR<*<+ENZ.CP9$N"!W9*Q3LPDIW*%Y?UP)R:_^YZ-7D0>>C-'C9Q+TP Q7'0A8E [ *FA6V MQHNX>(#2H0N\NY1&MGHUKM^(F[B^9;$@#%X0GF5H@9T/D8;Y[EB#2(.==0K&_]BBZR^2+$'M__'@>ZCGU49?D"B M6 F,(E%,_;SZB+J2KI[?[AM_I%NSZ!V)B\W<9XS!>?4^,AK]JA4F)(GF::&( M));-C$]A\WGG\1#9K$4RH*HUMO&L=FI7)_?*#Q/&# \+#@LC5R[1;&E[2!#2 M'RS;;9G.S-@/&*SQINIVI.;[^SH5^,,G2HB<'6:E*,N]^R] M^P+_?KCKO#UA"1#M^]$ M5 R@'Y*/)A73E*VJ*IIFQ*F7N&]=Q]Z5?,&++V_J_9W@*9E@'RAGH.8\#1%\ M:6]&LGV,_V].)[/0(5"#MI2GR[&X'N+S@S6:6IK"K*5AO:6)!@\R69H/IL_> MCN2/J\ZGYY[UYC[J\U_#W$-!VB)'YV-+X>&YIX':#2JI*F^R.CD(I\+/(G0Y M:=N3ZFM=NK :0X/?J,9;+1_ 9E4HZ30ETY,S0N_O M=PQ9?-GOR&B_R5!F^%VFM M9'4;S5;M+M=J4M5FXZYY63^NM&K'U$F]46E4ZY5+ZJZ%?@$T2C'+FSV)$;!N MORNJBD[[NF:)6E]!=PMLIIBS"<<*D+D9(AP+FD>+-=NVZ_PI=ZH4!Y4ZMXF# M>STBO&-%RW0CE>:PHE616/6O2MV32VG("&MD13MM-H\?ZI>7/ZF^YC>YU@,/ M&62^B=J$$KOH^F.@*_S#59U"URSO)L_FX2;/" <4>IP\9BKX)@8W>J>\.GH/ MW 'P"ZHS-A4- C!=?=A1-'*75C3\J"&)8!2^*]: JMQ5=DG11*QG\1U659!MJJ+.00Z!::*# M0Z)$"S\EB19^(]#_@UP%NHON7V/5HU@+C@_]*CH9G#,9"3UT#P)X=>I"78HY M,1S8 2.@6W0^<$,^'W*&[2 KTX?[^ S)-T5Q=R9:HJF.C/ZEK7??V M7!$+%^>5Q^)KS_>>NA^<=Y_VGHOQ;#("/F/S3B?:R7W(XNXL@.^S)!1H-I9N M'F_'!>[+;-N^.!V<%N7JS<7P^1O?E[.WFH[ESAP^U@([BX\UX?VV+3^?%2=7 M[YQ\L1$[:$T+LC.$,K4WA#F&4*EMLW\$MG)RI[W>J<A"[KC5JN>4)5;VO' M]7FTL#MS:/LV;U/+78E&=T"Q!7S*%\.G/+XUH4->T2P=F1M494AB'F!YW,JF MA8$F5?2$8E&5OB%C,"\Q=: 9%9XV3*Q;L2UCR K!HAR)VLL].@=EB,ZW2,=S7L>=+U).D&>J1]0)TEW(UIJX72/V8Y /$SAII12V M?T,]@>Z2@2 [E3Q+(R'&W0$"6M(?JNMT:)XMMLC@8NVUXGZ>VT?#=2,>,\>3 MTF;;!_)9='K(F(8VV7PK[QURB1$GHD30+E5AU+\" N9UD;I$HN"+/1;O.>'# MCE773&3 @.2@L6#"0&SUPKG;N!=ZBHIZ%EHL0YRH C""TEU<)!8P2K4 MM.!6AG8_W,DZH@EI%"/ Y2'UH(!!1/4-!6DGI*DDN8A$M@E@/T:V\#S6, C#L/:A\CQ2"84O0EIBU)3GR^P#CQ>?03 MFU+S>1V$WE0T*:()VS-[$F[*MP-T>D!!T783/B>KTT7?LJ(U'% MDNT):7LTRH_RGY",3"7AHF!,M-?[!^.63SHRNV_C?^8/*PGP$2\XRPC*+->5 M<[+.QKI-9T2>E>D\GWIGZ[9*@Q8L6Q M/F+DZT2%$V^C)PUO^P6H -4,4@B0(??'JFA0^#3$%W1GB)2SGTQ0-_JX/T@0 MI5_=WTA^T*U7-%WCQ[7R<[H6MGNH!+L'&?JDM(WYC_>U\S&Z3SOG*))C-/5# MU!)84[_FWPO0X:J.3<>.3BW,1V@(YMT(#45J:G]$0P%7W2TVJT:*U)9&[?'U MV)"W1*H#=#2!KDXA+=&TP>\]==IX.RJ\=<[R?Q/5:?Q62)Z<56R& $@S-("4 MFZ3>./&VR3X;V">P?N&-@C0">Q!'RH WR7_^S?70@) THKWABKTKHI5Q'_7> MVPXA(4V6/^X'R)_[DK=Z3/?R9X_.=2263E)TIDZUWWJ-I$2Y!.F'SE6OI2$ND-(7N) M+.T=)D+678EL %])G$!.&0HI-:/P(^40+G,>D5SEZ6/2;0E_4^2<;),@^F/( M7A2% (EIC"AB'FI\1(O:6#3<4YISI3$W[95)*8Y1",./$,<3?6RXTB@?R65E MDF]T).9+B:,_ANRE$5G-0J(T'E 5SV,'*+;Q;/?RE"L9W6E$=/M"EZ\NTJWH M9\O,O*H MJH!7B7;?0QMCI!MH@=1)M V: M:"G"2KX'J?X-"FTZK?344C\^NR*CC-CM"Z MB5#;%#4+K5!QK8P,?1^_377&4E^V@HWMXCJ;&5J:#NQ-H_3ECZXZEN3#F7E2 MQ5V>%,Z3$KY]GA36CZY,1"3$QPBR'-^V'TKV^/C#L,^9WG8A -/MA*D=G7;H ME;9]-Q:N"MQC_6RTD:%O52Y7VFD[:MMOPS'7>/GX<_;6_Q[3]AD9NNB?70\O M1^,_?Z7O,1F?R1A+.V_';;O C8_&?__RS%GW>\S;7"':H)T11Z'T3BB4L@66 M$'*S#E M+<"9I*I.V555[9D7_UC]TJR@*]ZPEUSOOU> 1]_J7\GHYGYWWA MOM1-4S;K6G=L("F; 800&,'QXFR'G-MC[;U_; O-&YN=)<.S!ICDC4&R+&0E MU9F&M0L,$*H4Z3R;&"_!-.-XS* X\:"QA!BR*1MOZ+>6^")K =<,@5)#_(3( M+_6.;C/@Q#!T:=RU\!3!-]#A@^/=BO([-R51;!!K@S_TE42I<3G2*GTB)6?HU METZ_4I_4KTG*-$?^&6,>0.>GP1]$O\[2K36'/^LK;867FVO9_.!>KZ_[L[9" M_-"^WEZ "G%EGBZ7$T,L)&FZ:XR1Z)C8$ )Y Y&H-H]N*VC$II-]+2-IU">@ M5<6/@/;-(3,V:(E+8\,U9>,-U+" )OO4IPSK@'/<\XOG0G[Q1&=TO$O;V542 MY0YA:],/UG+'VC+_];KNE7Z<.S__9JE1-;B8A6^2H5MBX((7O&%.O^;GT_B7 MR>FG5INI@/%YN529"L*2F0H,DR\[3(+HQVTX ZS3LWYS<"6+K)@N4X%A]O-E M]RDZB @0%XRP?3Q!H2NE1J%NJ FFG8V3*J/@!?6R9 MEDBDS(>4NJ!VQ5?AJ_O)Q^O/G7I;3!YQ)\"@>=7GA/YM"C0W2KH*QW/598":C9 M3[5,8)/Y=';'Y@7YI22_"(W^Q=F%,D^0 _DNGQ7J11-#MDB^BW,30T!\9!%9 MT&CVYF1_8$G_[5U.46<<1W,N".,G>;K)6'[G+R'C 'X1 5E-&0Q\-OBJS0NQ M:DDO^4JG^E=9-4YJ'8*8'@Q5*.T=*(HH8W=V?M@S_DP%U M"N=B+&=$WUKOLMI;^(8T]9;//(*U.#G5HP\M=C_Z)^T-*>F8S_F4)FJ8$014 MI6(%# +_?(^Y31TO=YOB\ASK4.:CG[AMN$T))?&C_UC[:%ZK:6Y3'.:]8+R? MN"V_30G3MZE"TFWJE^^\@L4W/6&*2"(=O4/EIN]0SJN^$&'>P0Y)(E>PRRH8 M)N-^_QM[R4##X9P:K#AWH$6(TS2 /I3^J]P-?/I:+^Q&\S=Y"W^U)Q!\V% M9H=G(5N3N Q7/IIG9UO%^)+GI$I-7?*FRI;0L80+/U1Z ZE29?2!EXMW62ML M-?/5*J1WT6RK=-++ _=2F1;F^"R"+HH8BG76.1K:?/_) M:/XXT5TXFRNEY$+]78'FBFD4KY_][PON%.2L0,<7TEJ:K_+K2[#RYBE?970[ M>K]6S..CP8^38&\:LI5@*-I;HHN%A0W?@LO!8LABSX+('&V@^S6E(FQIYJ\AN?J7\\;':1"B]U4KJQYKIX368YLF/2ND'5L'5LE)WB8A=W\?/\!LMP"4\V6* M=+&8C+9SH3:FC(8N)4EFP"!)(Y;"MQ7+.SQ-,7+Y*KY=*.9;OWJ7R#*T26E+ MZ'>VXE9$XL9Q-,=Q2>*&E*#>E^$9@8R *8>Y!-HA/POLP)>0-DT&.Q!)(JET7@*&98AH MO7&L;6SD7)@[F;_X;(QX@2Q_1X$,1!7ZK^=JN7[)# J)!&R;E:K/,*W-EBIA M[S!_4/Z$6%&Q8A5A3T5692+UWS>4K*#3OR#*9V>3LQ>Y,)-L?(.R]2GRM-G2 M54ZELW(+"E="BEB:%MPD--_W]&\.8 D)2>VICFMN=JJZ=RZL1H+MZDFEBJV'2Q*X^E"G\5R?Q5O1PA3*@\WLY['N)Y-IV M9/A<\'"=F2#5D)$% U^Z=5)BHTDEBN=(9/*.(S$#ZS">RX4,WY69RJ/]]O;4 M>I\TO,MLPY\8+X5W@921.8--\A-"4=T45B%F>0D.X9.R%W7[%0M@],VK^P U M%F4-%UL+*7Q)+$]TGBMN"%1*E6KSSQSWKCL=Z8<(Y%)2'&7" ]L0U*SSZU\J 8@^<56&!)/XIH\^I#1HH9S6=]4;G')XK"/L%O,]0^%$C M;D;"D2O+X2JBCEO0B07&E(@C@6B'"\T)#_ J(&# MC&X>%0D53KDN=V[L+S:TII8[D3L&3O1D/=3.K$R5@8*D>HET_K@7XQ+ZXYY; M24I_E*7+2T-)!/)GE^-?R+,,R=$K -7+%F2E^"_?C3LFYN"U:L"L .2]$6=3 MY GWL!C8/>'NZ+E^4TQ5S["PGV?WF;+[$_M)E@#/N13;NU5GO12+>X?AZC=\ M0LZ+8T]T?E.F;%FNA,Y(,Z$2TDQRJ=-,YI7,3(>W2R.IZXV#+RNI2R:JU!X> M1?FZ,VB(A:T&[+G;Z7-Q^9G;:1UI+,72PHD 4Y#4N8D M=W66'IK!.)5C_6Z MU3_B!.68V6V-U>?(%(6LD@QR"?NBNML7R^^+8+2MES^]+MGR9>.UN]L9ZTC M*9:S2F.8E80SS^[?[8]T:3R:\>?\\D(M=4ZYW?980Y)/*;]\BD12;G#<_JCL M]L?R^R.0)/1T_S+LUU^N7RZW.SE^_?MC-2E$)4C?+-+EV;GSN9A+!Q]_Z>!C M-D=AMSF6WAQWRH>[-X:%LUK_E&N*]9UI%=H;WAQENS58O#7FD0E.73KXJ4L' M^6UL:NC1;FLLOS6 "=?=' VQHFO'U_S[,[O;'*'-X<]2MML#DD]YNC#G3A[( M,4^ER.:2Z08[H+VWVQH57,7 R9)1=?F" L.[& ^ YWI3F 5\LRU;54 Y3^C#L?4^K+JLVXY/:9&NN$2^(4CI&GD M)SK^KZ(0@ 69+LSC^2; AT1\ X9)R*1VB0+IA!.@WP539,KEXZ5E&S(D-D(X M.L##& =R\]=;U_HXI+_]YTQ1:12O)Q^/]R])$5\:8T[AGV'IFRMK,9/P562M ME,J%N+RP17 4.^/TBPT-4J,#E8=<$855-F6T3TCY(,"R)% 'BZ8I[["$ZQK: M8D7K2[NB];AH?7E7M-ZONFT^Y3LO)^,+T58W6K0^.+ATG1?:]HU]\:0QS<'; MXS>IG[Z&LO/';?N#Z?(?]D JO\G?8]H^4W;^#R-(K^77MV:/_QZ3D679^2@. M-@WC/22!6+IO_^Y1,C)-1VA8EC&6I]"ZCC4-/O(6:NQ(U;LOOM%:Y %+&%@S M(1R?CGN[;3_4KHM\O_;P)CQ_CS6-,STL;'1W954=03**UL>V/_S;!*>]\^_/ MC7YZ[/]2[XID#:"M_'_0$"W#_<2;C*Y/Z [BS@)J(4'7H[Y+[EM.:_D#EE>T MO?\>)OTIW!1,>\9[IGP0V@N6A+OBB1U;;MO*'[9K_3'N>)'U)G;%-B?JV''M MJ!7M&MJ9E@$_@@RLSPXEB_1]3>JU5,ZIF#D):41#Z0 164=_DVDJ@1,RH0", M&P^ ^W?@MH;S07%I6)QFDY1D\T_NDV5ADAT#BY6%F9?;\'7*PM2ONDV6JUU> M7SU_P[(PI4!9F-S*RL+$E-9%63P; MK/1S13>8LW+-=S]>_MCOQ>Z/JTRPJJP48=&R,%,UC>:5A_0ZGWTT1W11DC0F9E8:@Y96%^L 0',CZ&?/7A['HTG-34'R?!J\GI M$)8O"Y/+MBS,$I#=W"?+PI2_8*4#FWN[,&O'I[>&G5@__,N7?Q$^4?XER=67 M4/YEBJC^<^5?%JBSP7]!Z4NGN)/*OVBO+_+M;4.[8I^W27376-1%6+BH2RZ; MHB[Y;RMLB45=[KI_*XI1?/LXFTGS^IV+N@@+%W6AEBKJDOO*15W6$I/:Q>%F MQN%J0.4>0VOWN4!U.[Q MS:M\_5%($UMC]QEF/U]V?V(^24VWZMB:4/)C:^XEFTN*K>F.$G122ESN1D\0 MZ)P"MPU#5>"^@\Y:14T19<,(;JQ/J=X8J=<0\Z,G8U>N9,(87/)'.AQORY%X M6W^LB@:%YPD9 =/LJ/,L@%O9>;+9NW9?CE(T![*=EI'83"7T^J[?X7\WB&77!_I/Y3H@F=V.-*XN_)\^S$O CW,_KX#[-XY_(1_ MW8FME"6.1JK2Q?!FEY$_4O'#:0-U>+I^%^VQ-*-QF>C3^&LZ_#8'//\XU"(; MN*"GRWY/H1VS'R#,]T%LT7$<4 &^\Y@Y,F02$]"I[@ *-. P0\@185+82G:/ M5;,[D*4Q&JI[KR.PN1'IH=/WD/8GB9&S\679U5BTKE#\@5D MGG@_L=OM#BFC04UI]"1_".W63O%."2-X60&Y\(NTQ&$=EW,X+"43F"*/;YIS:SPM[0'(4%D-G##*K-[AZ5Y-ZR>4TH[XMC*3<''\=EHX&"L'SR- MO<]S&=SG-R\G^E@O*.*5T+GG5GTIWR*1X5)=RN/LQBGZK9@+.KB9J(";*0I\M>3\)FQ2LPGQ= MI&BS"X.!2>Y5\7- 1U/(#VF,'3S1L S+:!,;DI V=\T?.1=5E7X_UCIK"7Z M>@B82^E>D_YZ2[5=>JTX&)\^EBM_NL7$\R_>Q9,TO.U7:OQ\3WJ*P N.\[A_ M=WWJKH4--GR7%*T+7O)R"_@:D<#U=!7=,\U_8L'/2,?Z?DCJ%[Z?]I 2"Y$ M)'K;_HV=E?%EEI.E>"&/Y<;%V7\YV-4(C@5/&_S>W0,5^[$H-AIU]23Q;,_( MS?FI7>"!42(#R-[]"31J,]R?_T[!G%E/1,.L56$A398_[@?(GX=U=EGKQ=EQ76U]+'!?.BTLMC:5\?N]02)1&FL(5P2%^Y001<4[0[*@A M"3R2%Y&@CG0#31@R-_U&9"EGZ32E@KA*LHH>-'"&D-NP7Y9;T M#$8%$3),4GPU5\EVC?D?P/A7[\%,/]2F-HDT] MF*3,#^#:"S!-?]H5E>2 *N499$BRM)"X=EM,#S FVZA?1^S-B3XO]Q9-*H':27NH/.&1-EXD-/ MQSE*A/YZ_M:?,YB9=/(K% (.V42S92 V^[^\S$)%RY0LLU"5UZL_=_F3DWZ# MWZ*%8E>_4 5(G&-FAZ*0\89& S4-(-4-4_,E3 -DSL47)")G?;"$R?:8QLWF=U3R#I-VK6W73$V^*+&UP2SWR)+ MLXOGV_9EZ>7/Q%[3-O2,E1MV[V" M\,8_JWW6_"9LYEDRU&_B,%X/OWOV7/MW3J) L^=D3BI0-"W$H0_^W3@:_B+/ MA&GXRT''S*(-M^V'QU*M?M0[&MP/-EIV)$.A#EV*A*-"V\YWKIXOK,?>]4V1 ME%8:>K/CHE95-$?[&*&*+]6_B&23ZH"^\1YSX?[M9''%T+I"_DD B>-)U9;8 ML%^T+H)CTB*+0A5')NJ!^Y-7$8&'@@BY&141R$SM.=:67^@ #^M=!AP@/*1* M<<4.GF31RWL*+KI7JB"I,7^6R(/!?WH]08.!.?S?/7;/D^%"N>P[T^SB2Z?X MHIU6/R[DV<4/DK^&BQ;@"?(^$>9M#2@,7Y%XT%$SA$]N@#9$2X#F VCRW^0K MP+69X%X8BI>M8WN@(9N4>Q[Q"F\]%P/57>*7)V8M=NS0-_T]2F_G(XP8(3MH2B)]9 MJ%D^KBQ<)/S>8:% %\IQ0;XE5R1&?(5EQ=>9$=C5K7<](K5/PT?UK'11E(>E M):3V@=QVHO(1*YY\=#(EI=29ZK9PEJ#$OSQ39>6Z"M-]=I)WL!3R\E*N6 M:\ Y%NF"$!>(^?12QDCX28*$MY46DEG+D]D'OG/6>C4%N[@:3;O*\C\M"&M$ M2_\DS")[P']F2^#7%]\4^#5*TL?(MDFEWQ=L9>%=L6HQ+^T=EO)T66 6%O-4 M"T0$W:^?%,TP#-QT*B=M>W!6U[M2IV)<;DN5Q.]CP]>=J$3.@8Y$KD1PFW$@ M)U"(!?(32 (\ $O\XL,X,@E/Q!&9QBJPBB95"1?@)33:]!B!S' LT3YY*+_: M[,U9?>+3.I_,[=$BFRFY*ZO>9L*,;38CXI=DM<^?4Q+VLRL/YG X^E.I-I45 M3A2;W43A"BPENL 4DF*JE'IRT M18R:5/.Q#.HQG5[)7C !@,<>),/O$B5S>ZRE'7YN16,^'H.$8U-FX@3MD.44 M$Z@-DR> ?@$"[HE3WO: JDQ?*-GH6T#0!ZK**VKKT3[D7()OS"<23[F=<'Q5 M1<.8H#%4<,6.<)&N*&YW@>0W6\U/6F=70E$]*W@ZI3+=F%/*YI'RQ$N[#.?(B.B4&8X,IGCMBT6_S8>K:M3 MA2E_$8S>EF-J+F5TYY&;(YP&A8X?[$")0]!@EW9P.<+5=FNV(DQ':%ZF9\5#=C!Y@';,0':@%A(\$KGI0'/^@.45;>^_,3%H\J>X MX$6FZ#LF?Q""U3D!%4\TV:.V7;OHO=R<']G%:G\VWB/3GEW6*G<1X"B$R'"\ M)A"N68\)0=;I^UI#6?N.W%Q.QXN,7AOWT(F'S2%"&-7K*<@@@3WK-&8?- D!:2X52T'VGVM1=/ G2/$U MS/TO:MH8-0?'FDI^Y4.V6QL+) 1K7N M:@QGLX%TC-QBEYX4F1'U$-$-.RGX:D,[T0WODFPFW9(# =0X-UY$"%Q-@2_3 M,_-4PZ8V9';&!@9LZ:G=?5Z4_.\JF'KR"?#^L!;HQF M"BRZD"X8$#V9/VVL-VU.\%.UQEJ&(#&.A)3QI>723+R?2 M:/W4:.AZ[M*7BMAQ*IP3FM+$%)42QT=25,IS+MASVF[;^FF_KVGG;ZU!_YMF MJ:"MJK7*M[=O$VXR8I%.'J.9D'-#9$.2PBRP43W^6&*R8]8C\,^I*KZ61P_B MQ*#,N[S+3-F.S)3TC2^2PY(RXSQ+?T%R5DS$@[ %W8V(Q/;W*CXIJ!*PCN1C MYD72;EKRXS)I?.O=@EL[WW-1][..+I=4Z'@L0Z+-="I4\_+DZMI^XT_;]OO+ MX/)9N!U=_RDMHV:6 .U_5L]X&HPK_B?+12")69\7C+G]9C+M=G82O>MXNH[_ MSVKZC.,%\U+PLCLG9^,TEE0OJX;O0O%@FF4%NB0D8JZ_DBBE4_RI[RR!E0DE M$0;T_9_*[4BI_[TZ^B-GHN\3$@L_;TQFJMCY5,LP=+Z86$/L"XI+G'*>!WQ.7 3E M;=J*9@WQ^?FR9S99\6=:T<+7%8ZOW=L(Q4XGRCJU&\T7U/-(Q:Q:ST.I#9IE MO[L)SBVAY1U2L8!ZU_L/ _5C4GFSNS_%]L9L9("U49;\D>F_ZA(*$JA@>92IK,-T4LIPA%.47!**[< M967#?LU>KUA+__J$FD[2$ZO6V86]0T[@Z/R*_-U93N_O18*/"=,,SA'[>63J M5XV*]?"T#,KOTS33FYB[:Z1$(5WL#6I2 ?9\E;;R3M$F$6Z'V(4WT?&9:+T, M^[Q1>SAA[Z]:E?)@_N;+9;K(EK=>F2::N>D8GYFV?:4\GYXV\_E'<9F87V8E MAC9.^.S5.EJL0&!Y5R 0%PAD=@4"G4)F1VV;&4[DUF6]=LQNR9Y*VW>N;?]Y M/Z\\O*OR28W_-D785EW(K]JV.]U.[]FH*4_&1I=\"PKYL6U[J#:+U=9Q\?%Y M&3SV%DY&EH7\9A06M=2/\Q/I6A"E'R1$&>56=]_&"1QE27G4@A M]5=NRRZC M7XJF@/F1^DQXY>4%7'C(?2@+,X;8'>8)U/&D]M6\DR];1\U7\NUD2)TKI15 M5JLL%?X3N]+3 NI4*_,/+YK29&M& <65E#M;K++E @TN5?QRYD*NV@M7W#LL MT*5"GF;*\PL SEN7)2J0[E9XQ>5WV-+>89'FV2)=! 3^BE?8TUD+*YL41493 M5 3>G1\SSX]0%HM_0P@9 .P?:7Q^;XTNCN65G!EIC81 _[9PJ,W,0-PD! M'J_*&)@* (&_M%O%8^4=G;U5G\\"T/Z7RV4ZS\\O/)VMR&YDZC(\^,HP=0)30O^;7_3U4X6Z$\;9 MT+7NW#U6;':&I;'>G524^S"M'Z)+U.A>^X:KGBG<_F] M0XYF\GF:+RU>H_AG5E5?;LVR4S&H$< PE$IH_\5!>#^]9C%ZIY &M95GG+0' M1]U8GKK)%Y67JG[$]IB5GNB)UX<8+"Q)3UA8TWSEPN>;@=QP[&S(38KY_IEU MZA=9K@RU"PLI6/N[\B"(G4F_^B+ZI.P/J3H=[:RW ^-"U#,4X;XI=_^1Q@90_D?9 MOQ<=8'CS%?8.T1::VA$.KSTI,9!4DA'74XFL9FYJ-5T$.ZD8NL@R)H3*7.[W8&1V/Z:IQ _,X?%!+K M[*4MQCFK=A[4-& >GB]O.R7];).U\[X>K7]=Z^I#N25^@)RHNHF6+PYW4BYQ MD0)Y0=MY5B-MN]N1:^_5T]K)9F!F7QL'\6.KX#%SJN"5VO;#R<7?U_.N_+?H MNU177P6OWJ@VKVJY5N5Q:VKA.:NA:)*L[6KC+3:T!SDG=LDAC,]?K,J<0F=0 MX0K]S9!PJ=YWQ1I0E;LJ52KD*:+RJ!8\=^#]5L&%\7 T'B/"W"OXA!)'(T,7 MNX W$RVWQAJN4IUTC]-G002G)/-G#]-?$CB$H+HM"@IP!<@RH]7J07!^NJH@%UOTC)/6/Z& MR#A"!Q,N729:%GIA3&RN7*I/AUJ.MH>63<13--)-Y]OBBXR$#Y;!6R,=K8#[ M!Q"MP*3^G,I$WV1HP2IY/47%RL*5;7>CN!47[P_N#JB>+"%[7$5],1134KJ> M'*&'WM .TL=9R1C(&'X6[KA M-"5_H.%I(BDCV9D0E3*V!KH1T"/B!S9=R#5LA'IB0$-LGBD?4&?Z.U(C!D86 M!>\E.M)+9FYL(84$FJ2'K$_G5=(,&A3J%%%'%OF=<$IANRSE_.0P1+02:8MEZ!R5KO>MX;7O*F]M[21XYI7!T(A7! MC_R<[9_]#>:N.Y"EL2HW>[!+= V4=;/G74EJI)#=$5JJGF(E NO+Y6B!LF#4 M_Q/?:-OF\YG]\E[K*G^_:Z&RD[8M-NC\'7A^^\'S4Y"C/:_.5Z1$Z)H Y--50=]'?[E!WCKAQ76@ZF-#D3&S MM"Y4_5$[KN;GZ/+\M'@EW9\$*L:O$%^_S*3$!&A+ 1WL(%U.B!UU!_9-19,N M=22S4RHX!,*[.K'8DYO+04OFLD;AK\#QX0SSGQCOQQ:AY+:J,W/ F)[B\/]X?A14/[^0,F:X\.GHVH=RT* M7)X98EX,%OXIS'>J%5QCO6:NN'?(H,4MS(<1SIRE.7C^KS_]JZC[S$'=9X;F M.#:[R9^3'G3LN.06/WO>\X6[8T4XNSZ1LL,(K?]0,;^?%M-H OL?(3D]!3]_K(S^XEC),6\E@$:5F#1M*8XSQ.G-6:[5V.V>^CL M2+OI[VSKD7^L6S?-U0!-M\#F_$(XZI1RGF:E-Z%'"OF]PQ+/HS-@?@IC2ICU M[]UJ;D9W%: L3:%(YYG,(//)ZHR+0_Q$-5>K/;1\Q36J5@>%BZ91;LXC0,C& M6EF#$L,(^Y1*;+MQVG,D?YM4%HO$G*.Y0IDN,'%U3)>$;\_56S]F 5>KI3#X MGN:MWH1W/ULX#W7MEMGYXU+J]"M&!LE>MLX\'XY\E ^OR,/Q>2A M[(X\U"$!++=MHU7X.Y8ZW8_GXG;LJ;1]Y]MVK==L':E%\^UFF4K/6TA@N ;R M4+3D^9ZB5D>UQ_+1]YBUI;E#@8^:/^J>%G2S4>:^QV2L@SNTU+:?7LY,Y6I8 MRE]_DZVW1N[0:?A3K=>3D4GU)GN&'^3\W,KH*UU%53#*+0G_5&+R46+16BS^ M:?&/M&WI6&QT;HV[PO7@FP*@!#1(?G1UT7P=OQV7" !*4M!4&=@H\&"!&+SL MP41'AOZFF&"XHU^1HD.B11!1#EB4H!9U8T(2Q !22$#6UAC]%=IP4%88>=YU MBKA@4+-H.K@JJVGY4U2>A.-[$KA=_58G%7S'6X+G_^,R^<.I/Q%_58O%7 MY^6"-)A8]M%D%:"T5>&OJG$NO["R3_ R5() +:S"0@>&&]ZH'3Y9T:=C M@M';X$?5D"7%,F]E4Q:-[J"M-*#^[-#T]ZGI[]/K<]&:G%Z5C>ORRF.&WI9U MNX:O6)+\)JOZ"&=VXL1:W/VM%+#IR5WGD0V()(ZC\\(GA.IK3NA*SE8@V2SG MZ2(_WP):9(\R\_=H=0#YBW7-13N@!TA= 0CUX"0Y=-I#&*R^C\>8[S=R* M; ECO]1-;%X8;W)%@ATPQ&1R0:L8;\3W!_7Y_V_O39L2U[[%X?=\BESKGN?? M714]"3/=YUJ%@#8.H(#:^L8*L(%H()@!A4__K+5W$@*$T81)?G7O:8$,>Z^] MYC%&;EXC\:!-UG2MIIFD3AL["Q_'K?D>IW -0#4 ML/Q9U10A&4OB0Y-A,?Q[2@;>ABA@BHS"^7[+H,#ZT!\[,L8B?"+B;\9[=K[X M*:A8*&["NZH*L9Q<(]*GGSX;B)G/L/+>V' 3]UL"8,9>#]PPEK>_3=N7.*]U M2K\8MG*/IN;CZ:&-NQ^G& BWH8.QQ'@@9[@H%QI+5+>RU"G'>;]YSK7#Q=>+ M3RE0,;M,(W=KG1/-4PX9RVLRBQ.'E/,=3CE'37%M*>^69+/?]ET"K%'A^2ST(] M&ET7J /-*KN*Q;KM]YM&L<62RFI.^[&15J&NI+(I'4.QT]XP)0QS'%RI0IO, M$/L.R6"SNTHXJ%T@H\TCWG)%Z;)L7)9!#Y8MQ_5>W?T]"/M,Z5".T5 M6E^DB'>5'#)Q%LICSWCK.TMEL)PBR.>I4PIDON.I/U>U+.@F1L-4TBS95;>G MP64KZ8M!(U9[&41RNGZO7:<*?U=IN?*UQDU'I\Y:6=M0&DJTVJ5N?4J2_Z<3 M\!"F6 JQF8_[V0KH<#[^&?YQD.YQ 0?Q!9HL%IG%8?*=6TVM$=V)YP-HLL,$ MCTG^D3Q[+F;OS?MB.:!!K58@6^K*AL3:)Y?^/ZG=_9W=:)AF6< %3-IQ[&S M1X&ZP_'YP]2W,O#E"T1])$:,(\:C?"J^2K;.'!(\GR/D64Y-1M*T/FSD0]+J M'I*[U4Q<]C/I>..V%KCGWR)")I]K[G5M%\YXPRYHXHN 7.7#B20?CZZ2G["- MQ+<$('VD.8RS\6(JPHL+C!WTE^KR'9S_H6K]24([DQX;^JW9^/A8)<2VL(AS M5F!'E+<+(YSE!4U-&,**";R0V!]!-@MR/I)/_.@T$0[SJ50 0\?CPS2-22XE?J:JBB3!)026V]WU]?GY'8]?8V&"1I=MJ2-X .F,\P!5="DA%&9F,BG MDE_EICL".A]I*0FB*)[@DV( ZM],"VPA*]65#^.A&>9J Z.*8H^ -@_PDT(1Z?1.!\65NGYND1][P* MP.$W\"]+G^[4K>BN3E,Y)XFVFKE\$UOB\UTML28AB:YL3:;#UD"PU]ZV';%F MP3-@LDV(1Z>I*)\4OBH-]@BZ/M)L&* ;YN.)^2U6EZ;9W$R]]=V4V03"C*I[ M.#?[S]=WV7Y<,^6 JG1<&<7.4@#6NK$9O\H4O6L$2D%36@0$9)07(_NALLX' MG8]D% 70)?A$_*NZA0<9)6>0$9VC;F>9>/A/BG>]>$4RVN]7\R8*^279Z(J& MXV2W!R%&014T*<4P*"!&4GQR+ZAI >#Y2$QQ&E&)I_A8+ !W2GB^.^6:-"4/ M9XK0^%-XNH]?G;7GI;E\R;AS2EQP%4'CP((%+:G$EA:T+._%H(<;- I3]P]0 M?S0 'T9J!@)G99T6&9-Z'G-HP,RP*U2IU/HRW9/#%DVQ?P\6QR=BP M.CIT&I:W/5@R%8)!BPSL4< +\03\_XZYWWV HX^DET)[<=5>#W-(+S'+#5&T MITZCSV5.!#ESWS0C?[777"O0P%9A8ACV2 AYNPSCZ? +F/22V%D@SD=B<3X6 M_:KS:D>AZ1\!)C$A)L''Q B?$H+1WV;0H+>'+R)<7-P7_YS+S\'809[YM".- M F9>N8OU>]Z@#YI2PT>GT1@OQ'R;"+3G599+G)*/'"#"LEUC\R6P/W64L5DL MX4(#!H@LH0(\P7!X F4/UX5!6'M\&;S]-4PIW1QTN_(Z!I>-H)53S3 LBOD^ MZ$@/)VBF@;E-H! FHGPTNGR%Y(%QS#DI'QE'#$X*3BD2YA-BL$78/BH!ZU'_ MYE^X1EUTE<4LJ\IY='0#)E[(L]XS+N:=>$^\794[G]V+0&VIAVUKX[9TQS#_ M.2MV0HVG>#&ZBL=B2\:\+@L^']E=@DYG3T0%7HC,%TQ3(7A@:MO$U+QF9P.. MN6K!Q\MGW\_3Y*I8><[>^-T]"_!0U2A._P(T! U!D3MD;OVEY:UU5]FZ5O]K M"X]AJQ;CG0HQ!R=N-=*59#LC9.@QS%>N!Y?]FY?!8^1ORY CMZG&NFI.K"79 M+OJMJ3>9#K6@Q1VZZ*,17ERI_>AV.0F7!**/0H^6PB;X5')^K>4JJ?)SZ,R5 M?<5ZP$Q26M*4,K''[ID1>0M2GRR1'NF8A-. 1S<[+/]H"[%C F !$UD*G?%\ M&,Q 4=@K,EL,D/X16HH6ID:B(@ R@(S<^6K.K8:A)Z-_JT@=(]VIY]Y->;24 MV2&YV[-6J?X@-P?GL;4)-[8XVG^&V"O;0K29"L6@Z1!'68-E$OUR"L,.@]-' M:HQ@5"P)M+BV3%O7KDL(L&+C7B?4U)TDP/=G\:)5RINYIU5ZD7S- 5XJWC._ M]]XY4\<2(Z8?2-"T'*6Y);$4'UV@C_3W=H!_[)ZH=TKU97:5.ZO#1?)+#F:C&W?I1=K*>E'^$: MK],*FKG$L75 +)[@Q06J2+:6#\]O=%W?)F,CH"07-2="_EN)3 MP/C%L(^MC!=C)M_MW'SD*RG:PQCS*Q9(75[IV,8:&<_N9)Q[&<3J[>>+SS)Y M/HNMI[VN=P=+>PL;&V1N+V388)E\UA2S3D[_^Y_C8^Y<)DK]%W]UQCW7':1?A,8"D5H#'Y%Z]8'1T M>G[LWJ^]T]]9VWPHG2L5 MRY72?:9R7\J5>2Y?R)QPZ4*6*]^?E?/9?+J4SY7_^[?J[IB]*-ABV.?X0RGT MV[?/'])^@,U&GJ6! 3)%^M"CW53[7I6:^P$,P*%"L9(KARI%+E,LE(O7^6RZ MDLMRY_E"NI#)IZ^Y<@6^N,D5*JLB4?)ET'P\>Q4^JNE([W<:K*JW<*[U/IP1)=>(9/##**)\6$&&<]A!LN_Y&602/8S M[;./:YN$KP&5RUWI#KH*SC@G0&+IU?I.BX_! # E[)U M4J!Z0](@;;A"TOKNR6) M-9;BET\#*"Q\IZS8YBK5;1D(@;;ORB,A&JD*Z;W=EWL?\UPW:QL)L<*8@#ES M$'+#.0@ONF8<'ULC"A##TY^R;GU;!A$D >.\=5"L9&'8#64.+X.'IP^=G/UY M>^\F%QZBX&4+>.R&,IT?@+K#MW/VZR7=Y74PB>SX'@+UWLYETA=V@^[]$'X],0EAH34B[U(_>,I7_L; M\QN*#+\#&0\RS@"%-0P(&=SJC\I5-%EY>!"#G H2BVWS5)#P]D^=0-[Q,H^S M?]VYFA0"&$VQV4->VR2\/2QGT[B[S M)'I^'B\&FLF[EQ-2ULWF?!OZ$1S0%V5&W PN6YE*Y?W-2-^M8N9]C\DVZV85<=:T5> 3R?G-)S9$:%Q-%I5$CPB=0JA1!!]PS8SOE"22'IZWRA<.,(AO ^*3! M0_2\\7HE=9HK-:D_S$S:-+\119_F_FR>WSG9*AQIC2S M^^,JLZ$&M$SAX%06\"3L-PZ+O"I+WI9\O.[AHD+[2K=N?J)JNN,D[B&PWL M6C1K9NOE$TK^I6YMG%7LPKFJ=,]>28LKGF6L>\?8EIJX-A-SU=4/LWEP75G$P M;^>H-?\GE:V+-X0%O\:9;9PS)/?'H[R&078 )U\'V2T3>)HSRFX@Q^6KN_N! M_-!:I6OR87[=1AA)F#;WC&,'FJW-QIGBF/$9VFOROX3!:(J$8[P8V9UP^S;- M$TR&H[[.$UPJHC9OHN! NNGD7XOAQV*)',8(?FGPW=HX8(SV.(JF(GPL\M4. MV%OCF_X"S-?%!VER5RJ1XN,+M%/<%DZX==,=D^&$W],=QSGB^8+S'0?ZW=NC MDCF'B\;77R5;]G";D6O/PDR_W H[DS$-?%*2.8 MYI?@PR"%8ZGY+1>_-[=<5IE=[)37I+<";SH-\XFDP"<3JV1/+:2W[A$%^D%< MX:6FD"[,S7U44==C!=@#HXRW6>M,9]R_B3#-+ULS=3 M3]RNN2D%'T2,3YY/ZD>JY[$FTR$O-Q$NU!VAT6 MXRWMEA^->_Y:-')_/NL/N:;/4NXP&O>[+V:9(OYYDWH'2B-VURZ;1OLMF+9M MDUO9D_&\Z];+XGZ-GPT.T@MY=T5!V/D^0YL:0IR,)'P=0KQ@1=K\,<2#0O$J M5YGR_979PUN($TM-S%T; TGB$*U4/,Y'A54TY2TS.+X$[G59>!A: MX>/A&!].[73L?G/3H)-1P>=IT.,\+_/5>="#9#0=3J%T< M,4ISA.-\(K6U_'"],/>%+4X'-X8G@)3%5;R*^P5M/Z#I[USNQYDWF'O3? M^M&'U'M%4_UV>\R/XD^,X]ZIR*$OXYO7QCFCR\QX_MY1_$6MXG"@!3[[B>]^ MH/)2X\I7XZ0+SR8'#MJ\SYQ=#"+&WZM5,N/7-H/<7US;WNG5:^.H\:/3&(^M M$L,+"/2=Y*A^'/*"_H&53GE-3@&<\!7FXT*$3R57*24+*#%J>TG0#^I*+C- M?@4FGUMF6CRV#FQT8ZVGPN7M98"M U<=$+\T8NWZ*/&U,?FEYHVO!.HE^+S[ M4A\0.B8L@]"+\=5_Z?C(TQ#\SWZB-9!V9 !L.OPR MD)Y+G=KU_=WUZS"5<(T#>IW&7O8VOC93TX^5^#V)B%E-_VC&R-5UN''$&;*!()HL$ 9= M9 [)+5G":(U)MA?Z,F>="U+E,N)E45 FR0%R*+A% M..LFIJC3$;TS2J9U[@>RV;#PNU"\UNF?XN^?(1RZUR# W22%#2TVM:ZJ$S8$ M=PZ&".O"D#*J]^E._5H%P%V:FJS790H-&T,>([5C7-HDA<];I,X9@ M9XO$B1?WGL 0.%(#3Q-'+ZL=.O\3L8".7*2VT\C9GW 58!7G%E;0"ZL$6%C( M4#'W1]9P[#(PE4CTA+NF<.6:I(.0HWU*X!%O0ROA =9 MX\9'GP#?/Q%)PVW9"%KYB5?-Y;I<#W2@6GFMJFV*A(,+_;0 ?\X5S!R&/PRZ, MQ),=1=3+*_H;LK0N'J2%V4B;G MPMEQ;$WO);8F;&PM]:X*?\X^I(*1^$;8F@@*6S&6X3G?=(BN##''H,M$-1/A M0T'-.8(Z9 MJQ[;>)U/'-M_V<&OC["2\D+IT+;=E@Y88Z,7.O>X+^\C");"] M6@9G_6I]FP%H5\G;:^E5[.5:0PVH> WHK][SU:6'\: M!\60WA+)6)R:R1*.9#$5@PH#(".LKD?/HE,Z$UM2/U M9,V$W^4ZSY6((I,&3R_(P1;5-FRU#-P? 3I\1%C@'4L+234D@7V FF*5P)H) M=REU3$GK<]1>%Y/L>92F[0NE!O KC^O@9MVLOA)X$Q!^76XTB(8JOF8JJ,P7 M30W$%CFF$HL^T% -8$KUT!S[+KV+*KHCH:KIB^MJN_G'>&WMEHJ^G)!95$6/ MXQ#M^=;B;\1QW1(F'_"=R^+K =I1/&S3L=]< TB82A>X1U/-9@L_I'A.;G = M%;1X0Z83JODQ]3X$DFZZ1)NF+UB(/$(0EJU)"2%%WX)D1E_%-#8%T+I*J!]$ M!N4- S*AA@PV2!] #=S7_L$V5(=VB=(?-TKL57LL%Y=)G^A)RV&1/HH:-:'D M @]A=#[NP1-.N'2G/PH M.XU+[X0%G%S'3R&L?WSH:G@600*S#1+SCC DPGG MKX5AJSD8@Q!I<_U)OHJ^+.23ZQ-'I8OKAE#,[J(T[ MMC5@D2&K?SL>S M;!L8=(U&0Z[)>)W%OARC&)XO:R&*6A0G3[A\A\-0-G[@[9>-^:7;$N5""F(R M.A ;W >A-8; E#HUZB]2/^#=>DONVV.7LPJ.,6B>."]QU@^T)ITNUV"+O^4Y:LSOZKAHH>3JN./8/I[= $6NI M"ERDHT]!HY,@*$2 -R@*W@>29_A82^N4FDT0=PA8)E?Q>P24"IJH =P7^3Q] MMHY;;:-X,6!!7$S@+ M:@L5U51E%LMJ#)4HAC2BD)\&S%%5]0ZZ/EX+6Q,S% M81 (QQ.VNPI!N$LC6Y, =GU=9BYB7":*)@[1HSXAF<),PE=1#^X1'> O&: ! M3$*0P@M3%^K \6!;^-QI2^7H4SY44ZDSU!C'1Q.@:V.O90:#%H3G;R,=+&3=P>.ZC)==: #M<'"8.R4 0L >@ M-;K4T/A2F29$EXMBWB;! WO=L:T!EH5LZJ'*\9"U2NZ3M;$,= *:=$5=A\"N MI$Y-!JQTTM48><'B3&!TFB'A;:CRJM:P*;4#* 7L!=8&1(YWT%2)Q&^P'M%V MT6DH!ZB4$@N^T;D5OK28'649BOR&VASE'* 56ER/^R&?D!,@7_:[W%*!\( = M2:A06ESFGY^(PL"@[4[T57P,">%"7UV:"VB7.@X35!5\DHH!&4Y3P:8Y]LY<4L\?,($TI$(XPQ.08O&E@,WU M L*T M'CCY1LJE+#.0+9'4F59FKY[>VB',_@-RZ$WVWQK-'4&F)J.6@Q=P4D^2%1I' M8:368]&\#JHT^ 'HLT[H,X!$%).J,Q;% >W"4R2%<@4")AJE!]N:! X)>T2+ MUO9HU? TNIKZRFARU/JTPCB\*_.!:A/4;2=]'G<5,(>I+F6@%MN4T:-P89O! M/ ,W:\."T&_"VJF=I%+'&GR"8^@A)LAT=<-MZ2:H A)Z$VMFVU38KNDB@&F M?$ .;;D;0-^2W/H"UY7A=]S]!+CHJ^%]S,F?IB":G=,3DFHMU+]0<]*(Y>+ MV_"\0/^ACZ^"DF6#Q&6SP](4%6#S(1LM&\)H4M+< 4T%B68A-D^1A*D_0Z'D MH#)A:AL2!+J,=+>MX*"'>XNP-D0*8K'<.8@O#;&^,1/C0R/8GM;I(?&3'LZ$ MRP4QV0)K/$4O0W7"?"=-]?07N?#2[0I= 9OC>3DE!N6>7JET,WJT&G&\"![= M[:@*C+)SGB=RV17."H<9ZM KL422/',T+I0N'TO2#E]B0N"3*:_<;>85LD[2 M@^MP'Y+NP,9M,C1 CP8\?3JG!)5$H4_"W)4I+_'* M39E263Z]1V+>PH2A!WQP]?97N6[_-?\:LP_?6F)0[?&^<,333S9U=!J+IW@Q M.MV=+'ESK(.2LV-;0XO'I=O^L RHRQW*=-RU5AL>:YZQFYS& MN6HZ6WR^/2_VHZEAGDQ^N$)K@7,KCJ:\>;,\,XX],R)\))KBH^)D.M5/"\6H M?XJ 4L1<2J,'0WUT0'OC8'=7NN3L>QTHE."N#.Q<[IC .BU_,V@ -!ME>BK* M()QLYV[55.]!'2;"Y4969IO$N*ZYI[+XPGP^J/%1L:/1^DB;:J&U2[(6,A: G#1ZA2P6. HN#7NLG@9'D4/$58QTL1 M.N%NA@I:&\Q=W0KM850=0[ZZ+4'1QX"&!+JZ,(!L*W-L11@C[FHR8I4"ZJ6" M2_58!2:'RI8R9ZW54DQMEX6W \3R6]B26F\1K'&"G\=$Q8R* C'Z,CBO7M3, M4NX^' M6@U"@#L^MFIYZG)OT<)&]U;C'EN-T\2:,1BF5@"A&SQHWQ'-"ZQ'I^?'[OW: M._W-5?I=V&1: Z.J]IO# "6#1D'%?8>C[KO^M6_#GQ"(__T+()D$3A?N/ZZ" MT?-VS(+0OX V/Z2^OC1<5M[NL)K&O4;W7G"3]&AW$Y6WA239(?B:;E8]S=SF M0^EKJ/,-CKTRT4 M*[ERJ%+D,L5"N7B=SZ8KN2QWGB^D"YE\^IHK5^"+FURA\JV.=]$,CE&%DH"> MV,6R2,TDXYD:Z5J-)D?=2GWTK]F#DX=Q@'2G3H=#N;[*RGI-4770+S,LLE"! M59PI:NW-G;282AV-:#TCSBM_7_LR*&9%4%9SS[WKQGK4J9-P3.[XC/-B^ 21 MF1W\(O^%>T:MIF0X\3)XC:OQ]L/GXX5R=)K.9$KWN6PH]_K/HCCZ,U#94M/# M]/[E(,6F9<.:C"U:S@Z"2%&L;AS4B8.?X:J:_7GI[5M6#*8$25T=5F#_]9O[ MD.M&"PRAQ#]'IZ&Y(RVFCJL8F@0>_:&\FB7 "G#C_W<4/AJV1DFE7&Z>MGQ1 M;:I-&+?SL/:ONU \!%-OQ2-BW91> MW^MKFI%@TXYL+VP;L& <2D&33_SH-!D#)$AM[] HW\#F(_4D &R1!!])^-(L M='H_:%I>1'3#DJW>I#,PZI7[['FM6ER%=):6-;*UIHV>NS=@@J:6)!8W ]OT M;*&Q ]2R!-1\))84:,1"A(_$OCI%Q8-81MI[8>!ATBOK331:.?^4+Y<+6E\. M3M[(M,SQ%W>B\R=.+7C$7W2M[N%Q^<>!$IA! M%X_Q,6%^/_45CFLQ_=>+(U6 )1D.2ZH]R/K%H"R>1Q/^R?$I';XG@Y(5;-8R M#QHC=^]8)^2-,0MLH"GPX42,CZ>6YQ=TUZMSC.]S8C[RBPCZ\"+1*!];P"Y: MZ< 8SW!:6<]L9"V^#)YRG9)4B?7)E>*PAI%(SF0<9R-=I^T\@?FYM-F70:=) MI&RV_7QNK#?Y8P0N_B<=#/-=B@U,308]C.8PEXB"]=D953?T,C9:.,."(U#% M:8*R1R9"4A B8[DX(V,DOO:>E\&G%#.J%UKULO.V.?@'%/V>0QQ.#!R[+0&, MIX?$X E3L@)"D[YE:X?_>KB=V4]>;,'?7*3(R4@$U6)5PT2CR,O@\?PUKL6* MDER1CKP,KR#:#%9/RY5BYNKX+%W.94.9X@WF-:4K^6)A?+DARAM=K/&0X;10 MAE.NW574/K$[OPTIW\T;L(BO1O\J-DIV3XDZ:W5'&88G&Q+C8PE1,<^$*)]7 M\#)HM&M*YIK<-Q7YN^5/)5\&D6RA_EA[;Y9JJ:/3L@$0.::M+T(U%SAM0]]J M9Z<;@%A8M*[C]9[M05PU,=@!R"ET8F74;0 ('@@65K*4+/V0D.6K2&([DTQ# M72A'*_:/-7N/9>J;;-U;I3:<;]395C&T-<38X($ MBD"SAAR@6/E#W8+^]O'YQ- UNM"$^^7S9[[J MP]S>Q+ZM6HP'GQ:#Y]-ET(= HEBMC=*=>KK>ECLR;7LD]XCU6(>'&X-,]%$R MS#,EMLFQQ=:J>;L%)YL_-;+RO8W!!"(LED(#/QA6'*/),5Z,!1++.1S[8K)H M[<>> #DEIG@A.5]0^1/"2R_/0@=:^34GR+?/EUEQ U-[:02/6?[,4\!Y>0KV M.F#T90ZW6N^=Z6B;!&Z5$/AX>'EN]9T#?SZR+#].,07,)Q;CX3@W'PW,O R2 M:3U;CJ8OVNGF8:SMNCRT[I[,34WJT#:K8_Y6Q*#A -12^=X9@(H-C_"WJFH- MJJS+&JD9*G8WU8&A@XP WNWFU[2GDTXX? K7@S>%AFV4L"$2A[(6B>E8P1Y* MP/!ENR\[_$Z.:<,TJQW[MW'=!AE@\>9%)0<'J(O^'C$@C0,'TMA?3#;ZT^K, MDT)B/*R2]0RK^/+>ET$M(_PY)UQ@"$I[==V&1+H2_O@V5;:QB/9Y:LF)]68_, M!LJ+_?7],Z3U,R 2Y*;VNW3_D4(76$4:T%1J$AMH>UG$#_N]0*V(RP(OW?>= MGDNR%J(]!%G6/>AS3-GSV/;2+&9U]_DJ57#^P:6@=HY13P6$IZTXQ=]CL^(B MXUE)ZW"U.XUIDTFW=H4Z574B-T73L*\Y.KW/^L-+K-0YJET5Z5 V'?;*M@JJ M)N@ EI*FO\AEULC6^CA[AAQ](/9H'/.L>ZEV@%[.P,EG.=(\UR_TKFMH'%@$ M%NQ'81[VS/"RC7#WV1_KI'8L?QZWY'J=P#4 M+#\6=4444A%$*QPI.'?:SG" M__4XO7@0IV=S:(M!4P:&_ OIFY*WQMD(AQKYV MJ+Y%^<;BBY&D9X#1/SY%3YG4IVQZ,]'GJ4PK/([VDPEU$VA_-@7MZ<;U?(YZ0R*(?I& D/?^:Q[+7R[\"@71+V7U0KR+J#W7*AM M'/6'!S:*_EC"=^(Y"&3M62J;5;,?J$:P657ZW$=E[,%3CRY0\JW+P0HG-:5& M0]/N-O5\MT1@YFI:(Y*M7F9*+7_I9D-DL[MR-D;E[/S.@E_) MU=PQP\TC/C*10["@B-[.U,"IDGK""Q1$Y"47O"^ST6^WU8Z5\>KDN@Y382FB MX6D]N23T<.ZK)JJF'$/\Q!P];%L ND,+Q8P,4 M',[^367-#>@BZ87X$DGG,)F/M2\P-6LZ/;V/#G*WAM;2FTZX/'L$Z>'L4CKZ MG7ZT5F@/% VQ+^B 4UGG>JIB=@Q8*$Y6I1-,:?9@%U9.YYK60!^1Y XWM@=K MI+PS\,;:=EOJ<37&^*1YI(S2A:/!T#1]VAI+$."&GD38LG0XU M;^-Z!ZQTA*41TY&RX^-^_%X[H15W2E)0*P#[\4C>>@F'- M?>']7;OIWJN2Z+#FQZ7@Y9@-\_.1OZ2K(R/_53KSXKX_*>^IZGIPLO@-2D^A/.Z6KQ*?#TUW5O:+IFF_DV(;G/9ZC$? MLM4GM-!]2UCW1N5##OMV9#J/Y[ /!YWN9V;W]\IAYZBW RR2_=WF.'_9WYW: M%O>VUR#8>;[1@/-\5ZY'V+(4X%VM6[ -Z8M<+AWI5N\JA?@RJ>U?SYKT'TZS M^HY/,]Q]#E,G,.E*X&-)'U,A T\##B158W/%&TXESIU::):3\?A;??

\G8 M6MVL*Y7GJ^?HTUE37$OZ M_=;$K-8K<6-'IV(\P0N)^0;B;A#$VL3OYBI5;!)Y#*?4S_!KZ:KBV9AL1TED MM>#7^J5M'*W6<$!#PY:M.5C?YK"EFG9S^ M]S_'Q]RY3)3Z+^X6$.LWO/3=))T:* NQR&^6;P7+Y(Z/+4Y4EWN+JJWNA<<] M%AZGB4!C$$FM )#)5"4O(!V=GA^[]VOO]#>'W.47E]:DJES[S16 A!DT"BKN M&]#9==>_]FWX$\M5 I!, J<+]Q]7-2*]'5<)4!@\4E(^I+Z^-%Q6WNX0\=QK M=.\%-\GVX<*),0P94E4X$G\97+R>A^/-^\JUNB5$M>C:Q9=![^:C=/VN%\1P M8 /< \^:R]SF0^E;@O/Q429#Y0F55) $^D-22%?'L,OWV MV=I21K G)2(>*W*$BOL_#AZK!TYF+'6*$ M9#IHDJN;&JV"@O>['V[-KJ'K8MO#=7&P[?$:U)P?IA?]SP/;>0FM QW.'4\" M9/J*)M5$09QE5 VOL-XW/EK3.XV#O@7V46N18H?8!EHB(>J?[3@.7,W-P<; L8X3I-8FV0PB[[+%;4R.CEECBZ'1R=/$_ M=ATKT/TX4D:_'5)6/E0GGG63R=W5_FB?]<:W1TH'+/XC9?+H5!1FH"4=;@MB MPVAI9,BMVR!4L>< ?$:./8VK^I+*LZL(W'Z[C,E"KR=IL0,"!X? J=D([!+^ MH29+CH2GU0E6.8-R8NM'5#6B:&SU!,'6'T8+T+\#:I2F8Q*^U75CV"V$YW2S M^HHJ&= _B2A5P%/ %: _3Q&M.0;-!3 M/I_?_U1KY#ZYD2X:4Q:V*_TS "!KF&09KF3680J^YIAXSTR^"M#N1^G7[OB*TO=\A@!N.A M'\;>](QOM-RUA]X)^]4[P1R/1,"\;VXJ=?A?YK$-D1&GB\>;*90^=%/RL)PBTD\)4T@R_O_XE[^FS?">U M5\T4@I8<,5#7!#ZU0+5,H.T4_!R]LMYV"E,Q\OH^__9*I'>E]+KG#176(2/B M"YH5>V1+[&M+A=0.MU282NWMFCB(ZQ_J6[1^:*H0N-3"QJ0"GXC']ZRMPD3S MPUUNJS"55FXS1-5N[J[EF\2AL<*&Y&ER07EZ:*WP#5HK3(S;V=;6"E-9"C'N M!IW/XME3-+%'E>,K-%<(6O*F%O8T[@9-K&V*]1J[*TREDJ(83PFWZ=Y]Q#.^ MNZ-4XD]_A34(75%8T-$9>(>%S,O@_2T9; "G1C +; 6=+1J%?Z2X"WD&*CD&/[%!H,&8X9;M9'QXOHW6/WO#6J[[A4$U3V8&MO\UB$AA5$".2D81S-%$E(^*7A8I*\_:0[K; M8Y9R=)KOA%"-P3/DJ62R*O -Z9-39*DJ*_ ;8743B&Q4SJ#6R7T0#>NTZF8- MB*3:GV0)63=+:#0(UF>0/'U\1?HL ;-!S.[4X!44X[WI)/=9([H.-YR1#FG( M1KJ-S03055R7/37OP2MI/-Z8V2(9#(E[2$-T9U7V+)VS9:0'K<^EG(E!T7/12=X<5P[/9?7!G&W;.-LS.]DYM"^W+ M]^Y-M+7S9QMV7(OA $XV@LYWD8^FIIXLCW*^R_:I8"<.T'6I\+?!&5H4G"/Z MP4$$[-C60 2$!2'%:I;M/CA27>U2;1"KK5UUS[EW$VOL;A5X.=[%_< KK XW M] O\R>YRPZJUG:\1X4 G(G4+FO/:"ZR2;S7JC4N;1DO57+HC\KP1W1'7A?WH MF.I8 _"J[1'-D>T8+\.[;0VRUB.UZF>TW'T>)IG!*UM$=S9)9::LZR8^);#\ MLFG[]=(5A92E*[)MOLS9I5_N2#%Z=!H3!%[PJ.NW*(HA!+-:0]3FT$? -XY( M74WMR74RK.>T+T0#F\CPC>;JFF29V=70PT12W\' MF@$88GLEVA,*[E/QP6 !M51[!9S.E'S=[AE@$1!;L$U-+4GW1OF)*+L/*-"3 M9 7=2^>J1KULTZRF%3%?3C_=714TH9]]=6,^GIADOYH>"_5GK OOQS<]TU1: M,_IC]A8?B7MU2'F-6Z)8C$\7 MQ?@K=ZUVFAPVAN#R#HNC.#$JB^%*+UEL?3U'%OLRX'&.+!;C"W&DZTK^%B^V M&=!Y/B[>F _RX*&V%5)5C(^RE='U^L9%XD>G\:\)4=X66G7:*Y ',BG46B;.R)EAO772U1N:G'MP)[QH72 MV%YMK][4'?F&7PG,,9Z)7TY4@:%6U0I98-L>?9JV=6('*=I2GW88D^HD9 LV MYFUVJ5MV*TPP1F6P0PU58[$6MQHFVPV=@/^!!)SR7D3NSO$4)8\/L8]2MPMO M8>8\"X?J_(CS&Z^:_(;"D2V,*H0C=C'MEXG;!LYM 6J\BZBU]Q"-TW0ZA.'> MAXS]J1BPV&,I68YJIS3*,VWM'+KJ::]-7$=3DCNZ06$U; IJK^#< M:H8M)5#-Z!"VUPXY;DE*8]JV\%FD1["S%MS! @=3MLZ-;#U$MZZ;-6O_BP"/ M\P#>BJ *+00J;E%0L8TO @SZ--#T0F;7"@&23Z+59)U>2N'AWA(:(-,VQ "' M/5OS(_W.@ T@^T'6(TPKEC4IXE_7YE_VG(P2\J$&$ 9((B"Y>035M('9.T^ M*V43CQUCV% ,%".-P'H0318[TL"%P70H>'H'!6#*S#LHK$6]2!Z=)A=1+Q@, M0Y:UZV _CZ%(0%C9 GS]J]0$+QA'2E\J9N=I)*OA8*;Z(,:-XJ=2V@ZE8CTX M@[T:^>@6LQGZO8OSLC,%#,O M@]N'9/.)G%7.TWO2?G/[?:R++.!H[!1G3=^*'J9OT>E;\;V?OK6CJ+PM)+E5 M8[;V!@9[?;HK#\@*I*?W+6A%J!-UZD7TK-ZJNJ$10V;-_:U,+3TKZYBK;VJ> MW;RC$6&TF_>($KGJ"UX&'ZW\1^ZL4DD_;4*/6 ]6!]1?>F3WDWMWNDR+@O / M;'%ZK2L\80KC#DWVPA-.PC&Y<_2O1YL\]E.P?5B!ML3HR0C1C)7&)<.@GCY7 MGQ[+-\FKR_.(9R.3(/JW5T]S-[?7Q:=<+G26*^3.\Q7N]CI=&%]KB!9!N6J@ MUL/TV+'M(?\.X"B+G5"9= UF)HE@)HFIU&A6 JV]3OS6N:J*\^' K!I&[#"8 M(ALFC4*!V=>0.S1?M&-HJ3&D88G3 F#74ZVX4;7..!K/W) M&M<%^2!]<@3.4*;$GRBIH*L.D;+&AASB,*FI@+'I,-8X-7.BIT-GW 9URMTS@&? M!7LL(&+1M3I(0)2+&,QJP"8Z$O-06*,&::XT"Y.YGA?"C&0,;HT_V#4ED$X] MF3;/85BSP-[ PLX3.>WNGKI9AK66Y,9S&-GB6=^*QVO>)0C=^E7KZ?(\FZ[' MYGEO%GZ3__4!4Y/'PY&CTX@@\/$9_C;/LH#,RB"3_V8 H 5R2XTR MV9*LO\U1^6/C*K^[I&F1A[T,U(=F,25*[?-*8,..M^"H#@J^?T6^]-F 5AT= MV= OSNRBD)=TPG3_V *Z?UB+@WKQE"ZN2?>?M^B;]&6Q%,K>_[HN)(R'GM%29>,Y9'X1_ MK05 >1L?\2DI1+>,B (Q)C)(/1[ED4^:H=$NHDU<;3]/UXSCXQOI5=7L2_71 M^)[]M6M,\_.?C_*%5 @_EX?-"$=>P&GP!GZ)X:*SX+MD=S-ON-F_SH.'%1V< MV+3?XT)3X1AJJM-TK'\FT3%]0$-0DW2( M1AL4-0 *]&?,<><44(2Q_U7-/L(3[IS5!(=F**KA259\MC+.C_NN]@+G78KJ M_>WGTW6V$*E)#=]Q><+[MG,:: HTT*EI:AXB/W[ LRD:J'8KOT6BM?QSK[6K M>!:<:HGI!].[]'C@6>* 9U-5RV3CULRKAFY&7G<6TP+4&2/B;/'LI3+.=(U_ M/W1SJXPD>UMX_93T"PP+[2:V!:@+1K 'V707SM=TP;UUQNZYKSEMA!;P+<!B\VSG9<6OM[A2@/ZDVE74M,,51+U%"]W82A.A5T6Z?? M1R)+>IA7U^_W%2E=*G[]X[(BEF_.I7=Y_Y$R0&,@NC9C8&^1TFT/B/FGJZIZ MWC'>4]\ +8.T'&(S+0=O;W/F@)PSK(>KSE/)D/-F\2VY_[@9I)T1!]3T&J Z MM#,D:S?8 ]?:#FMSC:UQY[J=TX:'FSFT97;R%B*[2V=],Q/%^UI33TG2&BWE M'5)&$Z",)I>0^ZL'\O85VUS*Z+-^$6G$TG_O2G/;*6PQM@6H9>+XP>D<K[74\H_,G- M[9:ZQ4@7H%X8%68FR'Q9+]Q;'^W!!?VEK)&OV*X.P6.=$R!L6M>)H6^<[[@T M^12)/&8BT9IQ-K<"S@=SU.867N#8.B4^*BZ9)+JZ6K6'..;2WX7!ZUG-3.A" MRW]K<2TX%ISJ'@T#CLW*^MR.J,6VXIA;:S>:M7HM+2>2ESN*9 'JZU&<,C7+ M'[$]R<5;BFJCGM[WO[UHU[PH*[N):D%JZ1CQFIYF.9RKRW;#270[]I!"9[+I MU_VWJ]>S?<7:W%+L=2E\F?J5H'65_-UE=0UVYFXI?#@ :)EH[68\&EN*8RZ% M[V__[O%.N#&RT;?=Q+$ %3ZL/%LF3>7 QZ8I?&?]S+W8TG-E1+$B%#ZO) M9MFN_BI\>XAJ;H7O0BX6S^YO+NLQ_Q6^M:!:D I?FS%AO '/J&:T MS&-?!KU\J7,5^WR^2+[N^1$>VO'XVV\S/J?G3NIE<-U]3?:N'V.M)WD[>NYD MBC5:F]-334[]>.:JJC: M+QR'8L!95UHD9'=$M(;LR9V>JO38D+2>I,FJJ7,U19+;\'S=E''*'8I+7:?, MD\?K033*32KM=:;$*:0I*=@-LD8(LA"=SHSDX&FZ%?,T8,&T*2;\&[*F\JD: M7"MIV/_2U-@<,^RP635UN0/O&QW/(=5J("VPZ:0B2U59P<'B'RT"JJ/!R=A9 MU&CA JJ4F[DOPDZ558(7=FJFAAT[[2:9PQ:2^ E$ &P<#J"*.H&DJQUX5)_# MO;9101A=CD9Z,OG ?1)8.5TPU[EAH\ -\FU?&0Z=5M[->ID89" M0 ]1.TT5NU)V2%,U9!NBH)L8"K' K9D* A3@7,?1T;A:!FV,,NM$X5VC!4&5 M(3WL/BIWF((E8Q//BFJ-BS/@B:$.()'K9X2=6C4DVG9UK'NHTQ24;=4:.^< M636-FMJVINXMCC XT'$27VHM'$#"6_\Z@QO'5\*PH.X<+XAO[D,UE3H[-:OU MIW4S<#A9K;/9>'4"I]$&=,-%A&2=SI9DU?\Z; )[I!ITEN0H8@S1"&[IJ(9K M]YK[4L ;_'4*ZB!@Z9,U.OR #SGXTI)ZA&-W H:R->TA1]IC9DOE9\6%6X U M(\^>RHOI+)N6JF!CXRP\NR?1R:1I:KNPD909!2C)^H:[ECZ0O!P8;L.@@P.F M^"*6_Y/'46@VCC\G=K:C,.G<]S#@MUX6N29#T)W84!]B &2Q1ZH[Z(A M*Z[IO36PG"0<=8MJ#@@E?" *>GA F_I==-L1,MF'G2I%]@-L=\GD<^R9R[8_ MA/,QA4I10G3CECYF;92*_O!OVJV\3O2:)E>9A&_@S%H*&UBS @)443^LBREL M%F/"; XS3MDUJ]CK';0P1>G3UI6Z!'H!?"*6YL*&2U-%A_:5%\7?'#9EEAMH MKK(&Z7;KH#&[7F MRGU-,5TJT;@^I9&FK-NE0<[=^-@0:#JTY328 SI8BY9"2BD]4]GJ^TV<_ MCB%2,; Y3 T1F/FHT;2"FUT2P6))[L'DZ%OXTPKCZS/\T.GB)'.K"!ELU"P+(R<=PX M-7CI6 @$3Y7@7/B0]1+;GL:UX;]#@\O]:YN.+:<&/$<'3VA$AT.R5^JY78L/ MV P8V0AP+%@Z&R 1PAD: #EGR7;L\BH<[MN:HR^0XNP-CKFS+(HT:QWO- .2ZE+;:EI M#R[W5F "Y4Q[2+W;R)B9? D??(GT'6O+VK7,5W<_-?F7N]*)S2+X/* M0^;V+OY8-YZD+64$>Z%&S# "BIT0\S6+*=X*\-#L!$FC;G"F84YX'U'U8J8! M6@'L9SOV8X5]N%<5M3_82==D3CWTR5.I+AGVL%/KGM /-D$7O[)L$.>5^0YH MA!PP+"Y--!Q&#J8O55S+AEI[FPQ"7LMV-L<4=Z@U.+=OKV&X*LR^H0LZJ)([ MM;5Y+G4T+5NSO%^FIANV68NV[IDTD"1MJO]+B(6C4?1_B1/.=1JUB=J4Q"S= MT,J^KU%#ZBN6:&A!2Y2?9H9^H$7.!AK;QB7+4Q^W4KT,R=#!F;YO-/<]V0E( MRTNS0S@Q8L_>88@E-QI.5J!;G@ ^ (4"LEK,A^4VLB@[32PUAF'YH:.E3J>3 MNRBV):%#BL;G0SA'O:D1Y@B"5W8U(!:YBWU\T!&,=[K6! 3)$C;'76)NSJ&P MW"W=E<(@58&(Z3!ZMM^X742\W'XM70!=1VJWJZ)WKJVR7U0Z.%Z1VRS+5NIV M-;4'=UJ$/DPSI:NP@]\A,6KWK\&KVI*5(4 #>I-EF79ML;:.Y!E@&YJF'Q* M[U*MPZ 9O? *62-&G[Z'S]-1QI]O>4V'X+72IY2=<DU:T'S[T?:,UYQ"X:!"3@4\L 8 M6P:#/M@P+-O5IGDJ<)QPS#SBMBSN"7;BBLMC4>!F0RT'X\T_[ M\_)U.,4G;=O/_X]:SO-:!SAOF-88*G8LQIV_$@M6\@NNXOW[=P=>N7D%49-U*PY\Y/H*?0E63&A1HF.AI8K!U;M'J= M063Q,VB6GI+=MVX[W=V=(X@)+NEN^/@<4C-E)2ZYK<-,D XR*343B,B]1.)E,"K8B;*(3C M/]FS@ >'F$KN576P1/[?2(3#$J"_N:QJ-F%?[C1%C]2XD%4IEFG)I,'E/DG- MI![0(F.AO[D'F78+XFZ!6P\& $7/QW CCSF74=^204-R'F,;$<:'I=E]:#)6 M<(\5%DRO1'+*CVC$I=VF!5!J[8WG,E('I9!6YRY(Q\3PR?5UA@5D3[@2 +C/ MG9^5F'J1MOPR&3L 8C%*/)/%':PS-7.."U5YG5,]9Y6VZ-3+)89_2#]_A'\RVU.,.1'" M834:\&BL0.N0)G /P$_E:]5V-!XWO;J.6[JZ#BV(1:KI6#S."VBZNA#DN"'D MAE5! L#/ VCN$B'\64Q%HJAXA23K_3_P!L2$L/#;?3']2OQM'4C)!,P4A>IQ M#.'2-I4F74B5Q2W+N0R/?[>EMT6.PH*]O]6 %C[>.L1J13C=^;H8 R4=G88[ M0U:F+F_A!*Z1I@:#6OL; ZXU]'!8)&9_AONX-I'0/J%N%/:(WR,O<:*H>.

^I/5N@G+'AE2-EUTY+;[K3%K),D/V&TNSM)#E.6RLXCTO36](>$ M/6,J:A'3"6[AE7UJV(M@SJ>H80]_A867P>?G>?OMXD_OLOOF6/;E<3MXKFV_ MS#H\[7^16OTI^Z^PX(?]+QZ=1OBX(,SR &!SG^HK=BUBMCUZQ"V'NQ7%!I'I M, J'Z$.^!:C'ZUS@+=+\8%EH1GAZZ@(FPF85CP 9&8^/69X-*YH7IK(M-.&' M=T)FBVU]+' 8IJ!(FTW,((K9+\);AFQV$N*AJ8%0MK5IL4Q7\')ZC'&D*C'E M6N4PHR"^?$;!BO%-KX,")!@[J;';AHEE%FK900K+Y+>S221L4N9<&G%% M+=Y2DIP#9/0=\O"0.;J_2U>F/K.5O&+;XVW:;VFX7'5._%"=0ZMSDH?JG&%2 M?J'6BIBQSX=JJ;JE2?G3%A][&=S&S?OG:_FJW=S9PHLU%.=Z?_NW=[=-Y M8C?!M')Q#FS^^C4R."/13[.YHY5)ZRC.2;T,^G_^=-7S6%$0(EO*!]8C:M?3 M9*]Z.C2_0BX%K0@:57.8XI9W@GLEEFC?YX:32;E;E@] LU,L7ZI'C(<^:&8/ MOTWU;]QOW6P]Y2[>N0BTZ$.U&J%Y18"6FN0K7O&9\.+12? MME/H='B3WK!3JEB;/Z^,$WL01=9^6[I3MT(OND,?)8(=A>%)S,)YD?,L)8). MWQA4!K6GSS_]OTVC[OA+G,>-1-5=R]7L1\[QI]1ZYJ]EUC;J2DGKQ89['L'7 M'2CAH]-$;*;[9+@UT#)HK,1C8.P'H84(P^2$$#UZ6J]@=3ZVQU0X$3&7Z]O& M&=OMR[**D%7-SFCQ<$KEV",\)^D-+J[JUY7F=;=T'G:.-F.]>R(U9!67F/7V M6J&;]G92M119P-*;TSG*=)0ZN,^HZ2^V]ZVQ'47G+2-+Z4N[4 M28=.S/%Y8,YXK8Y+5Z'2P>DF&\'D!#'VH[YXSH@[7:;#LO'K&%"D*)E&2]5@5_7MB9<$?7"S MQWZYQWR-CP%;&B2NJ5Y@1#,�:T(G5U6([]%YW=I2W_=(_98$<66QG.^UK\ M<0%+["Q&#G]9F2OTL:"< )O_V_H_ *1Q#PKM!WCNOT M\I^/3#W#*6'?X9C'J&M7SO%'R6&W/[?SW"Q>$D-6LKDS7'79D9U<=32QB65O M#\[MT(D%O-2S_J]9ZQPSOJKCQM?6[.-?_5\FKSIU#6ZZ/N&R4D_6#^BWW>CG MWU(G;?Q==0$Q%*9PP/_9J#RIWMM7.'_L"P1H.9"SJXFR(!9V)36-MA/[1G#Y M<-U.TQ_QNGWT\="_MM_4^S^VRH'_% M<: ,)^):/A0Z.LWVG33 1%<_:'XRT70,1T_,[''Y:5C+>[NKJ%23[4EF=LHP M!@MTVE.P1JWA@\]E+WTN\USQRUM/:S#Z_JN>EN'9$I;93@PY_ZHA)<+ZK5-U MP")V?9TV/U]%\OU8HNLYE@K&D ]'LM"NPLFU' DZ,\=/Y& WK6*,;.&J#@#< M/0 &37Q^,:K],;__U?_-2!KIA\[43MTC/?Z U,?J;J.% Y#;(M!7SLA@]&G[,9!._<$;^[3]/V8?GKRFY6T/ M;NB0ZPM2%22:RV4/!E)QP$4!Z&S>O*+);@/(/Q&U^J,V8/9K3%Q9$[2R 'P M 2BQ;,FCBNSW56*_$:FO+>UI2-9TL4C2Z6'*DT7I/P^@W@:!?5!W#ZOZ]JLZ MN%['%. ;=.T08.12E1R\A@?'Z\'QNDT@.5#GMBUU.U=UT$.W[$ .JSJL:A_T M4)]5SJRJR4:++O:/]":WM_^@MF%50R_JQ& OZG*YU8@N8T$-MVTKWTYX'A3- M2?.%$N:^$^44,+K\F1,$]O/[@&&7Y=UN'\AA58=5[8.VN#:OY:W4)HK$79,> MT=]-LOTGN+6L^N"W/*B3_H/D0)_;M]3M7-4WUD4/N+-[N', X)83W\ZILB49 M%EA2==)YA:4><.V@R6Y8DPW%OG&2Z($:MVZIV[FJ/12=6[SU ^X< +C?Q+=+ M>BM7(9K6Y\J&W-%QI.8!S58.[#L]>.AD+USGH0?/0:'U$0*45.GJ#N2Z/4O= MSE5M3JS:[:Y#/G0GGFQ:-SF,V=7$>N8LO.3Z)N MO<\OS81C>_(>"@?'457K M?3R6EM%63O]_4$L#!!0 ( -*BA5CL]AUGG10 /H4 3 8W!I,3!K M,3(S,3(S,# Q+FIP9XV75S3<8;3%_\/H(DH$T7N+'ITPB!YE=!)"=-%[K]%+ M3/3(:(/1C0RC)4+4*(E>1AU$$$27"*YUUVV/]_>][;W/^LXZ#V>M2F8Z"ZS8#!8'P"(A#1?Y< 5& "=C%J M0H@A#9&M-T=T9@E*_'?W;?X>K=TAU"<&5CHA8<1]G^YF 2#'!]UVC4\%* $' MM0W^?T766C;NW !WSE9T6T<^:GL-SU_TI,FP%",E^:W"VIFCYVC*IAKT-9\J M."5D44/?H*K,/PW\*<[P:@XB"9J-"3,,OQW@I]=T41C'!?]RR!BE,?C^;(X9G5!DEP;RT-%2$$\@ MD23Y'@,M^;P%SCXAZMC]&Q+=_HGSD-'E@^$C(@M]1$\/!;S@&U)=6Z[R8)O4IQF;FX[5UU\I3GJ:<<"%5 M&[AHN(/+9!D]0;M*]C2$[6^4ML8/Z0=6;NS/N=G[J/Z41\=%=)Z4(/+0N]\\ MWJ1W(.^T[,NS9FPAF[7J>4]T(')-YD#HGZ-8=TDRXV1H]$//S6^>@1&T MM+QH/ JL)Z;^=L[:5L.ZF66675@*CJT[!KFPZLC3H0)-F>V@_+J?N0F@<";4!KDW8\[U=/7JA%PQ=QBOR.CO'D/>UDM8'B>O2:D( MT^8NRUF6E5[GHDF'(H27_VPD+I?U.;/$F#%AE &W*^!YX29]C;>F?-3E5RF> ME?UF/5[,+Z7,GSQFH5G :6F=LGLSX>N8+^ZQ(TKT+K.00B1[T)*_P92OM)1* M!:RF."4"IR8NM"/SU=7I766XR:DOOTZ-KU]C5I4:[N,Q[2A%1]7C\"KM8)2?V[1C:1 M2Z0\@JV=5P8V.75ZS_J>/6H]+-VLC K>2-[F(]V1HV4;A(HM M&@R7-7]!FE6$\NT5WP //%@[4^>F9/D*_K5#SOU_<#C5Y*B=G3>8126Z+ M/NX8LE'TSGB3MT_O'9%P=ZHK*+)<;0X=3$K3*NNU9.P<),WK313*[T)KU&&K MK1T##7QIGOOT.+9=?!2OWLX"(<%R68/ MG3QV<):[I'-H(8P181)52R:AB*\*S64+/7B$,K&75X+&C>1^_#3K]FZE.C1& M_E7# MQ5''>6@IXE'*X07^<:_-A=Z+0C#$]K[,\4(CR_!5(MJE96NR)+/?^5Z5_BM2SCO FW/(I1V.J49;W" ?,D=I%) MPQ UZR/O_:(%&O'CRK_GZU*RIV0;BW2U<=ZH&F2- M^_1X;ID#H;!A[5'N8SH B+X6R#'><7-LBM>N4M48)Z9"EE08)6DMPHHI2NH^ MS9:D413L)$<7PK)BKZMT%L#:/_<7 -#&/-;O$0&&IOR3&Z]3?Q(0+PQF5UWL1HO;0(,S'!U8O97DP_">20ZO? M5-),NZTFF\JP6[=.6&H"5V*.*/=&(UDVD-3% 4IW3)5\/*RW8$88-7#1::PR9WP"P()_TG9QVGWX3U.&GP 2?^A;7;"1) M O^+U?W!Q$9F72:'-O7<@MJ'<8B$V)J=MW7?FI]/ROO,FSFV4N?<4<"2X,<8 M/\J_R!3QY!O%] ]4-=3;M2&P,9'3BXO1_@'!GY.O/*S6<;6N=7"WN MI4(;"W9^(MOO+CD(D DE+,%RC7C:V_1J SV>\2^>X)L[+%_:^-<;G1(Z1=&3 M>'TI2A0-,U )F2<\DJ%I5U M6">6%C!SE2-YW!B/14]:U3YXKYH;F*#\OL".TD?4'L@\59;K[:6,P! M/HN9*J>@OMF&S;\TL!AZ:F4IF$OB=[+ MC%3;RZ;X78L.ZAIJK"N2+Z2P5Y]A+:.).W]$\%^4Z9I5V =L>*>")U.9*"^7 $2=MCO!4:E&Q4+[QW,1!\&7[U$?M@46*@Q5DOQB=XBF MTTM]\-F3$M&7T$.SUJKZR^P9Z^ */[P91%05G)HF:ZUF8U7C"#KP6L/W>L4U M[?.%X+WI>UP9AHU*\'8W^:G] /%F1,:,*D_06A+G@J,Z0Y^BNX[[N7::< P- M+[5HX50IGL_:^I=4OZTAN*KYLV?=P8P*#J29&DXOY^@$=[<+O,)_H6.F1A_9 M<[F23@@(.G )6+HP>B[<,_OYMD%Z[\Y'D]8&GX&1[SHX76%Q]Y$83+=P59?K5^@%5)\]8K.F+C=AC@T M$COMBL-GW7<(U[@F. \NIR7)RX>JV[^VJ-:U_.1#>GD0H?'T,&T>4F/3$XK8 MNA;CO7ZD:W6X>5R-'@S[DD3?$%;>$U+)I C/OEK&U><6@]R-E/41MJFM^>02 MWPI_J'XX>O+C2X*U2"Z1PP9B*5^$3[/Z]7'\[ST"IMK3*I=IXY*<_9J>$D_# M+Y:B:QY@T>0$RCWM&T#'Y7%[KP!C0WT@\DU93K"I7&DIDU(<[H M#L5G(S3:C&+Y^;?SY['$0 2I;/^N*^Z#2"$JYP_DP=1>4CQJTZ%)A#[%Y6<( MO\U*?;2L"(25EN5HMT]>6Y#]_'NCW)V3TA :Y_SM-?;CUUP +X?"R+6Y:GA[ MV/7+$:-TC\7NP0C:HS(03B> H'K0;>8R[&9A7;A0P89_R(6Q, M!)+ZZSLS; F"[GYC9INM,$5%<;Z Q1B=C!K\VN"97_,!DX63XV.F8R+RLH>S MWRT[AA"#@L =QSX"\LDC6I287S8?,KA_S*:4MOQT:^WL*&;B MM5T#II^6^.Z&1(;X^[:P3>''7CKY?PX \V,Z-4734/2>O*543X[K,)G/9C;" M>'%/XF="BBH9="F(+2H#TKKD/*GH)FZ:'WS-2BP[^D!/>56V-S5H\(@S]=][ M[Q\U,)D4%OMGX78Z#'_MTRWF M,D(UP2Y]]Y!)+]G/&-9!3YZ,VO_.[9=,]PUJ6F^0WWRQ7QMM%CB?SS'+;C"[ M^5J $V$ G69\-)17@<7"/-+:N4*9^[C+II@_ST9^"$T*FB\G'X4AY"!+ MO0K4N0E:$%\MEK.]/=ZM1\%/Q9?$"T(]YI>F"Y(7\VX SS&!ZHX 69WE4VS M27=Q:N(?P0SJQ\G_V-?E&=FL,*-K7RD,-ITO+;7AE@4C;4VZE_=/^DPX]Z;$ MIW!JL%DK%I97@9,'?)F MFH!;2U.$GY:8419C$W4Z+43D+9QSA3Z;\= N"2?5ZKU^-=(TQC/U:C?\Z:BT M)+^6 =LPB>UADKH[HI:OCLM_7AX& TZT]*LU+]++PKT\"80^DKSA<5IA%J_B M1Y> BY2S\*L?ED>LV 7H>Y$159UB;7>D5DRR/:7U]07::E,A>G;/O#8IV+/9 ME:4:&>%BH,Z)GG\2N")AOC"X8^V\/W1C,(E^]E?AW5]E8Y\-F0N02, MD)M)<[7K$Y-M D^%^)2G+-6<%9?IW[H\G@XW4WQ!68Y?TO57[CP'^V%IS(SM MJ$DU)&3M*<0*EY$M>Y(7'F*FZ[/JDBZVXK ,82Z\H,&UL4?D=P;J]?XH#__^ M5[DUVB&=UIKK,T(\FZK;]44F:DZF= X-XK*>5R5]YR@9:MM=]*O8\R#\]+PY'A=>KA$07NP=K*6*53(DK?\*X^AJ2O<]B(M4&T:<&FAZ 2 M@]Q\V;NR7F.J%4]5=QM"Q6D..;7TN?..9RJA,*D^&&;G?J6K=GNU(31'=ZHM M'Z??VY^XD._.VN*.:,E*(B'1SRU:H@S\NH*['$C-3C@PARLYZ6Z^.,+G_C8' MS0^5=M0M"G.(%]_PKV$KF(\_ A/XA\#A69DU>*79>K+-S)!]QO37#C"-.'RBAFED-D+/#P&__&Y3X>Z41(I>0A-$48*_6^ZI4!BA'D.91Y?\/?EN[X9;,?JPBQZ;;09LDJ] M< 4<*9D(J?<'1LOCN8CII$'R[B=8M\&CG%.,(1V="K):6SK.V:ZX.A.4 Q%J M41F1WH\FS\%<=&_-,]GFBY7KB_QZLAPH940[]RZ31M3BP?%(BQ-C-?^F9=YZ M>5C=@,*Q=\N>RON2L(\/UGGJG(.%(^?WW)Y,'D53<)!U1V9NDTO;'>)S_9%# M(65D:9X3,82OIMX=<.Z4Y0]9WV$ #^I:U"]++4&YLD;'BAL63;>\ZP2ARP*[ M;7Z0+X; Y\/T0M1]OOX+N>X6,74.5-VB2_K#Q!!S0>T!="F?K=!/OF2N2UW) M)ZH/)HT3K3X'MM:EU%@FYV@G<;N\8H-1,%7BB7M4[5:S>A.D5S2(C'==2_E, M)>I'#/)#KJZM%9"Q70;$#_+BQ,MVK/.WXG""=0TTR4-QCCK"1X1I?17RB9C" M&BTB5._FHI *[1$+]ERD%;2R_FGAS3OW\JFL^BH^K1&_&?_@P5X_X^GB>_&T M(F(W /V$VW&#T/;Y%29ZECE@=6__B)=H_.[S :_+K3.S\ZF6U M<1\;&9>%CJ3NAX)7JM>BA7I.#>S%2"MKI1@@'U>Q6IZ ^346GTXVWACW6[*6YC/PTD6C],C*9M20FYN M9GRBDB_U_39F:-2RR"*SEL"$=-->,/E]-:N8*?ARVU4#W938S_K&*-LX<;#KQ\D_O]^@,:52+,,[3DN@X5]0T"\G!<%;U M9:JN=X1><)Z8"]@$1EQ5+3+'8X&[CBOLV[4I3U72 M>Z%0^'B ML6?CCG$CQ+]"OX_N<[44!8R_85FDU9J&)&"JJ.I3I:I&ECC9:C MY%A9:-0R5-\1(!5X7*X:GJ0DUO8]FJZ#!N.Q1(@-ZU].B,P;UZ019U,N04@9 M&WW:E4<>G#)'+=X S^/CHKZ"&4[&NYF*']&>$CO;O]#+86]^LL?!K2PRJ>G+ MI]T4Q5+]3VFLT'?[[(OS7UWB&T#IN(+^WV_$E8IP1@8NLK\,MSVSB2_WY5]S_@?%6WF=I1 MY,1NVC&F/DTMT2WQ",0_HK^@3]D(1$MRX M'J&H%ZPW'N$$(J*2+M&;U^=G<]3I:.3[B?A.0.\F5IKOBO,-N^QV'QX>7OO! M/7X(Z#?VV@[6>AE..>8A2W,[?3R-_^DE'[C,3A/_]2W;//S\.'&_K$+_E[ W M]\\&4XRO?YN/WSV\[R8=_;RV%O_H M146^9_:*K#$",'SVX43(%XOWGI6??+H#^5="<1X>6CY_K?5.1G M[]Z]Z\K8A+1$^3BG7I+U15=$SS$C:)L@2O^E&D3E2 M5TGZ-B)U$U*'%.@8L5\O@_LN1 #]^45"&++.$N--2KS ;"XSC2-RQ(SR,B$$ M%HDZ?+LA3$D:1>42.)P6$N1J#:*[(EJD.>^<7G0NSI*4]GV8IK$W+B8T$+HL M"/![B#UWX1+G!'%,EX0+Y60;;)/]F24*CGT_ M@'8 C3$.$6&;C0N*G@9 D%",2QIX9 ;,(_$#&J*R!!'7[070EYP@U_EP$OW, MY)7DYI"%Z[NRY+C=G:&.:&6A$!)^RI3ONT7BGU3!/@L\U\&<.%?8$VUPNB*$LZ32JZ*U M@#B'VA>](TF0& VGH[YU;13&N6C1:CC;!R@ U%DZN@TT+PIWT(3F?P9V . M ;W1#1J-S8DQLX"@Q:X6=M,5:/XJ\!PP0\W?0Y=O83QU;9?OA[(ZF1:R;_21 MG7XT)N;'4?_:G$S_@LQ_W%FSK^C5M7EC]:Q9VU+KH=W#;'7C!0\'&NJ.3 O- MM_IH]HSI1W33'WUNVZD:N3%U?=O=8.\J9*Y/&#-L[MY#^S)\9QJNUYANH?6Y M2Q\L71O[W+#M(/0Y3$['@*3MDAC:9\A'"_N?A:$*TS\O8"$E\#&>6,.>-3;Z MZ.IN:@W-Z109O9GU231;8PCZ<#<8&).OLFE;MT,+VK$QG %-;W0WG%G#6S0& MW>E99JLA:@V9D'OBAR2".?G0PNJ7(E83\Y,YO#/;BJ[J1#G%-C<8 PL4VDW? MQ7/7 P[(KO^LIM""Y%T1$N@[9Q-H,,B83H5E*II,WS*NK+XU:]M$%51Q[\4F MQ";N/9Y[M1@V%Y4./Q .ZC1#8?6I5 M_%FQXJTA=%&ST>1K6]T5]D( LRHYK L[?"-,L,0"4,1H@7!>'M/%_"H>P(4) M/A8&78N($I';(' >7"_V:*1?6C5_4:SYV]'H^K/5[[=UK:QK*(7 =(42)YFP MYD*TZORG8IWWP6J56VU6JZN^6LRCVM<_M*JZ3?%FKXVK]KZK=!L@EEB M9L:_M>KX;4F;36/:VHV5Q@K\)#/\F%1U-D"KODOS7YC]C@8FFAE?VEJOMM9I M2!SS<4/\5,F+@5JU7YK1@IT^N3/!2/DR-H>MWEK]UKJ 3NH;)[4# (AWU+3)*9,SUQ@NVA%P1'TKF8P_' MJ*@B=! Y+\UES<&X/_IJFNC*')HWU@R-^T8+AQJ. ?Y70'LAXS JT+BG*H1I M@5":UPZ,_QU-4.\.FL? G+3]5)4+;KUVN5R5@&FL<+>Y_I+X=L8#5TV@!4QI MK@M]U,":10L68KHK''+6\-8.[%BUJ+&.>E:??S+6*@5PDK[5KE MWO6,F?#.LMRJ1ARD!6%I%A^O;:!742YM[==?Y,A"HD&GA5/)!W!@P:/%K^[* M1Q:URE@MK$J^!,4J2(N/YG)(%I9BH!8:"D]#O#328E!_C20+QYYX+61*7@CU M>DD+TV&7ALCGW%:]MO,Y/S@4 M@[5 4*R<[QS1+12U/-(%$TH1I05)R;=0]$ZWL!SEIL["LY]$"Z;2[+_*9=W" M]=)NH&O"L>NQ(:;BH, ]>2YW4"E?+<4H^12>TRT4LX12GEJM4FO53>!YP0. M*1O?.!*:B<:._2V+744 $UXN*5G*DT/;Q%LA2@ EB8E@%APL(]8'A*\")\8@ MTK+O4(Z6UI4\)+,508N$.<0%=RC&GB$.D3&/__/?OYR?_?PK0S1B SE99M%\ MB^R8723.72+L.RDIW;&,UI+GRU1%6\54*^:0G$F3J."!HFSL#FM?.E" MM%2RY @"KI!I]!#>\856V)':N%-55[*'0*6"D**EX! 45["(',FCI-\*1A$1 MG**$571Q]B,2W$HE%?RVZJCI1U$BT@2XZJI P4+':# Y;%R);G[0IJV]\35E+4C;)6"BV ZQXG:5OP M$Q9:Q.E)EXGSDC.*';*+8 :+ANA\@WY2#CKP_U0^MA(7*>R[.&O1SF6AHLUS M46PF$EH]BP=PUHZX&KM3-H$?'9E-EW1B3$>+U$K+*4'--%JPEUQ_8L9@IP4) MH-VDJ 1^B7[66FOAK@.W:LFH!O+UDFLI0!Y2[_Q:NJ3FW& O% M14^] (Q2 U(5_%64J,WI[U&0ENZ4O&-BY%VGW"7CJI?PB!Q@!KTB"9LHW/$9 MQ;DQIS T ZL_"*,<,BDYQWY$&,IK+?9Z6TS478@R1@O^DGF*'&=XCYRVB;2KD9?R95'<;W M*$A+8TINN(@SM(Y80YXH$6UBYJ![ .Z0GV",[D #89W65] MPP4%S/F*JW2Q7W]?34,AS=Q0+&41A^KPA_(,1/81S3 MX-X5-[@+_U[(B6/P&P(#-O;DI>K"YSK!7.P.,6P>8@^2Q,I@L=@]3QS0"[7- M\@>4JZ5Z2F^CDS*+YA&W4LUV.B@\D!'3TC,IN$:81[H8\8Y8PCR"7BC:HR*B ML91!YA'K-TR2(#260^IZ:^,F;,F%:Q=)9)J?!J>-O/Y".^)Q,BFG1ZG3?8 MKV-*[MT@9-YV0C9@71+G\PJZC2&!+L"I7CI]UERU%*ODO,VP\2/,J] *.$$T M9D7V4_.8'Z%"FY0CH(E8@E2"*>1+KGYLNZSCCDNHS>)]!%IXEYS ^2,4K85\ MW&F*0[:Q/KD6BN53JU'^B,0%M';P$_:QJ8];Q-B!.2DZ9NK:\D)Q(+7\PX\! M6"S:Q"_\W^KN_[N7JJ5H)<=OADUI?R1\)IHGK52:L@JV+M"#22*5T,YP+*W@ MB&6AHT'*M#!Z6* MG?=/UZ3CRM-2.CV'< VEVW5SDED4<2N[P&37?]6F_[8S>PEM'5.&7U([-?/7 MT<:W)2_U$[5Q/)D:K>Z]J FHGI/I$FMI1^C5*-W@$8+N)*?M7"'90M9'?=[U;6554>%]!-H@5GR;>Z] M]_+_/;3B/S&*3<@"R5>$+\41Z@\GS!7O.)_$82M*%A].[/NPDSPN^T^0^O7C MVDLH1 %['A&6RE&LJ+C<) M,[5(NI4>.N_%>?]"/;L)[D@%WN4@^SA2#1#E@ M^W6?3W /S^L*#DF(]X(2]T7^+R J:&==40L*_4("]W:EO(#8T++JBIUOC"\D M]75:2%GH]]W\B\[P77SU^3W('5"._-+KT?L>_8Z>*^\'MLQJ3Q+QU4G2=410 MY^R\>M> ;>%T'3<)Z&WP?4,'$[CZ:O#Q[")HHSYV_."317I(FRO29>,+E M.8#YFN>%=+FU?#LOTCZ*)DHT(W3=#["?EZ(8VD3.)^0^\.[%)GY@%.;M:DD. M4351LBOL?[L#(YLX>5G*X4WD7HXE8G?LR">*4:80TV@)9@]!A029F&9+ %/+ M*A1R<8V6XB8(:840V:A&RB!+*S>%8G!S>2\W@F)P@WE7J'\YHKG\*Q2_%-Y@ M[MU[9>5GPYO(_8U+&;>$%\GS%&9X16P3)9D2F*0ZE:)41C=1EDAWINZC2J4R MP0WF7=P3J>0^&]%0_AF[DC3[R9HH6W]FC<]/S][F M12F&-I'S9,FY9%TH(IK,?\G"4$0TFO^RE:&,:K(,94M#%=-("7(7?19=@*JX M)DIA^385)\^O2?37\OLN=Y>RU"GA/"(?S;TX+)'PB'0UI(WBXG-7$$'F+D_J M((I;!S[AF&Y?I 8"QB:$$2HV:E2*FR-JJ&QC&MB$..R&!FLPMX '*//&]>&/ MZR_+J-:@;ZC$$Y)8'\K=LS:J9[01?,DF^>$.+ZX MJ!+,8GS38%,L]LGW7,I0:5$V Y[=K>XFI%]C#@APL37:(R*KS$,/:!CD2^FFF:.JB4#9[<,%%M%Q7)&FHG M5#.>#@.'9_O:+%%#!1"^8@T18K)F"B&\ MQ8=EB*G^2!&&A$=W&DW$8QV5X]]ALL8:(U%'%$UYB&-"U^C@0B]5BFRJ,.GU M4^+Y3S 0/3MO=\M?=.72&&]IX'FIZ^D@F7YK M^Y[#JH)O:&A,'C$2CPGLD:](]R<1,'?I]+92OA+9GT2\6._Z9(D/*F="]"<1 M33Q0+*[)$!=O)NUS![/R.D9S;29?X:%%?MFL= M+1; 'S OF(N&"WG?V3+T,!77 (=T$S "-HN=&5=JIWJ"$W439?(<*Q>4V#R@ M\OK[Q0*F)92EZVP3PH%6^$?7XJ38;C6C5IH_'N3WW>B4&/S\/U!+ P04 M" #2HH58;!(R+N(; &2P$ % &-V=2TR,#(S,3(S,5]C86PN>&UL[5UM M<]LXDOY^5?-ZJK4S5.(Z=EYED)K1(@@",BG 53>U.\G8 /AT/P"ZT0 :O__CQ\8S'A .W<#_>';Y\M69 M@7PG6+K^_<>SV_EY;]ZWK#,CC&Q_:7N!CSZ>^<'9/_[[/__#@']^_Z_S<^/& M1=[R@S$(G'/+7P6_&6-[@SX8GY"/L!T%^#?C#]N+R4^"&]=#V.@'FZV'(@2_ M2#[\P7C[\NKRSC@_%VCW#^0O WP[L_)VUU&T#3]<7#P^/K[T@P?[,<#?PY=. ML!%KO;J\^',TG#MKM+'/79_HS4%G62W2"JO>Y?OW[R_H;[.BE9(_[K"7 M?>/U108G;QE^ZW+*%Y"$[H>0PAL&CAU1VAL_8]26(/]UGA4[)S\ZO[PZ?WWY M\D>X/,N43S6( P_-T,H@?P)[^5>=K6LC'!"^+LCO+OH!]$< 2FNM,5I]/',> M8FC[ZO7E5=+RWTIEHMT6NF7HDEYU9EP<^U4_##QW:4=H>6U[1%GS-4)1V(BD MH5ZWZ*8V1GZT1I'KV-ZQ4)F-M(Z;C#.T@0^%D]5D2^8&Z'PRZN4WT"G>^1I4 MM Z\)4Q8YE^Q&^T&:.4Z;G0D_,;V.I6F;X?K&R]X/%;YE?JMH)UBUW?U= MQZ'KHS#L.9'[ *KI^ >*<^]]%S1E^U'/<8+8C\!230&DXZ(F<=K[ M0"ORSM #\F/4 /J@5%O](L*V$_7"$$8_2#]T[3O72Z6)+!F)C;Z^OT@JF3T&P M?'2])JMS6*R5;P]A_,(\A-&R<0IF%6T%PP#=-7V[6*0=N1&X64UCM%RHI=X/ M?T4+^T?CQQDEVYH/<(R6YH\M\IM54%.Z%23S*'"^GQ-_=TE6,O !ZH@T(&JH MU0HR$VH'.X2N8>FUUZX=C&),;ST+3RZ^Z#K>CC)O"\X!&^1G4]Q2@DS@0A MP?9W86K+!FYHW]]C=$^#<[O,C"P $B1%H+I.@ I"&\C%*V#98J[03^G ]"* MOL8H,FVGM_P&GB#UNS[;RUP$"T [T<2?Q/@3#L(09FCP6PDO M$-EK%'%MX0D=4($K:T%)=GD56G'@XU!AVCD^NXFWM 5X-3>4>?H%OP=/ [\ MHS//(7)]NS?KWR5JQJL(O2)K%$R+HP.>?@\F_@2ZVG@5Q[@"401;< 4:? MDW%@3_'I%J,.LC,7MU(KN-)8.&BM$&/8>S:2MO?(UMJ92]S5"GHZC(MK%#TB MY.<0P) ^N.3H%7$-8ECQ]:(;! /)]NAI*.+RS& A".S#6CJV/:B2"F*%J=N' M8%F$)8>Q.D"M^V<#!)* R/$1"[/&*MT<7GVHY=2DYG C6[ MB&<>/9M)M]-EW#-% :.>= ;L.O28$A2U_.9C8U:8A :)VR?9%U7!Z<(SR3Z: MQTQGR",H%\$DCNBI7R@Z"V-1/ZV=UM5)6F:N]VCC)?&?2'"/$=OK4"E/ J), M?U,+2.">W*V*"&OZ:ENP.2-/) M^Q*X*T"4VUZ";C*>3X;6H+T4L2<7A^;]O;"\+M!?*B,/L)99LRG?[@WXE'WX\Q+IS4 M].P[Y-$O_CLM=U#L0@E6<@*\'F+RVT-D!>9[V#' G4?XX]EEUHR-G1+?U;LF M:8F+D%@$TLRY"VQF]59>*V5.2A,Z49CM MS'YQHW7F)%"!14:<4&4Q^MZHG0C%M: 3>?D&+<#D#;-B*3$ZWBH>356Y]-)[ M'K>JWK=A$< L+L;$.\5,<"35B9(I1EO;S4)S9)GAU]/".:\AI%E8G:@ZOVE:) MV)?0PPNN43O[SK >2BXX%./ =YH\JYKB>KB^=4:#)Z).7!3./C2ZN*RR:H-[ M4WLG%"6J*Z_:&:S7?DU4CRVP3ATJ/=\@TZ\X551[AC($\<76B:,A +RGTL]0 MB/!#\P"JKZ':,Q1FJ$EHG0ABQ1(S07='A52KM55[C<+$R2A#)Q*'01CN=YUW M=(:PO;Z-\0Y^1'/E-8\[B394^Z/B(U%:,5K12B[(9E<_!"9.5FG5OJO$I%DO MK$ZD4'^;7$Y9I'=3&HFIKZ$Z2"M,3I/06A'$O##1;,N:ZHF1]:L&9 DI0"?* MZ(Z-Z J+65B,G/?JR>&(JA,CC$R!W%6Z5@O<6@OS+%9,Z2P[9*3"8WEMK-(: MK65K';-Z*75BHV8N%0HF-E?5:$4K9TOTCC16O!7AV&]=)8U6L*(>FMX4T9/T MI9S*]"4(PA92I^[36RYI8B/;F]KN MTO+[]M:-8&&_A\Z) 0O456U A!/3BT(' MJ=6K](G456U7A>D35X1.]!5O,?M+F:F\N:;J:5)4MOJUA1QC"EUS&?DX!;EB M_GYQ*"5X_-]/?;65,.#&B5AWO"$F2_@CY$Y M!D$F-\9D:LYZ"PL*J+E(54C-QSD)4RRDRF311'PW,)Y8NT1Y@B)R$@/^MUS8 M/W@V[(C&5,^,#*8JUNQH'>EDWD@RJAO-(*I_EQO7=,$JN,:=G M]CF+=L'ZJH>-.&%R&M%J7.UER^9FUX]!EKT?<8U6 4:%^S/F#Y"+9O&Q\"4Y/ M:8VNM)HZQB@2,<8'Q50/3R9JYF7!;OG6:F"F8J2]+>?>S/S\V0X,&?SO]O;(/S-,/_GUEI\-5X,S!NK M;RT4Q#2J[U26Q'LG+EZ_-_]LW PG7Q2%-,@M?!"&9LEC>7Z MA@Y;IJ8C+S=370+JY4D;[9=?,B. M=?E/I+8&%N!I+,HH22=RB_@FJQOP0WP'Y*7ISSD[GMQ:JC?+GDRFB%)T(I$: M]NNZQR49H92:\JH/I3R9.+XB=*(,IGQ,#D -4/*GY5=\LRDA!3SZ-7J++JBQA/)E="17H/W?K'QT5&+JNV MZGL<'0S#\W'8R3#>UI/I"2 >LBRE/\QY0FQY/AGQ.(ZKOFG3 M>Z/*-*<\2\''C:DT5!,,3;QZ3KPR]*(YDVE.N,QO9.:&DZ%8K#U![C6.2SU- MDYIW"N)JTG<6\BT)=@&- M U]/TV2+B[3*@PCP ]8PSO.B[-W+R9V7_HS!,#0CWXH@KSK&Q8Z2]SDLN;F) M59[JEA<:$N3^6870A'2G-_TUMTAEB*]M0I!RC0-KTOI2,','89CFLA*>IHM5 M!$G2,4+6+-QS&(&I&U (PZ((,'/*AC6J#.=**^1GP0 PB<>.F&V MH6B;)GU(>A'TG+]B%Z/:A,RUB>5T12[ ')K>]=Q2); 88IV1Y(V$1+P;K*:N_>^ MNW(=$LE)-GY!K&G@N4Y1J-(UNE_(J^]NZ'@!>) (_F,ZL\9]:]H;&M>W> %E^I/;\<(:?S*FDZ'5 MM\QY=U<&#U.6E"3Z]5"BF?F'.;XU.[W!2#?DDB,T0 AK<[V$\?TAQOYDO)B! MGHW>?$XR2A%-#ZW>M36T%IVJDG.LMXCX\M4AXI3P.:BW;UI_]*Z''6HX?U&7 M#>[R$)PU!LH7D]G7[B!E<5-FR+2$[JHZQ$B2K70\D8NV4W)5M3NHE0?92O!> M'\+[-)D,OEC#87> AJPDSR50;PY!#6$JHG=Y9^; ZE!7I>!4"=+;0T@#\[I# M('2GESU]7+ZK:,?LS;N<)5BW=4J(*F8$C,AD9!J+WI\=SUYD1RX]REB#K6(0 M8.J:W9HP]/ZT),K%<56,MC.FPUR'0D?TMP-GA%S;O M5Q6K,.K]@UY$YZY!VDFW7C>B:'.U=.]3*ZW>56Q->UYF\:+[-,=YJI('<]%^3!M2<2*Y4K=3^-% M4JO;3!JU?B@/@+0N9?*P\JPE*FO>@*$+*>5 M![9B.MFNZPF0$[^,A[1B/(EW=@)]V MFK%>=.)X4"MV\M"5.P'<&I^.![MB]NH\NY-, 4\U\0.2H]X+QS9.$EVR9:[8 MP39-?0K!R#%TJ+";P/."1Y"?4C/%*"1^':'>]G=AZA& I/;]/4;W--7X+K/$ M"_@>#6W20F#, M KP31"T3I8IF*P%5BQRHLU,E89&",B:(QM"L>(X)KRU]^"PV$91!^&[2_SHG@/T=A0C!]R;7>HXS&*3-OI M+;^!1T_=YL_V,M>[!5(YT<2?Q+B0(W<00T>^_XIL')KD0P/P%#9W"+^^)/M1 MH'3XXXJKX(K7 "@,L](@ 8"R5A23+3\ MC@ SJ J,#)KQ^O)G@Z"C*B?X3J+Y*[KZ<<)+HSPW)-O8"VTM4 MN);8"Y/!SF7T334$G7Z"S%II4X19^A'"8Q(57H=$V@1T8#/3D6X$$0WT6K MV&,,W48NY9I1O;E_#+7'*$JOM+*;;>!GYP732$4Z)T]6N;?%G8(K2T7BDSIY MPV32=;.FLZF8SL1%#TKYU)M+3P=G?:<^+*?J[E:*8F8_CL"#QZ[MB8 N%U<] MF;)U7KERQ1%5IUDS!_HEP-])9HW 04(]Z:"\ZGE0CA6FL%K2X0!WG^Q\ MB]!R4%[U<2DY6IC":DG+F)]RJUA*F_FJ@+F.@#)+.BJ>O-M*A4[O*(N,"48= M;:8K 5)J1=;5)V/MS4BZ9Y7P>-4]VZ9?H2$/E'U'7U^M]GHJ=R[AUU*649:- MJ<$+;:JG>J848:B:.59 %3K-I*5W>)M3Q1]Q"[V]+ZB>I8_H$&VK5ZM? #UM/!A+1QC MNC.0W*(^C])KU/DEB%O?3L8'&4 '=\1Z].)8:7<,([&0>V6+C#@4FQQ-YBYX M&29C"1\W7J ,EA'O<26_R0_6S8\#V-PO5B-_GYM_=/ MCW3?<8JWA?,C )8_AHXX2]XJ6SPB[P&- C]:<[R1=EI7[;,P4Q$$'0BJGRT--VV77H6V@$CX%=AQ@4SR/[+^5$>0S3]P6)VK[* 8($B;%)H!@>^8*1 M]0"P=(#&\,MPC"##DQ0/Z^P=] G-[!UYD!W5Y!W,&!CPGD,7;T'11"B(C\SM M@K;QZ!:5VT-)M@^GQR>J4BO[*"A+LTV4;4BY'3Q-)Y"RBQIS#]]L8?8K-*5Z MU^F4_!>5]UQ[P$T0XW8Z0-*2ZFQ4)^2_J+IG2[_+S'U\C#9<\93(W:6A.B7] MKFB:Y).NB\HG_>4504*# M;;/);?'8\L$*HW2,N6ZQP3I^KF2\2>>!%\[ZKA1_XW')IGJJUP--^>8#*6GT MF^=K$(\#WSF2NF)5U8Y\*^Q5=:'13)U$=X1B6&]K[U^>,HJ5)E0 >U*XE+F_ M$"%TO.,M\_3MB[NDZ9^(B3!GBGDFHJ*,IP MF(R,>61'Y'[?$#[B24@C6%VU%6A@Z6 >D=*)3L8@>Q#O!H$^20!?LF^*UE=M M%N3HE-.*CGR6>N+1K(JUHCIVOXD.3E8 M&4=HV8O2_DM$C9.K!5'R#%X4T_DI%=,*T\L\T.,#++1#])9YW'*9@S/N$G34 M]NX-,SF"F8"D1S,)2L..$@.=8#7"#*P!CDER09O\VJ:8:1NIT3=<6.1EN*D# MH-$6TG,W\CD<?E-'2B8YV,48V [)FW MX553N8:>E[MQI)Z> =7P@^3@(7T@#J"NI4EF-?&\/ YIW6B5T+X&?9_FG;;\ MS)V" DF@.+][DE\:EJ9M](4CM/D,1C]]6SW_D7]O@1[E9_F:5E1O M&;7".U=#7;\T5(.I\)SG/BD1@[7D+5")%E2_12+(F+108#1LBJ M%Q:$K;M,Y;95KYU/X"*QE/G,ND@Q)SI(EJY!0QKE>5+_X#>L>NW==N<04:." M*?ROV UI=G"264!X#C^H)<;5KUI.XDP%G)R(QN/2+/!-1Z;9-+S7D(::H25=N6VO\Y%LG MC*>+ZUEBUU+>TPIHIAAM;;?R0"BWX_&JZQ*FY_%5WQF;%:-CWRP#+RR5$B7( MD3)3NB%=0N\MC%[Y!)A=N>(%6#/RI^%' XE._LA?@J^]\ M)^T9*&U0XROO6'.8T+!$CZN45^T('$$31VX-&;)\F-%HQG9!BJH55#LM1W)4)[E. M)&7[*.FH;^2HKKSJ-:TL17RY=6*(!MB/,+%-]52?-Y-E3$P/&MWCF$>!\_W\ MS@[1LGCD)?40;P),%@78=2*2K0**6CYQ&@//7=I1FL BS<">;HS!;ZUP3K2+ MR:L38HN$2I[S BQZWR/#E7F:--<"SJ$9(2EON$FN!Z> D.9R2" 2GS3(09+4 M#6$.\]2+B(-4AQF.L.? "L"-8+E%'^-9!),X @E\LEZ:A3%?BY6,ZY*TEN:Y-/E9)!!WE11P3U3P=#;O::3. MFCE4*#KPKI)4;KZ8]/]U?MV;FP.C/QE-S?&\M[ FX]-&"LS-U@MV*+O#2#8Z MQ.2I).4Q1]/AY*MI&M?FV+RQ%L9TV#NQ,"/[6X#[,1B)#<)B49MWE:N'H]X_ M)S.C?PO\C,S9B0,WT*\V+KWK2XXK@PDF)U"0[[B"0:AWE3 <=*V1M2#OE\WI M&UL[5UI<^,XDOV^$?L?N+41 M&]T1[7;)KGNF=X.6Y6K-RI)7DJNF/REH$K(Y31%N'C[ZUR\ 41(/7*1) G1S M8J*KR@; E_EP9 *)Q-__YVGC&0\@"%WH__)F\//;-P;P;>BX_NTO;ZX71^9B M.!Z_,<+(\AW+@S[XY8T/W_S/?__[OQGH?W__CZ,CX\(%GO/%.(?VT=A?P[\9 M4VL#OAA?@0\"*X+!WXQOEA?CG\ +UP.!,82;>P]$ /UB^^$OQON?3P8WQM&1 M1+O?@._ X'H^WK=[%T7WX9?CX\?'QY]]^& ]PN#W\&<;;N0:7$16%(?[UMX^ MO4W^MZW^=\_U?_^"_W-CAK/!FUTMW JMWN#SY\_'Y+>[HH623S>!M_O&Z?$.SKYE]%LG MVE=(%WY_O/UENJC+:3H%.G2_A$22";2MB/00(2*#60+_ZVA7[ C_Z&AP"+*#J 'YF!MX#\1T?NOVO>N!0*(J3W&OSL>0M1U$5!2ZRX ZU_> MV \Q:OOD='"R;?D_,V6BYWO4@T,7=\ WQG'5K_HA]%S'BH!S9GE868L[ *)0 MB$10KUET5U8 _.@.1*YM>56A4ANI'3<>DF"#/A3.UK-[/(V@SE=&O?P&&L6[ MN$,JNH.>@^:VT1^Q&SV?@[5KNU%%^,+V&I5F:(5W%QY\K*K\0OU:T%X%KF^[ M]Y9W%H>N#\+0M"/W :G&])U%O-E8P3-2G'OKNTA3EA^9M@UC/T*+VA4":;M M)$Y]'ZA%WCEX 'X,!*!SI>KJ%U%@V9$9AFCT(^DGKG7C>FXDUJ%,U5HP)LH/ MY\ &[H-UXXD4Q:Y0"YZQCWA AL^S $:A7$UC Z()C_14/%W@*F7@"5)P:M2"ZM/X%@V$<1JA/!"+2Z(5K6O$V M&S=N:-W>!N"6;,X][Y:1)0* I$@*H>D:(BDP;Y<@NH-.@EN@ MG_8 U**O*8A&EFTZ_T*6(+&[?K6+H%8],Y5]!YS8PXXW MQR"28Z126XU;@R657J6IABQ$O*OKAG@?=QE8#CC\(C3#;4^7)*:.INOR[NZA MO]V;WMN1"9;9>C]ZY:2JUECMOHE:]SA+XA15JWT/ MM"0^F:HU[?]$:''$D]QL/8'^[5$$@@WV8D9/MA?C@(1KW]K ('+_Q.OF330. MPQ@?3 XAFD9,5"NWF :@Y"35(H+:?,&2;/*JU&/!QDB'X-+UW4V\(1[@E?5, MC*-K9.\$4^@?V5AEGH?G^N1HUK_=^HI%%7X'I5EL$4$#-O\"+?D7J(O=S6&\ M-P"R(%/F *7/E3%@V_ATC;L.96CL;%&8@> ?#W$-!"^N#B*"UL&L3(XS.C"X &DN61P"EL\LR1(XC81[YT M;'FH2B+(.$S,/H# 9MFG%PLS.HRL\F9;G9^K MS:\(\/+I/7\'OUH/J%88I2*+T%QR%8 '%\:A]SP']V@. L[W.\3^%"!BG0J^ M1A.?JWOOLN1T)E&SB?W,RK-9Z7::W/=,4*!1CSM#X-HD3 D5'?OBL+%QN-T: MQ&9?R;ZH"DX3ELGNH_L]TSGP,,HEG,41"1!&1>=A+&NGU=.Z.DFSS)F/5N!@ M^PEO[E'V]AI4RHN *-/?51!:2O15[L--SDHE5X"2K305)U(2=8D6&H@C*0E6 MKG+3<2:E-XQ+M\23P KLG1"TPFDHC%C_W94#'.3_GD"\0TT$=GP#CAP7 0U) M.%/RH;26]JVX?G2,BAXG98ZI#32/>_^Q(P=N++W![03],X,; M/$4 KY@[Y+A!R=LYD1OALLG5JH%QA.]AQ7C20G]-2C:&0W3O)H/M! ':6]X8 MW&RZF$W&Y^9R=&Z\619+-$?EZ,IDF-V8:$6OYKST:^SR?EH MOO@OZQZ&?S-&_W<]7OYF_' ^NA@/Q\L?=U?G=M)ZT,Z(Z.&[>S H3C;A;I98 M6^$-F2KB\.C6LNZ/L75Q#+PHW/V$V!MD\DE^L-KCQ^=#8_37/8&>=0,\\ME5 M4IA6]E@MZF7ZT@<'<5(NC_;0H\Q@ASN97R47L>VD_L5&QAKJ@R./? TM#. V M??EB'<"-4)6)VB!7@K1N$9 W!@Q0;_WES>#M 8L'D6?QRYLHB"DBMTS0=A@= MMC7-)U>FA]&KU4H?U1(5T95E@4$53V8*,XK5R4C2T181P M=0UE!&#Q^F27YS+QP5C< M%8JN:JR( M!6!2I8RK.=[=\H$SL@+?]6]#$4GT\BO:C*T9.QSDS'5(&2UDB&?<(9[EEB^[ M>J^&CA*F-16R=C-9:KXE#FJ8.@.16ED*M;2G1@B>.5A4D30%T?9@?P)#CH.3 M*:8]#46T3&-+Z1R%XS>!L[V3<04"%SHD!Q3M0)77!ML ME9"ZT49& ,\9:/;+VG>C5A3 ZG ?-.AP^[B3I?7TW8WNL+F(1M,%#(C89ZS< M'MR^5+;1+G632K*Q>L#'U G0<4YJA.GW=D^'BBG0,J=!'^1/@X;FXE?C8C+[ MWMP15XV)SS)2?L0'OFZ(SQCB *!_7,W'T^'XRIP89]>+\72T6!CF<#G^AL^V MS"F2_/KRTIS_1@[!QE^GXXOQT)PN49GA['JZ'$^_&E=(2\/QJ#E=Y/.I903Z ME!=H/OHVFEZ/FCQ\%*=3RT#\G(>(NM9RCK1LF(L%/OW%>IZ,S;/Q9+QL4I&< M?&MIP(.W>< )VPNDW.%H_,T\FS2GWV(VM@RV01[;>(KX7L[FOS4X%CEIV3+@ M3HJC"Q^')T,)GQA?X4FD,:2%Q&T9=*=Y=%]GL_/OX\FD,3P36B*W#*9W>4P3 M- >1.78^.A\WIZE,FK<,HO=Y1.>CL^9PY!*_99!\*.AF9"X:G!YH>> R@ J+ M!UHZ9I!65@*%LO9 M\'^/SA"OYVA9N,182?!,8W!YZ>/24$\*B\#H\FHR^VTT,LY&T]'%>&E<38RR M+ R(Z\OQO%M/K M9?176(N7=\!8[\ 8$49CW"=PC C],L'T7__YZ63P\6^A$6P_:SAI<,;-LV$G M\ RL#\/RG7W1X #1V!",7_;*5A2UGE(M0C5;)\J^H*+VDLCAW M*8U# 7HF,0HHP'Y. BYDQE$?)*$5;SG 7:36@O;9(C8>T]X2!UK&LM? 4S/A MZX5KY>@'JZ_X8J:/)5G$-[NEGAUGBZKP:K0=I"[5V:$T]+HG**K&D4F] 0ELD<$A0.O!$*8V0. M#>N P[BS''(^<#@\< D< _H&C /C%B,R[@DDPR&82/EG#,P@*C!VT(S3P4\& M1D>.#3 ^Y0<$?5J;/JU-3;N8PW@3>^0\<;1> SO:WF29K4T'WA,5,S?WY6IJ MFM1&&K\6V_TBJ+Q]9]FZ[1\$E") GC>]3@F:ITY+![1I>EL\7+BP'F" YY"# MH3)GH<,^-<%4)T]_';+8:?57L> M,R-'(7QWUZ8!UX=8,(LT2]PZ[]!PRKE3$:PN1U392Y.M$EC+,YII<=\5KUPF MG\#A>TE3F%?R$210X-^!!JK*ZS:.R M7,'RPK6SLU0'GQBSZ*Q@:6P)96(1]4$;8-W#GVIZ8I&PY54%>U8FA MX&>1H2ZNB]P1QQGRQAODKS]L$\V)F.%44A;159TGH31L5Z_5 ^:YY=]R[O&E M?MTYERP+GVFLMZYMYD#8 =X5:/]@OJ@O2(>FQQ%[&75JZ;K(J[Q-!T2@]4ND MLDV\X>D]4T3%(2RMLT(./&9_;G5ZN+2>A)I-%UFU'?PJUFP!'K//*KOJPUQ% M!"G5^?56 T79C"MO2\O((W&BK0EYUR%8Q][$77,.'20JOR(:\T)IMQEBVO8V M5@9'@]\'P':3]^)WH1:^8VY@$+E_DI\S!6437M<7NM.YCFE@"CC= M@5>K>Q2+I6&NO4KBD6@! E(Q+^\HZ3/I.?DHH2Y*NB>^ N,&Y"E($@,8SOS= MRVA78/MB0('=8GC-#=ZR>M,^)N "B4/>/CE[ M)L%M0\\*!:\B DL/+LZ,W\.[#C -^/.K- - MKWUX$X* !-.-_?LXPJG]?-OUMA9%6E#1"7-S7U037R!FF]$[&M*X3J$(KZ=W M:;ESJ%D/U#0^@FDBBPZC!!45Q4DT/G](.A@:!UBDG5TVO>E2K6^BUF=$%L20 MV*YKT>';O;HCY^052>3_QU9*S+:)9?1Y7K(:EI"?#,U4'= MA;.4 R)G-K%K=,!X$HFK4: F#>H$NY:!: T7UU1C6@F5+^:*I@"=C*WF2-/9 M"*N9V!;W)L\L__=KI$'@\):E?"E5"Y'TB(!\Z,QQHVRR^V8%+IZVYU8D2()4 M+-F!98+Z- YP6B,DV:>NCD84.,4AP- MERFH*OD,I__G ]>*>%GJ?U=UKF*_CHF_///96MV]*9DIMU)T_4BL5#9SJP=]=HI75>=GCP&:Z M&'KP,+4VPDT.=@TUNTT<-?/X*(JJTZY3?;1HN>K615V+AQ+)NU>"?9!LH=5 MT=:2L*M#/F262@7MI^6[@/DB^V&BC: M72JOUSQHIF9KWF0B7Q?N@^1*K0:*=I=*ZS6/F:G6FG>8MA]W'R3ZZZ'4:J!H MSJ1%&:ZA(JYB%G6W6U*GJ! MLQ$XDIIF%%Z=*(I7+*%J+G2FK@<-S!4+]TD\5>P+K4X5940H/5/D(#/MVM.J M.Z8\G>+7-26T>BBV.NV*<5L S=3LNWKWHBL[?'/@@ UY7G*&KM6I&TA-_I:L'72H[.M6A.%FEJE.;RBE8Q:?'6BZ-1!/%ZX MY*31,\=7Y?.'1FX2)J%,9S (X".^*6_=H]]$SVS&RK2R.M7BG&,B2$]37B06 MNYHX@T@(8&Y@S'N.AU6C(YSQX3./J70:>Z.G>S?8O@1D16!0;LCE*G>$-6E) MF--GO?DD[JUG#!N_9NKZMGMO>=?X[JMYBYR,]"*>SRDAJJ<['26$8)H833.1 M.JRK2@JSB8[R(Y"'194FYT);!]ZUK[9R[:627:-8]74GLX(P+"8UB;0E+QLL M[@-@.3,_?6&)LXC)MM!)-D7BU'WR1YU$$Y-U AY 8-WBS[N0/E?22NJN=R[L MNO>:J/J=P# $X=C'SWL 1V9-XM7H@+[%\%EZ_U2O<4!R\LH9 92B'= T!S=+ MQ9_K5#&RP8&/N);1,;UL!Y3, \YT&&L-PS?1!QWBKP):YE]4)%VB RHMPF4J MLM9,@,DU,0QT@0:.:X,A%*]Z_$H=4+>4!$P&:O6=:6OQ_G1=WNK85^F"]L7X MF;JOU5MF UD^EK#X]E4ZK?L]?J;N:PTXY0#!)].EM8\K=5O_!PF8#%1U6TLR M@.^ E"4 U^FT_@\",-5?JY%%"9T)BDI/[C%5Z$N M+?S,5>3B+H1!'T4(-99U]&1[,7Y7[-JW-C"(W#^!0W00AK'E8PAY\#)/GH?8R9QZ7^I!_7&IY!XS-'HT!UT:$?N+M,!D. M^KCQ ]C!,N(#KNWOW 2986-H/QH6:60'SS@=_&1@A#\9%OH>^N5ZB_++_AVK M'U,,U*MEK#BY-[<^YM5R/CK3Z*6M">6^^R>?E3N._9//K_[)9U4/\U1^\[G59WFJO_JL MZG&>JL\^M_HR3_6'GU6]S5/UY>=6G^5YV=O/JI[GJ?[X6+ MQ.)3Z1-B<^"A'N<,X6;C1LFJ')I^\1XIGU;I9CK';DG)F =9RG8JMWV1W *6 MII13J5,$"N5@'H>I&Y-K@#,V7KC^'NH4;M,X^M$4<+/""ZIVBCI):5@$JDMJ MD:05P!T.31/(;W21Z38!5@AF-YY[2S8+>#E+ MRC3S"NG-2,9D6=D5JZPA-_8C$( PPM;X(L+K/S+M;/0+ZY:3>D"^C4[Q6U8L M)KGJ[F>E>N@![1E /I=_N_.\TH+)#6.IICI%=47IF(QKQW('L1F&Z%]HQYD+DVQJ#3ZXX2K MTL^TM%'K'0PC(BK#GT8_1$A(#JGY[!KIA?S0\IV\0@WO@(FI6UP/8VM#J=M^ M)Y4NZOW;O#HF(W,Q6E 31C6%]PSXJ*D(,;]-A+FTGD X1%:9&V+G>-]'>+R^ M']!X_>%FV_2/F$S#):TCBE'SAIVTO\L3MN\"K:3S;T6'^X>KY ME*9G>_]IW >=Y.-I/:?FG,PI3\TT;2L,=+< Y]+SG[^!7ZP',04B, M[3/+PPL/FIJO O#@PCCTGN?@'DVDP/E^ASK5%* .XLAUSG=YI:4^^Q-:K(P[ M]&4C2#Y-^M=-\GVLGOL] E1F"P'5PB ,GZ#XB='5E)B$Q%FA)H:D/&U**:O& MD-TC$:2]RY?3)M<=6^WY!UFIDJK):A<&48H<]*\#,>@?JV0P3#7"7,56L\K($F&"+*.>_9; M@W[O1TQ!9-Z$48"<(/$Q*:V6JHO?TD:2$#R+)87)4'*(T5]V/TM>=4M>T N) MRVT'R'\-3>PS8$<#.=KG,+Z)UK&7.-_<2)2ZOZ4N$X 48_\[4S!+^E3 M8_\J@,@K#;%X".(="=!Y !Z\9X2/LC0F:*GC_4%&.J95J@W;Z"_)4QKX8&,- M@T5$M0J2,L2 K"HD%A\'65M1T_ [W[<=UV4[KMCI!?K[RL/J(P MH%LH%SZ-07^2F"PD6W*R%H]3%!RCSV1^R&1*<5J##)R[H87W%_"9_S9L,)E")>E@UN\P-WR9.K#/>@@8 M0R9152> _O-\N*M=[#;7"_!5K%RQZEC",3D48=-EE1 8MEC17K5+ITMWD6S]74(R*(O]._95;M$5BF9F$?KRJ-S]A#J<78Z,I?E/QKU! M)7V0O<]5(+'8#Z4JJQE;;&B".SC"BMI)*]$ &OY::UTHDU"[#D[XOF-1/E9;7 MC)J@4].73L@1I6]Y<_ _!@L0/#@VF \7XA>/A%45/0PL]2 RI,F%$2[*9/8 MT_A:/6K=^T<UKTV492,-E,?!.&0-58A(YD7H#189N$SMS6V%8E-4:_SM;KT,0H3ZS M312*[<$+&,S!;>Q9 >YP<7 /0Y#D%J6?$99KHTM,511..^^2)_K&C;8)GV?^ M-37*6T)]V3:ZQ'!%X;0SLXL1>_F#M^&=Y=^B'BS*J5NVI0ZR74U$IAFIS9ER MW4&LW6-66BJF/:1\(SZ)]$NN*$KLP6/D?B)'KAOALBWT4$ZRPK'8C@5G]QB\$=R#V\7;ULVY_('2H96W)X! MD@;59EE>1-#^_>C&"LD#6?LKT8FTQ+ -H\"U(^"0HF,?*P!ZKF.1'R5!/T@= M!Q;'X2+>;*S _5,VC>W'O))2L$@.X!VNG=9(%N1@#\T(<7G#W69AME,(C7U* M-*)?N >)DRJ'>Y@ZI;D=;>X]^ QVQU2+.RL 9WF"\.IED[_-UG-@PUL?B['= M#2 O+14&)672J?M#BD[*[#O@Q!Z8K>L12)2GMYG/:1-9U%#WRY_M-4E:1V*7 M#B&3B6PRP4N,2NI2$S=*),TNY*I-HST6!EJY4!IF-95A3WS-2W&E[P%9$W3I M?'A6,Z6:'JSA.66V7E@>"$7'.H6B2@.<1",'BK%K-R,N@(>:N_V*W/G \G!B M+@>_TH1O=V#W<.=B"2.8^?JAF'L;\ MS8'" V_4U\CVW\(/*)&/&<'V:T8$#7CXGC%?7(>J?7Q&QPD"?,J YXNSYT.1 MY"$]$V^V2;CU=;2MVI,7RA"RA)#VWE_\"6T\]OHZ$]-)KXD/[1WS+63T ;XK MGBNF@?-=%T&0)Z=^!F5EJ0^2^0Z^B2]SR:69KZEQZ.G,PA;DU<_S[WXOTGF? M055/TW1#(G>>=HT8"I%%*O)YN=44;50T.C_ S>W(^ M.87^ Q(:.-,8RYBL\"*SO_X/*LLGT9A1VZ">)+SQCO;"[P!GPP&.^0 "ZQ9\ M10U$Y\B[OK#< (=4\5RNUC#T??5EJM-S$JVBV$1^(B=^,XGLO0ERKC;PL=?9 M(1O0$=,I>!T][Z6S9WM ^AY;@_Z87D=7S8!OK5JBM*^]SG[9A))8G4]9('L] MDBHT0"4!]%WT!7IC]5IE4?VUF=[)OR]@L :N"G^>#Z#OM2_0&ZO7*LNDWICP M.OC_I3'U?;M>5;*Z^\?N!)MD]Y&);K 6<(*$$?[T.; )MZ<#/+:X<2F?ZXY+ M.5QG(>",+3IRU05?:WE&& VB'V.'TC@=_&1@H,HOK?0!+7U 2Q_0T@>T] $M M?_%0A#Z@I0]HZ0-:_KH!+24#6?ZB 2Q]X$H?N-('KO2!*_U&51^XT@>N="X, MH ]-GZO:+ %$:%UQ^:PA%G],$I7>JU?7!* M'YSRE^O;70Q.83P(G(1Q3*U@^Q85/=)D4'C'=SD;_N_1F;D8G1O#V>75:+HP ME^/9=!\78NQ;["-$^@B1/D*DCQ#I(T1H':"/$.DC1/H($?U[41\ATID(D?XE MGAH2F73@)9[:(H'J']JZDS^C1[[=U1ETO6MKT%1 M3>4ZFQ2E:6G&J+ ?8J+M ?H_T3CZ07I'8O1'[$;/&,G)V[>?FYZ2N)E'X%7W%JAJGRS'5R=O!Q]X6LZ667W65*D4F"P=?N[L9:U4^HM< M),4<8+V@GP_1K!!8=A1;WA($FY/FXF4J@%D-%(U);2-E*BN1U;F[=P6,_">Q MN>=8!2&:(&WT6Z2$!GHO[W-]_RRA)NV.-?:[N2!X<)/]^H).]Z%I1,!P"2/+ M2_]^",-H"J/?0#0'-KSUW3\/<6*F+#JM)N WBT7@.<-@J,?1MN MP-)ZFEL1P+!]V_5<(@Y=":,G&X0AJG &?$1X9&Y@?+#K*9VPYB^]PK[7B(:T MVR:HK+]LR+D91W#Y7IXB^X"!B0NO/G. ME_]BWP?+:8K5%=5>IGJ)N*;C$*8MK\6ID/W1OD.65A:K3Z:N2K5X=V1G]";6 M ][%DKLWE@U5I\Z11%7 M#!9-GVH]_]\=+9IA""+V+1!4E%9R-?C0#85S\3,'Q >-[(EG\;U?;J7.FG[B M"[[*#GB*HJ&/E;89TI6TL?4$5R(E)-?:PGLA41VSZZJ3J:DUM]N#*B 7&0Z" MBKI8>)31!,O*T4'B*Q7*(&YI]6F) 2U7FA>SU&)<^>[#O&MFV#O(%VM[ M*9#JU)"/M^ZYAZM0WDVO%,##):BV;^95U&@6,-,W;$:GJ(Q4-TT5;/V.7%6] MYB SY^E&-'L!XT!&L8=R*]H\I*%>SR\OQ M\G(T72X,[RX/5TNOT!E%>5)E!4Y_ML7>?'%__P?_^?_@>C_ M_?O_=7R,+E*<)3^BLR(^7N;KXJ_H*MK@']$'G&,2507Y*_HIRFKV2W&19IB@ MTV*SS7"%Z0/QXA_17_[T_MT].CYV*//77W_^_/E/ M>?$4?2[(K^6?XF+C5N!M%55UV97VS?,WS?\)]7_/TOS7']E_[J,2(_J]\O+' MYS+]VQ?LO??W?'R]OXT>\B8[3G'VW&'_1:K%25'KO M?OCAAZ_YTU94DGR^)UG[CF^_;N%T)=.GJ4&^AZ1,?RPYO,LBCBK>[-;7(*T$ M^]=Q*W;,?CI^]_[XVW=_>BZ3+]J/S[\@*3)\@]>(5_/'ZF5+J52FC E?-+\] M$KQ6@\D(^9KI?YWCAZC""7O1#^Q%[[YC+_I#\_-E=(^S+Q"3I/S0UNN'05F- MTM>^P5YCDA;)>3X/]5@[$'S:=TCUB@KT];U7X:ZHHFP6^+ZF=]A7>-X7W^GY M_])TG,?SOG1/\R"P*QGRY,^K_JX9^_&2_FT $3]7= +#20N2%6$8@?D;^,30 ME-V57L2#(Y+=MW\8K^[0M'G:_'%6':"]+6)B*Q MY9,T$E_'!9W0MM5Q)CZ^4%^38N,,I?E^A:/"/[+[[CWBHU,HF@H-Q @NBYK$ M>%*;]VLUY0LW*#<9U6)&',Z//]U^\3^$*-K)HE^8]/_^]Z]W;PA",8IH4^2W M51'_^A%O[C'15%HAYY-*6IA]^DA"8"BC0S:FB9!#7!#](D3#&17 <,H%Y9A?.QW$E.@2"35J<-AV@ZLH MS7%R'I&**3"QM%E$RY)ND&[]Y\:N6*3<$76]R MWPQ2X-@C!-$>5RA2NAA MQQQ/M&%F.29Q&F5VQAAD?9'%"K?EB580!$5LZ%2+)R%_ %Z\VJR]2S?42EJM M[TB4EVM,5NL/19&8[)5)FCX-W@E5Z5N_#FK!>3<=ZYB%0A,5:]3JLK\S;520 M/5M#KR=E Y'@9$4'58H=&Y=;!GFO!+3!'M!.)PR';!:$$L5V\HC-A8AI !KI M=O 6U761YM4RG\(LI5(@>ADJH.&80@,BT?0P36R+*L354)K[()UES7]:;^HL MJM(G?+Y>X[@2FYJK]2(IMLS+I?$!N*GY\@E,J43K(W#1"4ZZB4 E:ZY314+W M" EM-IVV^H?T*EQ$3P6)[C.\2/Y9EQ5;;VB-?H.L+Z/?"K19W"@5>#G_+U!&H8I7V1PP%R2P^#* B"V/&-*=+3. A)7FTP79-BBTGU M,D(NRA)74):#'Z/X,>E7RVBV&S5\$L\!>I]P!G$P1+-C'!.L MT^ [+YU.6"O]AB+4;N+5L9H=1PR=5'*#W>6,0!T,B.T;)>=)JH+X*''Y=1"GA9UA/7KA/ MYS2+2M,Y'8.\UYG,!GLPD>F$P?#*AE *B.?N-RX%Q0FG]2\:!RNK%@@OL'[0 MLJB (9@;3D5 --TP,<56IIH]=*NT3ZI9(/8.24X2:N+*$ZSM'HQC# J0:].(RW0@;](D@I.&RLT MR4O$!5$K"<46NL%/1?9$N3RLB.5(H%''[\E !_C# X(&!3"LX&O&6!61H$*YP@ZL<")LH70YPXE_LDSNL=AM2\7JV=;16]N%=7 MH07TP$^HD0U.+$> LH4.N1 ZB?)?/^5IA1/M<".+^!I@=.#:(67\ M/'A;&T!)*UXJAH0])@W(P6[32"8X,RS I!VG M1@PQ.2CK%WY@F0&R^&Y'4GY]M4J(0]_L0 0,,]2XU(?&!2L.GEN O6:5JYM; M)^0UAX 2X"!OP$ B>%L;81F:FHIZ:NZ[SX6]N7M"WIM; B@U=R;?B=39;@6,+;Z*"&UHT,P\?!6UF/21H1Q#!P>,N/O\=H]HTE M_+:MWN ;/@;4ME93SY=])]"8C3M9QG/[&LRZL0"D-K8;=/ZL./XFLPDGB?AM M98/Q-GH.J(WM9ML!;#53"Z=/MH[<%_'L^O32')JO6TS-#'Q!AU1ZBR/@;:W'I'&*4C$O;8LIBVRMVY?QW+XRO%$+[P0@M;&$2M?*3#!PTDU< MMK?4ZE)OCB6\)>!40^O2< X?!V]_/2;%L::T9*?PBS6ZID0@/GQ,%A[\RCXL-OHN>%W7U6)"T>F''^@SK7Y." MS]6+'7A_":.7#LXR9XACH@D%1#50IW*TSU.9>R!7A4D>93?,3JMQDE+S_ZC M)FF9I#%S0YK=,C8MKPX:MRH,7#5F%3#<<\.IRL4O\N!R/=17A,,\.B!;8QM& M,EXOW5/!&]RQUQ< PQ@5*BDK"IT*884;4$1_QQ%Y_\V[?S...PHYSYQ0PQSQ M8B@$B1M*9"I^,$'$)$$-& W\[QU)\GU8DGSO0I+OP9+D>V>2? ^')&?4UF?7 MT)P6=5X1_B 2V*F*>:J^\N?UD',LL M.GZS*#O 'V91-BB X9(+2GD3K]5!7(FG0RS1EU2O!.3DOL9D79!-1)OV]C&R M7>JFE?::!L\,>9 .3RT*AEAF?(J8I58:"7$X//J)+5SS!U->S;Z$W^O;)&C# MN]NZQV!X(6.2;VWC$E#F+4['DZC$";O$DAI88BG*YV!""?NH3;4XJP2O]OCT MJ@VL<7=U,/2;CEFRQ%D)Q[P(=!V]<&?#@A!V4[8XU-&4 ^NTG+W>MA-SDTJ MQ6+CR;D)ZF^(Q;83=,XL!G6,CMU;9@G!&HIX-=X4X 866^\Y&"8I0$FV&?W7 MP?/9]PQ =B6=N-J.5N$'TP$"LX;'XP0NT'N'"TSBP9GACM%DQ LU?M$@8HJ' M/7!R>;>\?O_-N^^T9!D+^.*&&EA+A>%3$"VOA"3=<5%0\YQ?EK*DM<^Y\[%I MZ7??P9DMSC?;K'C!F#LI5EMK?)M!WN<\8H7=GU2TPL'9Y(IPLF4BRH!#LY$+ M;8I#$X CT]F!"8Q6)G16AR48[IP6? EW'Z_2P MHE<)@B&4"9WBN!0_1M"C#N"1R[+1:]0(/%Z9-H$-XF!(9T%/$'Z-_%J1%5VI2%:B$ M?)T9U@-LCPK+$L')8H2EY<8!?8SM.TP78BAD?/F*M/!:=Y$D$+R)3:BT+7SP MJS':-YDNQU#(^&YG[049D@"H=K;M+'7M?/!K,CI$QHLRE%+>VUI_689"!%9[ M6],:[EK\\%=FM.\R7IJA$O+=XOJ+,V0)4.UMO3RC:VY85YTMXIB=0Z)+ZQBG M3^P27N-202_N-0+9 GH0C*R1#1X!2B'(CCG;R!QX["K;FB*M%6>)*'0VJ M%_,V?AA =B.(0B8X"RS %/X'+HJ$[&'&D1+'?WHHGKY.<"J&$/J7W BBD56(I(F[E4%,*%0SG^$R)BF/!3#58R#FO=$5(*6V[\G HH ,3,^$GFR@ M@?T&/S1'(8N\.P9N&,8T\KZ'?B/L\5R@% 9!&A>$VMFBK[0[PA^(1XL\KUG> M-Y;>U%#1H9AOUJA CLG2EP'%$04P+36$;)-M-A C_JN.2(5)FR/74#-)TC6"_C8.E;/(^B:(%NZ8))(@**+HT&G)(A1:SG"5H(1A26/=Z-*3#$,6":J: M*IT80**,L=EHPE/ZAB#):4W( +5^QM&+>MN4M8#M]FZBYV5"B9JN4Y$DWL(2K;Q?LEA@#SFC$09$'3-" M#8/8]1%#K9!$8K<.D&W1"W=H[L(X+1*]A6+1\DLJIRH,J654 40P%YP:F@U4 MCT1,"BK8R55> &(E!&'<(DGHARJ;/R[3'+_3UE\IZY==!KA#3BD$ 3%)CT[# MGT;RJ/T+8CKLY",0TKR?4-7WX4GSWI4T[T&3YOT>>9O9QW"ZB;Q] *)U MQVBD:;I][KDU?R9I1=]\6FPV==[L\JCB!C5ROEK9"+-M<:40B-8W(1LSH9%% M0V'/M+@MLC1.V=5P'^GBDZ21JE8J(5^$T -LV2!+@*""%I9T-T,GB%I)SR2X M)IB1$-.&X(< <9Y@LEJOE;.]2=@7*>R 6W+H)4&0Q I/N@Z(X..XIX&$"N(Z M86FS+,L:DTGD4:@$HI 6O(9(DCQ$.NE 6DDE%$-RZQ;'-9T?7]Z]O[]+JTRU MN)1%O,U)&G#=C#1Z#H(;&E!C+O!GJ%BC=^^_O/\*M5J>F_^JN"-10J?$VY?- M?9%ILD\II7R1P "QY8%"! 05]+C&;+@J4".*A&R([%0#L(KJC)[[(H 25MOT M@X<@&EV%2.K\@[8.-.2?/\>/[&(RS8$$M9COH5\%(!H!#RX&@$/P8R ]K4B10@=EU;W6?H0:9(3 M&J5]D\( >

,3@7M='QGM.0ISI8YOSN7O?^"_D512XV,&+2OGE1)VF%$P'F(LVC/$ZCK$N/J/*(VU6\ ML<41?$<Z",#X&6?9?^;%Y_P61V61XT3X M4E0[169YOQ$S%MC#H!F-, @ZN2#4A,XPI>-?F19JU1I/6! F_51D=5Y%A)\E M)ZJ122/GESD:F$/&C(0 ,46-3,.03A@)Z3 'M$7VB,[(8@.>,@6,6=SS<6TC MZ-&I;:4L(,X8 >K.<#COO4SPHIQ0-XV("Q"%59XG$5%1R"3L_=81+6#I[A%)$@21K/#T]Y!T&JA5 M\4PZ:_C.(AEA3?:TPYV%5\,<@7?\L@F#X)-CB#'G.)JP\4U5T1,,V0V MHWYR>[V)-Q#R;!DK (X,XYX$"(YH8>G,XOY= 6%RY]7W61I?9$6D][(,9#QG MS)/AC9+E[00 ,4!&I4N1QP41EPS2_B=1_BNIMU7\3<&K8>"N"-0KXZ@W8X5TYK&@<9;-K8A_O7V,Z =8\+.'=SAY^J$ONA7PPK#0=?WZLVY.N/%G%41! FGHM4M]4K4+P#=LQBQ MI@CT"RL$\5)\WU^^C->$!Y(49%%5F'8-'L2D/FU@$O9%.SO@EF=Z21#$LL(; M,VEY>G&#&@W44PEQ(&%W+P@=F3?5.2$%.2WH]!T;Z..BY/]N%EL%Y&M:=!H@ M:.4,TW!YBQ1(AG@Q:%<.^H65Y'NP&M7MAO< +.Z'CHLG3%X6>92]E&GIQD!K M 8'8Z%@Q#3,MVA!9Z@9Y$F-[1:*V3-06&H:^S=A]D9+-4N63'SWW&E,[AC4( MH&T?@J"."I$R-)8.6$P(+<_"M+/F]-;@J>0FGJ$2=?FWP=E?<<;5T>/T315K0[SJJR M_65'@.:'?W23S&K=S3S7A=CZ7=RSVXOBL2=SFJH/RLRI#./2%+W@))L!5CK2 MU5D1Q;IG:+3:Z)=6?[_6Q!Q>+LH25Z6%@6,AGUQ3 ^RS:B@!AC]*6-(X=7M[ M?G<+A 6-+]V)#)*L?TYHX,K4& D"8X@:G>[R2Z'S8W#&G$;EHZ9:XI%//O3! M])N?_0ZFM7M@I,:ECX*W:!-65-*%+TZ?HOL,7^%*O1>:*.*&$Y3!\(DB+L@+A:_M>7T1OT.;#&XX@NV> M@R&( I0\'C4B )H_I@2^BYYQ;S#55DPIZY<0!KA#9B@$ 5%$CV[,E1N\KO.$ M":"4JZ&*Z05GSC7!VRA-SI^W."_Q(D]X /=@':FIO9.F3U9-J$J?8PYJ8!CG MCE616I9I(BQ42Q3E"2IXL'[<. +$?!:,"F!& M(Q>4TOF@5@=E3 D1IG5W@A].?7AX,TQQ RA.>4.$3'6[E8:S6SEC,+<%)9T"*859/+Y."3W+9 M@?>II9<&0RPK1"G:JU%@YKL8KX*SZ4-1))_33%?%W6.?3!F#ZO.B?0:&!2- MXS9O'P=OZ9ZU?T6;P&@B:V2]FCTFN -S1R4(AATF=.KCST#L&('9N!8(L7;2 M+YH@KI:,RR0@RZ/+-+I/L[1*<4F-(W[2[+'($DQ*9BA5+Y;X"W=UGV296JD^ MG5QUP8PQ$P%+=U0N%R?+R^7=\OP6+:[.T.W_6MR<_Z_5Y=GYS>T?__!O[]]] M_U=T_E^?EG=_A\15M^@@DT(@/CK$">FE(7)N6L103S%\V% ;GW =O=CW_77" M(0)+U(!5(25#23#\,<+3AI%LA30$WI :)W(GT-=6)^^9/6;8(P*IA2%QR(A0 M02,FWVUC!*?1)04M+M:XP24F3Y8!2"_N=RHS@QY.9&I9,!2R )1,I4X!WW)E=L,!(Z:X-AYF3(TFA)"T!$ MC*OA>D6ASR-%IU5W,U8/3A_MF+XO\X0Z3S1F^MU!(+^[=AVX +;G1%;)@Z&0!Z$(IJGQ<46V4 M4/7PE!I$0#A::3:E<)$I+I:960,.U5Q@VH)3(!EE/,S4RE= #:3I"6&6Z"43B/H4L\A:$HM#H=K5HQZEK$%'MBA MKC=UVVV"8":5Q98":T09K2=(5A/+[9U6_!#[(D]VGE8]+8P:?G=FK-"'&S): M<3"CC1VCO/W2:?!S @,=]&6),-+_1J$+Q^.*X>.G>A<;\/T@0]\:BOD>K%0@QR-47P8,733 5&,1"TI@$+#*+N.TF29GT;;E$[ZO4^H"R1R4/0:I^5\+9\ AMR;E9<+ 6FEI\ZO6FWG@+3AS;J1'[ M2ENC!NF-+JA-N\UYAPX'836:\9 M:,%AJXIF#:)3 S.%NF,UK52.=DL4]"4UY9(BRR)2HBTF8N41WG$B7=VWZ%92 M]D\C:P2BH0ZZAGYC<8BTTV TTVVW#(9'K"5?5+M6O)4.2J@A9".9A"A<(@WP MF4DDO!_P"*2_[M5-)2B5-%>]NLC#)97]FMM:Z;6:4Y-=Q-KNJ0T_:Y&+ \'8^=CGG+2\I.']/B[):K1LTVH%_(.-W(E7 M&\Z;)(-FF>LHF6;8PV>95U?F-'9:\> M^4D5&GCIG33!C#:3X$KQ%T+Y"#T(=>Y(C08%P,DHT<7G"I.0G<#5?!.E9)!( M:1FJ,C9Z)P9K%-,#U)CI[#.T8=!%'IXSR[S"],M4Y@%,DO*[LE-"'*[H!B)^ M./*#X$B.'YC[V\02-3R9(4*J'5 <*/E=&O2IWE-N;[JZ'N"UP7!O=LLSI_I MJ%@0:N5'Y&5)%Z0\\25;#!1\(&WK:%SY'NB-_KT1!_UTLD?C(*^#-=X>OJ*: M%TO_R#$U1Q']!ZS;6+H*-V/,B0!J_(P*Z2!W^:@A*V_S&8J"L3'-^,:4 M.FE)Q&P!4"RZPI75=AS)^&2,$EZ?)P,!6".7"MJ8&%2FX4-P)K3A<>V&_DE4 MIK&F:AI9G\PPPNTS1"D(9APQH=-,3"Q<(FXVDIC*\3W3 <>?LS2K*^T.MU8Z M)(=&D$TL:D3!\FB(SY5)B= *SJ6?,;OJ!R>+)VKD/>"K>G./R6HM;;-:MBFG M%^.3?7,KV:?EU#+ \'4F<.5IJ1+5)4X0.QQ0;+8U/VV>JAD>_@R5:\5-T^_$ M,B"26CM=3RK@S='9-+V?@)C&-35IYA/7T*/)I0#@J*V*#BS5%0&=IQ;*&%)D^\N (F+A8\^ZA!=ICGFGC]; M_7J"08@A 562HY."1Y Q- -)F"CBLD:F'/2SSSR4]M[KAZ=6:UHD],N1RN1@ M,N"4'9 /:&YUI>%Z:D%@:/H:]));CQ;#APV6!:V?(J3>CJXP6;,4'TW9[7$$"+<= M:[Z&&$+WU FLA0'H!8X5=N@&EI*@]P,W^'OO"*X3KZ=$-_^L2Y%Y[*[0Y%+A MW^D^*G%"+0^V(]W<]P7'QD/-23&F<#O]:OTEV_'S$ M88J>P[X33.?U5%%Y;4G[ZS$OD[O^VT+!Q-/UOLL-YHED[HJ[Z)F=D6'K-CK* M713=ON_PP]B_]/02 _6WN577=*6IQ4&+#7U]532[8)]9"3A+>*Q:%3V+'T21 MQD@CB!Z7;P.LZL]S8\,94(Y;Y)PO]'^'SA: S>*$U]Q H,R]SF.Z6I]&Y>-% M5GPNK>E;32I!'-L&\$H7MT(>C'GC %+O]J9+#*:$N!:DH]I7N&+ KDGQE"8X M.7GY1&>;9=X=<%FP!*#BHA)%U+6%D?LJW'.PZ1X_R,A'NH>2P?2'O59'.@?, M.LN:=Y;^T2DZ6$==L>'#> 8K'K9,TPP.?\UWA^)$L7>DPKPJV]M[SQ]*N MM_?T'C"=[H"5D]/N=J]"58%(^S+N&6N/+Q3\7S'KK=OFC>C^!6AW/<-;6HN4 M#T#T[QEF?V$G@S?LDI#?3"MN-U6?W6E*9?K=PT4/#-TG@)7"DWJJXOAV3RDO=!L99A6O([D#^,&(;) '0S4'D-((V5-A%CZ[@(AG MBN.KR9AI!B?:)+\B!)>ANSSZ*Z5V=T,M6N",WG/ 6T/)T*25@'5[F56](. MJ3_PB4[>=9;]E(R-U?$]2X[ M#;\$EFN[B..BYKN0,4Z?#$9/M(<61'];L44G](@KP;<-KYT"?.K)8$V&0-I(A[\$2J[)-<'LHL?6Y= D MUVH7BKP[N?//K;"PQ)Q283-C74J"3^4)M7 T#K:BQ"YIK[C'EI6&XIJ^(P<\ MZC(W"5U3[NPB=_*K5,-275\9,[%E/?@TUF(V#[ M#+V.7E@5V>9L').:?JN=WV/RFM9<& P?@TN%W;P.II( ^\DFP->:O5\FN#=* M=]Z)K2A2[-N+0O>6;SU^JCFOW]'_Y]RF/Z@Z+\7_P#??=FO3U7W6_#;Z2/.* M\,'CUU2.L7>.?G#.O@+TF*E?GO4(NANELZZLP4'"KC2 [5J:=KV5-W%OY-+ M@>=WD*HXW??0%1&.>IJ&!0E.XJ.R=-X)\)!/N"4+\,VS.\[X>#<<45HY J[ M4HH(<8!#66,W]Z)P&IMZBBVN*R'X:LE<->L22:T>G);S,9OV /K15>TJ*#AA MW4_Z:+[1E )@GO52L=5=&]R5!--PJ])E.1WY@,I4U"/S(HHUFQ"D=>^C MK^[D4$??UXVZ;\*.T./6VA'MS0VJL18J:[L38H?(D#"Y< !LG_E!''K"Q)*A MVR3SJF.S4]9MJ:#LE!N\;2:VU?HRS3']XY3@1'M#H4'>)\6ML/NLU0I#LS%L M0"63@J244=LH0ZT>*MC65RY2:G)56 PK\H<[3#9G^-Z)8 /Q8/Q2@-;2JR<+ MFETR3D=R4<7CBFKRXUX'\>C3X3C&..$WR7;QY]V8;-SB=U?UY>>?6IG6Y>^J M%WPNG0%69II0;]?S[3&!W8RYOWU[)>/Z/6,BX]Q5?3%N:F5:QKGJ01G69F > M$V^GSN;+PQ)O;QZE/:6HG5]<"&_3/I+3SBT+"N'W5(]Q)[AKMK+2!!%18ILU MBJ?:'.5AQSRC*HI8;O?P2__KKO17B4/FIARI' M L#+R^/N&WBUI(BJ_\X7N+\.$^8##Q)_ M>T4 JQ<'J;OF,C+5^0@V0+SM,8!^'O$YSM)R6Y11]H$4]99JT'_'P@F.DYT/ M_!#M-!G"F^G_,S_NWGK_Q/>#O+'1?_V5&SM1A>Z[>R#INN@%1R34S1'_?Z)D MB&M$;3=;A*B_CI28'9NVT]%/:M-ZNQ6>@RAK;V0X;Y+(V*[*<%+UFO9T0F4& M25 =](([\6> E3*C]E110LF;%65-Q$9DNQ-.3:1U03:C%ED:.]P=8E#PFC?> M"GR0-5XK#89-5HA2QOA. ;4:D"Z#6I&'*&\2VI]2Z9"%$Y1DN8Y)NVXL9I"]RAY^K$PKW5\TW// [??+;R^?K=Y&#OA!, M+_-12REFY&9Y=;J\7ERBDT^WRZOSVUNT.+U;_K2\^SM:7)VAVT\?/RYN_HY6 M%^AV^>%J>;$\75S=49G3U:>KN^75!W2]NER>+L]O@W?J&_R$Z2J/!<\HLQ.: MYPYG;;_A.4(%*XM(I]:?7XC+&I+@#3_6"IKFTKG$[:M"&6044!IRR;/?<*.=M\$\OPR=99U>O3=5(!8/@Z!_68L&T9?)S=E=*Z#&$: ME$X5MPV^4PL!1VCC #RMA+=%:=L@_&&U.OMY>7D9G*?L5*;S^*H3]LD[,^ ^ MO]228'ADA*<\/ MSI!O6PS:D::7#<<@X2&E$@;+(-NQ<+J_.6;3,Z>G< 8<)VDD$CR.$/U^TDK3@8)MDQ*B[K8"=!J I0HUA1)?M^DDDE M,,4L^TEZ><@DL^\GG:X^GJ.[Q7\#&+*:VVO*]H+/*+.% QDU/&?!LD$?9<'2 MB8-ADQVCY'9O-+@7L]6!-&2-+Y*5;I%M@TIZ/_5B0,7]W;9!;M\O"7!P;L\? M2''8;D]O --9#E(M1=32S:?S,W3^W]?G5Q!LS%T-5NM^AL8FHR-/E<=S.-ZS M'(YM/CV;!_:5A7KULNWE PR<<:\J$4Q_V$LUI-0,3.&8YP-%C0I:$,*274$+ M2W"N_TF__E;/\FM+!=DWS)]@5N=0%_GV>H>Q'E+WN%N=_N?QR>*63A'4JF=S MQ.)NN;H*WAGZ5>0YA*J4X&%$AV5.F%2"US1JTZLV2#GEK@Z&O-,QR\<*6A5T M@G.\3BM0JX1K6CM1-VZQ7=/>2#K$+> )X66SB_.Z@'UEI0>KVYEE@:'X*RLP MYOOYQ^O+U=_/S]')^=7YQ?(.75\NPH_*-VGY*UN6?*+<(%64Y@ZWDUITO![$ M4TGC*=+C39: %:4P]90W*3C)R,X?B=1\_W53]3OKNE1G. M]G8],$2< ';,QX^+_UC=H--/U"#]>'X3WDU!+99-6HD59IZ(*_ >K!?Q7QMI795]DG5: MA?HD==,$0\Y)<,>DY,HLA6X_A1H?<9O;&=FN(7T\R+H6G*R?2KQ:GY=5NHDJ M[?4X8R&?Y%,#[)-L* &&3$I88])\$G?,=V+!^=#DG+K!MKHF%VN'E$33>4==7VR;U)U^NQS4@P^^LU!*T4G M95GQ65P[7!!T2G"25NBR*"$@RK;@-?WKQ(#EO' 8YG2RT<A31D/BA?62TW";H TGDH:Z68PZ/H3(T%DX%KDM*$YR5R\TV M2@D;;E>DO5YPM69GO"_3)YR(*CE:=K.*\FKUO:*R XMP1CE@YNI7@)=&5JIT MS+6:;$K!Z7Q!J_93E-7X(QWT:Q%4-F4;;(*^3^).KE:?K<[*8"@Z%?&8ETP? M\0*"$_(\(NSZ7W:Q.(\Z=Z.A5<104,T=QP2C&GC1:BBQ;$]8+3 MK#N>[.J$T8D'.2CNY(11RX*AD@6@/@4!@*7)[CQ,_P#"JKUY;DTSY;W MI7&1,JLDKUI\[-*IJ(H2O#DTV"\K.*&7^34I8ERR2]8Q M_\2@Z=WM/* $/; MFLKZ<7XY/&"9PU;U6>96]H&59UICGJFEOR[ZMZ. /;+8"19&P9A8,16T%0'3):KH0V:_ M1OG+'__P;^_???_7$I$F9#'9O92R^?X%Q>V=DZR2W-QH1 M),KQ-G[$29WUPWP7%<.?X>&D4QH)_;JB?$5$OK:R;9SDW'*"LW\/X,>=X0I7 MZ'QQBJ*='GJ,$MX/=ITDI1V"TIR2F=8#/9"B+&F7*=9IA9*:\&Y$Y5^HV5TB MG">8V=UTPKC'!'W[[@@QVO+N0?_R_M4=81^G9!TN^W29 &:5Y/D,[=RJCH[4 M3BTF>&=Y/7;)Q]%T/797_6!?V]^<6#ZP.OK((6A-N4P2Z=187VB3,N* M'S&K6(AK[R'M(64SH93A9X#=]^A"']OD@-.Z@DT]#._=*J4FN5D7(*.= *O6 M #$UFHJ<6SR4L&EWKVA#8\[BOA44GK;:V,K9<;'0(F+GQ<+"HZ96(H!TUWF8Y>B MV>J*I=&^5XB7NEZ"/N/] M]A*EPU)]UXO--^FDYT^T%(7C0]Q-@:>=M<;6(DWDU_DSBX#!31++B?;.C!+#F#ZSJZZV@B87 M%[S/[*\.JO[TY;U0^(H?]4U%F&#%P@2'KA:HYO_Y>HUC%C[6?8B;J.(90_*8 M]G2^=3>Q:\PI,DS?F%]Y=>>87A[ WC&[$JKND:2T-(*9_7^/J\\8Y[PK[/H) M6SH_I2S%,%]2UVS7-JI$?\'45(HR5%;4_.)>'SH7B2U<]CB*JYH^964T?9"N M->BOW.=)2V']$=)Z8O>%SS#])@0G]-.*"]_BZZ M^]PTH\A <]/LRFOFILGE >P[LRNAVAHCS&&5O1S1135ZC)[83AB;:K"87NZC MC"W0^3IG2_!36M1E1J<@O*6+)9Q0K4>V%L\QG:7HOV#.-/+E6Q,G%WL!P7:- MG2JFW20V:@-DOB-D!<^9&L)B=?-6%B6;;5:\8'R+R5,:8_4)&)9D*>Y""WDH MWV\X$2,!OS9HPJRP[_<%FC(.\]DT\\E^7P:PRQVFANI#6?SN-V[2M06W79:O M8]C,1-*8S4TEDZ=6'N^]<9? $0B*K\/'<7HX+-A9C 7$!]GM0,_K1?N M]QWA3R&_\O/8SR?/? &<_G> 6NV[]^TF5CX&( Z&[XAUX?*Z:'E(T^=5D3_1 MJG#+H_VZ_,N+06W>;#FOT#"3XVL^@'HNG%,BG*ZWCVKLN:]=W]PNWDK/8HFC M+\Z6I\N<)31*%ANVJ: [O*"6]9T17 MWG %<$@3#6A,Z*.I)$D?5-& W5,F)$8*+JHL:GRP*.Z%441EPW.%DVTF::V6FF?K+% [C-' M(PHM-:@9YIA(*WU 5' Z_8S3ATNK"T^T9VMU>B M^2ZS2_-)QU=6N4_7F46!&0Q?AU^1[TSD<63Q%UP;U27?749QE,5U)GR4;.-9 MO*+==V8Y]NA?-O1A"2+5GBD+@>93FE6@9(I0D=@D#X:I#B#'=!RJ,-JU5U3] MPM7"7T6JJ=1EFN-EA3>Z*_/L:@#H)E7"@7*=#G3:C8%.H!Y315SWU?Q3QN%; MDD?<%1]8DH=KGN-!$2@^3=U79/Z<2K4A^E-T@_-N)F!5\H]>XH_@ UUWI^ F M2EE:W9Y;:76?I:*;:+J@HVZ0&R!=JJ.\!=*D&)R$<]#**<(:)6;XN:FQN!4"T*'0):&&K MS0Y#QT:=:\BH B*[3P^\4QH?*@]F.'$ *;G@ALEX0)+*YH*SZ(2FE=$=9U2 M,L!- :LEV!Y]S*?GDKEL%^EPU:X#AIA/,,1=/TBS#23\M M87B&M?=Y7Q3DK*COJW6=R76S$&Y:&5[Y-Z=Z SI.*0#*C/\:\/*=M67Y(XH& MU[ZS\QL\L#06][]GUOO?O0XQ=*4^:8#9R7OVAU5%%67&!G3!.FZQ/_[AW7?? M_+7_WSOVGC9_0#]GZA'*KJ)'U>P>2 >[PSB.% M()@9S(1.,J*BSRQ5GI"!PY>?"_)K=U63K9HCX2",40)64F8@"8\S*GACTC 9 M9EEO2?% @0#BS46:I^4C3MC=UU;>C(2#\$8)6,F;@20\WJC@2>'/C0QZ8$+H MRZ58I97\#&F&J^8TJ4@0\A4<5O$%@.T#-$)!6#0 J&0/EX!E BFQV4T>W7]Y M*;MLVW#8PRZ);H]N8O*$K4Q2* 1AE1:XDF&2-+0UDQ7I?.YU1;-#[[S(0$NF M#HAFH[;_'-J22(EM#VT"8RFT.]RF3^%N".]U5P]SE-&M4NI#BV9=,*;.1,#R MW9M"Z0AQ-9[AK%,$$Q*LK=JE)2C811'$31!219QN@K@$%QKL#'4B$2_W%R!\ M.#::+'*;$@@6:BUVLP9\]IF,>2/SCA!7AU]EENM;-T4Z:(-@G5\6) M@CLU^#R4L([)V(:Y)^R0&!5%&94-SKY%'->;FJZT<9;1KMI6QHJ]T]UTNU>V:IY6!##F&E?24_3?$H-MJVMW%D-::/=-!,VW&8IX/>&M #GPL[-R?,,UC&[1BY_H";&C4B1)C($._FJ'4H(XZYVKIK: M8VU5!T/#Z9A-E],/RN!&9%,*XL6 F9D'.!DT7E^^,V>;D=U4_9[V=J_,\+"W M70\,3R> E<\!]$G)=!MF3>A^TF:H0=!355L8]](#0SS MW+'J1CJABRZZD6ZGCIC^0=(KW.!M],*XSP+*TCQ.MU'V*4\P63P0C!6;N*Y* MOI(KN%>@S:U@UPA.JDDPY:5HH\A(M6U54V,3&XZC+./A$'.(9= / MR3%KM4QTTRJ#99X-L2,)TUTQ^R;DGJTW<1%=&E^+:G0?PLGPT"N'L^QL%=+; M>3K-X&2=!=>R-#Y"K3YJ"J"_M$4 X^A)5*;E[9;@*%GE/T4D98ZA&X-AZ*X> MCJ?V2NF9JM<%RE4K8"M;>0E(%,$V>=M"T,VA3,9F(7^)1;[\&V:A*F81M9BO M*=L$LIV953+!>6(!-N9#(XJR1A;Q!<-!VOV2I^%8YC%+$)%8;3FSN"\>N(!N M^6"2!<$+!X#2XI*KH%8'<26T./ J@&]Z.5C[2CE_5KT!YLYZ5PB!((,)F6)W MDF]#^FC]\R:&Q-K\.D%O^?2-0+O,^4HI$ PP0I-.&K3WV/O@P(*6G' /+!YO M+ZW'UV M78#VY,/3I0?;3A-UVHUK3QI=$ 0)D^= ?2,''HM.EAG$B< M;ST3YX)^CDEU$PKA:=,';F<-DP9.FA[$B9SY\T$X=='Z^RG:*_WV^#$&M-U#N7#HOK_*C+L)9>>K32N_/:*IV]]Q1&0' MPEY*!,M_==5GTWY8W-MDN[(."I+_!13)'6H>CH8V7L'*9:- -FY^?M%%^/97 M1)J;#G$:Y$.? = >Z-0*PQE<+ @=H_S!G.94U>?2NZ6>5[8L:W91&D]U8O@H$\KP'>H]N7ICJCH7 &88 MGX-:OJ6[5129+1^:\2;4+0_7W2K*J>$,XIZ'%5-#N:"4AI!&A\VY/*(F;=10 MS/0 #"EKS&)_+]*\J\Q5(0*"!UE()=):]?P.'8[5& X7%B4PS'-%JC["/F#< MX.+AHGID.UA[N:!]KZX+.O0U$8R7[ +PU7V6/O##SBX^:9-R*'>'O4(Z1XA> M$PP])\%57+E&V036%Y4]&_;Z(49:6^$F>:+BB>6 8^GAFMM)Q7P MQEAKOJ'83E[4#-+!23Q<#2WS"M,/6K$%T&W%;,]K3+]M7E'3T6DY92X@W E1 MEXKIE[DZT+8.?"SU"HABT*R?M]=0?K!$YE.&ZI3/9PS'G/0^\IQ$A+RR_K7ORK[%*N,%5 M#5X_G [EP?#, :3DQ7UX(/Q*DUZ^DOLH8^NJ .[RL[2,LZ*L">;F2KFXIY6) M8BD>4R<'QU?KA%*RNL3QHS82CVNASM,BSC#2Y?%QS)HGR[@9MMIB%NM++37Q M$K0HT6J-SG",-_=4_MMWB/5<]#,=.=BSBR++BL\ 5L68KLYQAYZ#OZ0#(=^V M:>M\5F,6D.,2NS6[.*_SX"LK/9@.9Y8%I8?LJ1XP0[(6 Y>SXT-GL0L"8AW.1*RC[W9NBK.((V_QBH!)V M?-QM;AEODJZ&HW&4.=^_+;:F3_L87T4Q8-G:J^1LMM(RWB9;=\ 5;/VW-\/6 M5WX*F.Q\#2N!!7=/0ZT,_&:'0=,R9AXDG*"B:J=&_&)/C'+#'"?"JYE1+P-EOL."3 MMGVLH7'>QK6;].&Q6JT_E9B#LH]N(P5X;> &5TI7NOK41"S"N!6^UUO''6(\ M_ZHD_9Z#TD(=GGZ2Q,!,CWIL\DFG3A)$_^VF@_6XI5.*XCGDJF2 M06VR*::D9YO%MKBUP52O9B>UAY=A=E@/%@'O5&$AZ'.0U0/5LX=)@1EBM=#& M5%F-NF]S03PPJOR,F6&!DT63)PYOHC1O'[)H,]U]*-.+"4BC+?!;SUP*[];%Y\XT[PN"$K9T41H!&_LPPN<4& 9CT9?Y,DE?5=V%STW MEQ6 _#Y\RR@AS]?NT .JL@,+Q]#7KY?)@H*_P8 M.JJ52-SL.HBZ*@=DJZ5"!GIJ-*'RT0QW3, __N'==]_\5?YO4Q@86@YZV3QR MNA41@J)3*J@]5];8,),PMGA_H&LU9+ MLY0G$]!49M%?]]04S<_O\#G"'.3S*,F]CQ> F5(/42NI_T3/N$14 M3D1V116J'C%:BY)0V18%XV2UYH.H!V^L.Q(YN10 7<5618?.H"L".MTMN)73 M<7MU2Q4]PP@:T=2-_B 2LY;L4E[ZW1^G?1N5/@"VZJOEP%-9&5I<[53@J@N8 MV6.>/"C!3S@KMCR5(Z5K<[,(5,*>/M**X&7>VLU40(3,_11E-9=8L"A(=@Y_ MVL>;5# BL_X$ [E4DQSXO@:4M?&I54-3J0.T@*Y9AL?LI?S!E M3)]6! #2&ROG0&^E/G0BFT!+$3),]B#WPFG 718EGVW($Q:7F6DN&)RF[NL6 MN3F5:L\03-&%8D#,Q"T%J<EB+:,ZB BEYGJZ?=Q+>*BA\:K($YS4<97> M9[A9NT[KBNH2 R,IJHYC(LJ=>C#H@&S=&0)DTV4,P,W2=?4&L#T,X<*^-V# MQ]1OP*^#$]L&=-P>S7,1#]0ME '$ 4FVXA5VW;!6JX381C&!5VV;J.3!='X' MD+K-9$1UFE-OD8(?, M6]\7O^ND\WRY?DMK,4&[BF,EC1W!4@9]CDBR90)0*D=>E0W5,DV5"M4X1+3B%?BHQA&X[XH/$(N\R?: MI0KRXMXY.X7 (^0(N&4L;*3ADFL,4\#_'Z%5"_ MU.!L9IL6%_BFW./&D<;B7?'IK_%H-#/10A(Q5)8Q:B5U9%_*LO,^)?=5JF?#M?3L#@IA+0D%"" M-U@2 _G@A)H 4K8E.JG]7#OJ1A=U#A53=<8:P]6, M9KI>/3A-YV,><_4*#Y+7\75I3PT@7Z>L-"$L(-W7A?Z7>Q/.D2I1'B1*=/^< M^4 HKUWKUP@'Y

X@!S M2L/]Z-+\TQ@_ 3R#T:M-+_OOI*!!G5X@^IFKH2&?6@FB^65$:@PD[&F"BB;L MX;HF>!NEK9/7828UZ8;GGZ8Z=@Z.%('S4(U6<>L&DVH7J*!FWUYE>GL-(BA\ MTJ=0:(>GH;9*=B)*JL"IJ,,K;P8]X;QFV6OCXB'G;GZ@?+PF;-5. 9]NI83GI[6*+@.FI@C@?+7AE@=1(<_/O>-6^-!^Y1Y@S94J:J^F M22^ -]E>#84C6:\4G%I3D6JOA0$S]'7'L'IUL?0GM4J(01A.E@, M2(UN%DB78BKH+1OS)4@4DW,UC5QD(RS;D'V<,*YUI% M"\!7.EC?RH ,KSV,,/ ]F0[F$$\WQIRGB/EU_/J?D*5JTP5Z(8 MJZ"^ 46I H9M;CCU%U#QT/"!'OJ%:_YOP,2[3'-LR@?EI F#@%)5W$C8J;T! M(HZQ3B,CTT9<'3(C)W\4*/R;1KLWP#;GP*/7KT:5#K/5>DVG;3KYLT%4&&D7 M!;G!#W46$?KS=4VV1:FY86Q. ;Y<:/,JUOK2IFD'Y]ELR-+@Q@MA]AR_R[S) M$L0231!1$#?UMJ(H].56%/85X*'N,MVD%0]@*%?Y)VWFL2D%P!@*=15SG9&' MVL$I/!NR-'2N+NG"I(Q)N@6Q0R9'VHR77&W*U,6&Y7W1?)?IQ?BDZ=Q*]LDZ MM0QH,58S\3L$7-'!E]_8: PX?IMQ\AW^V:^C M'9-YV0[_K&F399?A$-T+T>!3P?EZC>,J?<*#&SI.BYS.=S6=\IJYCTYPFF\P MI0"?P__TBO4)Z*X-9K"8#'G,SJZ /D%AW+;2YI^[CE[8(N".1 EN;LO4? VC MAD\>.D#O$\\@#H9I=HS:C#(4QB.(>YX;1+=T1B0I+JUD4@I[YI$!\(A""DEH MQY2,**%G)&KP+/.R)LRBG;#?5/,FP$/#724)ACE&>'KB"*7@O.&'-=M<";LM<3-_;$I>/8=.%1AX M"XT:8'CE!%,[J9%BC!&;4.V3MI+LT69''O$Q$ M9V]^1^&"$.:\9G\_0HT++N R^7]Q$2KFTP03G[^5:7E@">O;_%J^_N,)]H MX.#;[RO ],G#U.L O?$24%12\SUPHOY/,=A-)3(_O.9?CGBZ8#&"[:5;3FW<=KSQYV-I"FA*1\5:]2?'OKOZ,\1);I_0AGKRX53@?;5U5,QI:N-UDZ$R1CB\.\MW^G^_%W6O'@N?*J MR)]P2:?\JWISCTDSGAF[V2'>YKWO'>Z321UR_Z_RVDNW?"%S6T6D,KG_#EM5 M*0:4=E@ACOXCRNN(O*!W1XCVCO>_GQ[Y,V;Y$G"R>,(D>L ?: '5&;7.+Z*4 ML'@TK07J$<";[+?.'_8@7=GZ]M]U[W:M_5OK\'-,E>;;\&_ KEGD36%*UGJ0 M-[T)L]?^J?9B!^M?\_8-8VO=QEV.2YI#TM]@_WK5K.H3Q=OME_/G5W\0H 7P MA:D^Z"[_"G/C)W]+6O6KWI)=;/I8^[2 5>^!=L3K@'64CA1QT=])5PNU5G5^ M^]OKD$%6J8ZOAF4->ZOO[[0+=XOSYM\7!5GCU+M/V/;VM]2%)W[2@SB:S*_^ MOQEO@5C0=]9^S_1SK_V^&/DF[*%57955 ME"=I_C#Z0C=X$Z4Y_9UE=6#75=51=H?)YOV!6FH6DK=D ;WB4^]S/)@!XW=C M\\RO^WA0:-51)/01:0M T:8@5?J;")L3@]S;'2;X?Y@CA]:,7U!2-@D4:9WW MW4CF=[V)KN[RN?;2F4TO>OO=U:%V*FDKHKJ[[C:'9YZS7&L>>\#=R#O-9]M\M&\.2\#TPD/7<-Q1_R4-Q,@G1RU MQYUB=O O? =59C%C-%SV[W^(]DS MX,U_!S3O_8'J)U^0V?;-?E:]$M$.I^N)P?O@[,B>H3]I45>/!3%,C@=XSYL( M0;-]IKT$F>E> F82/%3-%,>G'G%)%X,EG6UI5V.9X].RK$&D MO71WB*THP= MF+PH"'>C'?B;RZ][BQU/]]$.T?_&[_K==4--!96'&4L4M>*\.SXPA;??%Q=) MPF_ CC)?$Z#IC6^J1]H_W5X[I?YUOY]^::VC(CLY82G]49JCG!?"SO*7HL/" MG#[/J#&=XZ0QQ-GEW]Q7G-[7W+=\\M*LM(GF(T_0]WQ![;1JC:XX<%,&0_6I MB!5WSSO7;S!0"4HO!7@CP7KR<"DF@[23C$Z.<+;D+O%#E%U@;;1^ M[[E/]DBP^E3I'H+AQ1B1E&RZHBV7XY?R_^$IIL.W.EV;/ @G.ZZJC*]HA".= M+V)P='6>5H97]LRIWH!A4PJ P\(9J"4/4:?)PG;JUSN&E)?, MGJ4$QU2T7.3):KU.8TS*[D*)&US1U[/EMFH/<;JZKPMFYU2JO5YVBFYPOLT$ M+"TR)B@<9-LWI:8T:H8=$0R):@WAP^KECE&VQ)TQ8 M%,:40>Y HT7K[SO#XL]ESNZWO1&.OO'P8!3^1U+$WAJ$OJMF'XY_=\6XX()4 MR@3\B)MV8"[/M'6$?IDT97S%?*+LRO/6#_HG&.VEX-_J/FM^]-V[^CVWZ-X6@@YM5/3/:?5X6I=5 ML<&$NSOI?-A>:?)RAY^K$SH5_3HFPS1M4%28!5U%!#:U$XR2M(QIWZX)SUT< M-Z6CB+N.N670_9;MKHI!K"5V3SY3,"ANT(2@PTF4__HI9V?]/O+S,.,&'S\' MU:0:<.-&8V)(R*%?A*311W:@3\T.(5P64:[^T,.GH#ZS$IK4,Z@0G>NB/.0G MOL%/1?9$!V$&E_9K\RH"M=!FXED;IKE6-ULXP> M@VH'-;;QAQ=2B(J%_\QWGPO39^X> _S,8VR:STS% 'QFNE(W\KDG /%32^AT M'YL)AOS<"UJ9A%7H DNKS?XS4!]9 4QI638K!+J68 M&=MM%U&HR_WL( _$B M)66US,LJRC*&0\UQM12H-C!"E#)@,&'4DPY)^5MVNB"QMH%&#%0CF#'*/GTF M#:49KG E#GWBMH"@S@^FE6VUNZ4!$ UD0Z=Y"INY)CU&?(S:^U.20#D9[;9GMUG MIH)!/[/>[E2(P/S45MMS][&9:$BOJ0@,U7QOA0RL#ZX'J C^$0Y*(1MRVFT; M_X)^#S/1=Q*P/KL.GI;F3#($RR\Q;6V\VF(6])4_7+)-#G&]LG9#P$$%5&.X MXY6LG>B^SB(R\OMGO#Q4M 72'UB)(5K/6Q@'I/:< =S1C$VF1GF$:/./:9YN MZLT9OJ^:K! \5("E06)?;-S,%G%0+>N&==R8C19*J!HJA1Z*BS:U$]/D9Y'H M[)9FK+^N*7"TIGTZRM"_ZHA4=/P5.[A!.K%PL^GGNO%S4$VF :=Q)3*Y\([; MB_3)Z+?=/8?XJR)JQZLIID& M6FJR1EU$"NRFFW5;0N DAN\%<=&R]5Z2ENZZH%JRXF@Y1W85ET$B$%KRP]L M8LP9P-OZO@U*T2QO3;*@VLP!J'0=5*>"RIY.$ . I!N\PW-J;A2S-*AF<8(J M#X94"3WLFB=HVYP6&[H\CU.64NN2+_<^B'/JD+8AM4#:" M06WHU9K.<-02W$:9>3?9K@&JY9SA.CKC2%L>LZ.W;8D0MI55->T%+$QO5:TR M^ :V(7]=6Z>]*! [D;G/147M: M_QVLYJ$K ??FH<)OI'EV2"0;%0L?8WA+>Z,F!X4D /%32^AT'YL)AOS8X)9H-H]KCYCVJ8BNQ5. MVH.=[%*R9J&#OFQN)_N*!\JS7V.K)+NXK&92]R\HVFZSES:-5D)URBJ-T1K3 MU5.4,4=>55<%>>D7R)QY):H*1(=6]N_FT9?,8?'5+L52FM<\QDX"$-J0X=+6(8U+S2SJH>C:FJT4<%$/=L+J> MRV@*XT1HLVV)\M!6% BD^?Y5IR6_2X7=N>G0?@-YZ VH FO.CZANN*X<<9,H MB*;CI\*ZG'#6EAN*PVXX)=;I[<9/N75Y[5Y M%HSJ/"4YJZC)1>&W6(*I'L8 M*3-6'(AF.TO+*,N*SSA9YA4U.TI5>M]IFK ;U 9[>F],NA*I)22*;&VNP$U\ MNV\\:2EBIK/EK.NSR5@_1L*OUFKZ9 MUI>9SV+9<5&0&_S #D;3GZ]KLBU*W-P2,F[A:=J@FGH6=,C9,XJ#:UPVK MPNO1:B&A)FZ/8XI!HAGNEM?OOWGWG;H]AD]!?7XEM/'7OBSH4I[G+UWRBXG8 MD=;F<[_[+L3GOHT?<5)G>+4^+ZMTPUP2BXK=NIEAGG-@=QC G$)C;CF@FO"5 ME7!+MH';HE%4<1>2*+Q_[H(Y=1X(\^IL2;%.PX1#F+_ 7?&! ;SF^*0@B0FZ MH @P _BXT<_[S7L*MGGE.P7:XW-:EX&#"JC&=,>KO0UX> F&E K_I7]W@MB= MA-66RD6*1?R-M*%I86)K/[[V@-%VBK/$UT66QOK;*^P:H%K0&:Y\055_UHSB MF#D/^-4D7)TO+B"S$U.:ES2[EI[F[20"_J1 M]5\7W&>U?,] G['GZC$05I8"]'D-X*1%UTXT-'][4"Q?'.:G=OG&Z)A4J*1\27V(+H4#?MDO1 M*MSM+)I)]8T58H"^M0G=^)MWLFC91#,Q\:\"?7[#7JQ&!-!GUR&3%[O-9FDC M&.Q;M^1@*0-/N\"U51>W=H+ID@UW@7ZX/'^F*[:")&D>D9=EA3?E%7T/6\<5 M6<;Y)FJF;K>#O0X4!PY?2X7S9-=Q11CB[L5H]V9TSU_==G3^\B,T?!EJWQ9J MN;ASNM[@+*K8)>P4*+L]D\W4%.%%06X?J8UT$I4X8>Y:VH6DS(][* X0J?91 M"^F2&R9^S.6IR2D2GRP(H2)\J_@(M0X\[K:A;T.]UZ%="LI0:P5G"H!OW7TW M'.O04?D8?G89^8';P)7>T*>9)^R*@)IO&EZ]X_NL[_ANBQB,U6!:'0&-920+?LI HX-GE39FL' M<[\M+PX%WX.J5KK&M2 M/*4)3DY>/I7,WN^W MCE0%:@I!;2E'/&JZ.NJVSWA1L+HO,Q+*V=U7H0VH>6> GMA]NZ+"=]_^_3F7 M:8[I'R+OHZHYM<* 6L^.T7P'$-=A?Q%:$)JER!_8L0IVT9ZU57JR4!M%!='2 M)E3EF)\L84J_QRNUO@W>5+/@FIMMY^KIR@B_'=+.O/O8,YM;%J">^>HJ:"R; MH_%&V!&R;,? ,G ZQLXR!Z69&4 MY4!B#ZB]/ORA)RG29HT7Z.?/<58S3M._/#+ZLN3GY^LUCI7SLU\$@'@6J.+2 MK6BTX"/!UE[Y1VCW:B1$V'IK].-0H\FBIO"Y'*$.&6JA(88-"7!OD?RTFJ)& M9VFY+DLUV.D5$36#DUW,S-ZI/_'] &RHH-4^'.T[1*B%A#@FKME' MU8N@"DAX^JG&8XG^U-DD16!CJSM>%3=XZRG&.'$"[9?F3U86XH6%.NO0[D>] M.+2B3A90PUDARA[^1@%@VUSBLL28IRQSZ60&<4 MY()2.O7 =8Z0T +40A^* M(OF<9AD=*Y9Y12&G[.9,OJO7/A)85>WEK RH]:9CEN^:%F)\@-R5@=I3HNUS M@/U1%;ZAS'G@I "H5=UPROE9PBO/$[%>G40*)0C=:%EK,$ M?MPA6I"SHKZOUG4FQSV:SLA/*0!0WYN'6SH3+@=X'J&N:!XZWUPXQ@YGA#[+ MW!E=_*"=T=3D$H":2P/,8%9RP= ?^JE/S38$SE@LQ%DGKZ=^;S%%YLM@4I$I_X[]/BOK85]F &GWO55*, MG^T+4/\-[/A1EX>+&JS]MQS!C"FQ;6@#W<1VVK@.NE4]7,%V06+#E.+MCM]9 MC:_H@N7N,\Z>\$=J93VJTW;,+ M2P[VV"KK5_BX,CY?96U@XRNHS0Y M0G_'$4&K/-39!M?Z,YBC>^UF%O$&&W^,?"]M3@L$WN:O:>PWV,I[:EZ(C?HI M9[E8V1J+G0J(J:BX-&AR"^L*>BO-;<4_I^W[A2)1*A+%!N)">P#DMJ(F(;4@ M+XLXRKISM,U)CA-QG9.* E/T ;7\+-A2^L7VS# OA=O$O)S>&>+N+,R736'A M\KPH+P^C/PAW";]"C);WJ%XO.RH#:N'IF*5\83SD@J4?[[4G#\88%BEBU$2I M?%^<%WL4IE][O1T/C+=X.F1-2A?>Q(-BN!^Q]:*@74F!Q^ONEAE^P,XT,@\E M ?50"T#M:,O:J-U$XRJ!FJ+SL77NYW&-3GD US+76U!3RP#4?+.ACQMVYZOL M2CI":717\,!5.KFIV-\EJS:65KJP#O0K ;.JKAJ8, M2_TW]N/Z662X,O2?O93(F\6[Z5_YV=H1$O/^M4_-GS&X'P\E"W/G^ M@190G5%[]")*"1M$E5X8?V__/1+8O=('X_2 TBT>U "BZTM,XK1DQW[3.)1G M6'VV1_[<)YK/S3]KN#5>UUWG-I MF\1ZSMO@^>G_=$G_1G]N?Z+_81V1_O+_ 5!+ P04 " #2HH58TC!J^)-) M #:UP0 % &-V=2TR,#(S,3(S,5]P&UL[7UMD^.VL>[W6W7_ Z]/ MU:FD*AM[9_T2.\D]I9G1K)5H)$72>./[)<6A( UMBAR#Y+SXUU^ I"1*)( & M1:BA69[*\>[. &#W\^"UT=WXV_^\K /GB=#8C\*_?_'^SU]]X9#0BQ9^N/K[ M%W>S=[W9U6#PA1,G;KAP@R@D?_\BC+[XG__[O_^7P_[O;__GW3OGQB?!X@?G M.O+>#<)E]%=GY*[)#\Y'$A+J)A']J_.3&Z3\)]&-'Q#J7$7KQX DA/TB__ / MSC=_OGA_[[Q[!VCW)Q(N(GHW'6S;?4B2Q_B'+[]\?G[^M M80W.$C=)XVUK7[U\5?Q?7OUO@1_^^@/_S[T;$X?A%<8_O,3^W[_@WRT^^_SA MSQ%=?7GQU5?OO_SW[7#F/9"U^\X/.6X>^6)3B[=25^_]]]]__V7VVTW12LF7 M>QILOO'ARXTXVY;9;WU)^9(DL?]#G(DWC#PWR6A7?L81EN#_>K?K2_Z[+Z\BUA^9H%FM M!TJ6?__">TI9VQH+Y\NF7PWC*/ 7;D(6EV[ MP9H]$)+$2DD4]&S05M;:1UN7FXXRLV8?B\7+\R.<&UOET MX)4W8%3>V0.#Z"$*%FS"ZO^6^LGK-5GZGI\T%%_9GE%MKMSXX2:(GIN"7ZG? MBK03ZH>>_^@&EVGLAR2.>U[B/S%H>N%BEJ[7+GUEP/FKT&=(N6'2\[PH#1.V M4DV8D)Y/5.JT]X%6])V2)Q*F1"'T0:FV^D5"72_IQ3$;_4S[H>_>^X&?J#&$ M5&U%Q@+\>$H\XC^Y]X$**'&%5N09A(P'MIMY58A1*=?2V(C8A)?U5#Y=//*! MJ.SMXBJMR/0QBA;/?J!:=0Z+M?+M(1N_;!ZB9*&<@NN*MB+#-;E7?;MC_[*YF[+\J/UY1L:SZ@*5GT7QY)J(9 4+H5269)Y/WZCN]W M%_PDPSZ0;404$BEJM2)9G]6.7@FY9$>OI9],V!9/(96D1BL2W;J_1/0JC1/6 M)ZB*M/K"+:UXZ[6?9-L7-A_R18RMZNR@"UGPE#4MV?V<;!=DXHM?V$XPVW?]Z"ZV*@R8T%XR#LL"ZQ^)BZ-^^&",+$\LKXGE&' @&#RLS\N8&"=Z.MM[IDTAXNB M5CLSE?= %FG #]Z2#1&,D49M&=\-:H+>I"E#.T1NU?5C;L>=4W=!=K^(>W'> MTX'$M-%T6Z>[QRC,;=/;?60ARWBY';TPK9HUUKH>=5O/-E1JU*ZQ7;CV2@]O MHE4;IZ:.HO"=QR$+ C[7%U>SX2H_*U8A_$2T63RA! ;V M_#.VY-^P+O8PC=+M!F!?R-)VH*;/Z6Q@3_'I%JT.NC.7M%(K%6!+:0/OG<]8IO#5)VXNLE-X0-)#?( MO*'XEF?*#H*,?7:63MV 52D4&<3%MH^P8Q'5',9X K6^/[LF3!.V@&XUJ-O9 MEQ>+7K(;6?K;MC8_U]JY@O+E,WC]1'YTGUBM."EY%K&Y9$+)DQ^EV7@VTV['I-VSD(*->MX9J.]E M;DJLZ"!4NXT-XMPTR+=]FGT12QP3.Y/-1[-DB8N*]\XZ'5Z1<;/;7O&0AQT:2(/+V/A[P,(3HP.%_$]*1!1O$Q/OS M*GKZ_&!+\I)& M:Q$Z!1*10- R4.P3IT&SQ[Z_X#+<^J& M<>:4 P&\6AJ(^+>H&P^!CDB0SQY($!0>5!#0Z\H#8?\.$W:QGA8 W^?.&==L M:8%C7ZH"A/\OML!?T1:)@0FA?L2MF!2 ?:4P$/7O,5$7:(B*=S]<0-'>%@6? M?_#!/E /">H;/_;<()?HAOTLEL-=4QP*.;],/&35Y[X9I3R^XAZK*NEH!BC'#I% M2J%@N[$TA G/YR/#][ D%&.4LZ9,.129[ZDFC6A8*-LK)4JX@"MIS]V6P8%IEX6$<)#7HPBI0[%&. ME2!U42C@?E#T,2J9BZ^X2Q\/O%A(IW1%12@=*.=-#=512.DM%I1'4^9_#/V0 MO)=145L$1X!$34M@O]"#_0(..\HY5*FF);!_T(/] QQVE+.H4DU,V*_8 M7\=T'CT+;J"%A:&0HYQ%%2IB IZM-&.:^=WGB4%5J%=J0*%'/*+*E47M\/DB M#^GMFY)0O!&/J_7*8>(\B>+$#?Z?_ZC:2=:7AV*.>'"5*7IJ V/..S=:B%R) M#HI \44YJ]:JV+%3HSPA!+.-(_YS?RX M>* !'?,PX'JD9>6AB*.<]=2*XB+/\UH0JHM_32TH"RC'/JC2IYYGB,>SD+R^ MO[B?\X@9P2Q3*07%&N7()U+JQ-B.(IYLBLUTL]?U?12(PT-J"T(11CG@250[ M,U $"BS*R:Y6':0YH?_B/;CABHB]%^I+0@%&.>G)E$.;>U>@N7>E M.?>BG/A$2B%AF_N&LQ$UO@_\U5YF^WJ8:RN XVPP$9>H>NKXO2SDAS]E1M>9 M'#?L+_6P"XI" <<)D92I=VJHTX7/DQ)E(MWXH1MZ?IZ:*$_E(4!=60M* $X, M)5!I%//^)Q($_PRCYW!&W#@*R2+?ZLLL_,(J4!80[Q 5ZJ)0\%,4I PEFCF" M4L$8$!2%0HYX=RA0#\?W,G=JWJX]^9N5,L1%-:# (UXBRI5%\D]+")?9?R+7 M;N(6$LKP%]6 XH]XH2A7%LU_GEZQA6<5R>_,#PI"T49TA:U5#07DV=H-MF\H MR$ ^* @%&='GM58U%)#[:T)7;%+[2*/GY*&([92!+:@ !1W1LU6J*@[X+[LX M\CS^38I\36EP=@)$V(5*8J7=V+ZW,LN>$:<"U&7EH;BC!E:*%3TQ\N/D@=#R M_BD39L#.;3*G!W4M* LHQU6HTCAK:RF27[JT[I6#XHUX,*U3#"=F*KT/?.\F MB%SIOGRO&!1?Q%-HC5HH\%ZZX:\T?4R\UPF-/$+X]4F\'6V Q&P 2@EB.=3 M+2APS 71>LV#B2+OU^RE^;B4*55J-)#6@U*#&<0)4!QI%Q3O KWX VM34F3" MGY.7Y))]Z%?YI@A0'-*O?9" M-WB-_1C,CK(-GF:-\] M.%*\D,,.ZJ1T9[^7M_W">>=L[_5YXO;Q:#8>#JY[\_ZU<]D;]D97?6?V8[\_ MGQV?SGWIQO<9%VG\;N6ZCWEW(4$2;WZRZS?%#_ZS%6Z\W#HB3*+[Y;\%I18S"+$(PJI'8$G"K;S:/2"*VWFW4E=8"!_-9 M0 9$?W22!F&F1;15;P.I@;UL+:--"!)V_S6/OG_SD8?/N M4*8M9*R!*H.OH2W@3@,-=.:V#[XSV60#K%P*;+FP@(LZ_2P ??L(YFY,R]"O M+0ZDH7WC=R,:)!JC\S&AY-'U-X]\\O>B^%-F5@()NV(2@ /U0 M(W2(2SN1411ZJF5?4!P*OF%#@&JQD.F*SD0NF&K'!_> M^X&?^(0_HIRYA3U$ 8,XYFM9\JHV\\-;@%)KS YPQ)6,+D[HXZTD,/C&1E8' M2IXQZX$V T(";;W6V5C>)^XKR(HM*@^ERICQ (!U_9U#O>8V$$-3-J57U))R M(ZH"I<>8-:$)/7+]T1D:,JGR3"-3!B9]4@\><0WPS:DU_*BT1Z>G[H)CH^5K MH_N>:FTH;<8L!MJTZ:""3N$PXDG+L] ]$GJOV93@!EN]:6A1!FS3#28+L5:HU.2G>*'4;B: M$[J^)O=J6L0UH-08LUMH4Z/2'I^>/8L\? U3U8-29P9S3A M%X (^JAK0;]-C3)@R."3EY5-YVU"DZ.,7M("ZO2 M&]@PJE9JT"E 4!-*L;5V$B VK=)O2SJ)20;P TE\K_3"X%YNB0_PW!+.'_;: M^V.7:\+8=I0!/::9K(MLKS8A-$N8!]JABBN?;U8*#6S05]5*EL->FCQ$U/]] M-YZE_%4K8:>M:(1=B8+ RNF^,5P63*$QFVD*#61SYEXQ[,V''C^U.J(C_Y%&<3RAT5)F#MLK MA+V3T$.]1K\SMJ?,2!#PAW%(R%:IH!HNU'_H< ?[J5I%K0G+(!-;'WG[H M<:R'"OJ0VWI9Y%IR!VF UTFY,'8&+CUZ)/J>\5#,'KLC<:(<;CKC9+?EARE]FWF[^+\DRHJ24;JG_PD!BS+##$'WE M;P-ET>1\GQ5ED\\&)M7NVM!'L7.)Z?8IX_B?]5?$A7-17.T=: MZC4I78HB'0#WQ;J.UJY?]ZC;YMA47]PR0F2=[? <6*]0ZMN8G0Q6OFOZTY\FPT;LU\].E MBD/5M1KBU)@[TU^GE'6G2=8;LM@5_E0Y];W,<,1*]9Y=NLA\Z12SIWYSV,Y, M>A-L4[AL)3N?4MIC6]D>MO?3L70# 4/GN[?X)8WSS"3S2+"+SG2Y=V.RX#L] M$L9%MF2V>XC]A,P(??(]DNL])5ZT"K-6%"DIS'\9V]L)W(=.18)-O6U*LHP" M\VCNOO !+XE9:/G)MIZ(^QK"NI(^HUB^SXUZ2--H3MK9\SC#FC_NE_A/>?K= M&O]KMC)E%6R;A',PU>X<)?A((/3\@>[+. M(R HZO%MYFO85E>CW<8D0>B][YHPKCP_ X+]/2 99>&BMXYHXO^N.,K!:F/; M/@0+QQ.=.[+0FT3@H0K'M$N>[M46@O;['M"KB'PH7.L:YPYTNYB[J': MT_':ME&F..P]$7H?Q00[!I'R-P"N2?[G(*R\'"[+^0VLCFW'/6%?T0+TK.UY M&58Q8_ FHL/(#;.W)-C*5CQ0P+//B#L.J#*V:?>$W48#3/05I-K%M_H65QV@ M%%3@-K#-OJBSAPI:"WO#YCEC!A7QG^2A"K#:V.;A!K2H>!6#=-:+0E7101BG M-$L(3)(D(,7]5Y.>H6K)ACCAMKL)#+TWUF7JTMKQ;'9:ZXFD$1NBD-ON*$K, MWE@?&81/#.>(2I\D4E1#CU73]Q>985221V>R5LSZOU25@ M[:''.!OH*SI(OK%.Q,]7#+G=4JK59>IJ0SN(R61];7<0,4IOK#ML=N/%J\'< M/L_?KV=R0EXR;-H>M,N8S!!HZEP#0?+8LZOWE&;DOF?_RPAF/Z@;Z^RCJPS4 MW29Z?!\4/ZNAE36CWPJ43).I^1J2V4A?:\T/=3OA[1.WQYX@2@U!"3>9=>\4 MIX@*=A9R+GC0N)']\; )*,\F,_NUS;,"KU--S%', RP(?:JS ]7/2N4J4&8L MM NJE;-VK!7K>>DZJUCK-3=(HD; KD/VL=I$74MXACM,M>$J"F?97ANU?+(BTBN^#7:@-)KS+IV!%=18ZW?@"D%CEL;\P&\HQBSLK764?21 M>WO+Q]9%TE"0BG;[T.YE/FK]Z&6F(;;H2\^4/!93Z'@Y]$/"P\Y81Y>_XBZL M B74F%6N978.4S(IL#KKM65/NRAYI#F+8)#T,ZK2QV-RQOJ9N,E7P-Y9B<^J!1!;-)*T,YR MZBCH=CN+!*^S[@]P\-HX8,)[RZF#G]OI+?IHGK'=@FO*_Y\;[9[<()]2-QGA M^"]ZX6+_!Z62>2JOPWN&[?O<["\/;K@B4S9 ^LLED=DW3BT'M N;S[@)MX/@ M>]!A.1+KC/VXXH3X[6#ZZP64:\SNNN#AAOK)9?I:NURY]'2]G_BKT ME[['?2SR" 2>R#L*?*]\$-W+5OF=\\[AJT00Q2DE[!^3Z6!T-9CTAL[EW6PP MZL]F3N]J/OB)OVK8&UT[L[O;V][TY^SYP\''T>!F<-4;S5F9J_'=:#X8?70F MX^'@:M!'RFE951R0_4U2!V<8CNG*#8LD2KL\I.P?_+75>+R /!HUJ:Q<]NL!A3_* M-F+F$<5L;JB+!=P;>M\?#KVK\6@^9:NQTYO-^O-9MAX/![W+P7 P;[K@UEYI M[[XJDUHRVE@CNFVT=R$OS )1^O2K;"BQ1G3;P!I,#8"N7+\WPPM_1$FR!Y7' MT?NO#L=1L5F=L;7LJC_XJ7HNMLD2 M2A+N\ :L60V;0U_ A.0=+%9'P84_SC;95%[KA]?[P^$U&+$=XGP\_1EG4&W% MW0D%2<4GJ81EBJF(!!A+\EK(0P9 3<4FHP8!?X1LPEMJ(UOV!LM%U=XRGO2G MA7&E_Z^[P80_#X(S)MNNZZQ6FLW@C#R0 MD("QI]L.\NAK1/'!2&P&'?Y89-5))?IF;SQ^?3@>AX-1/WL+:]J_'B"M>]SC M4V?XB8"2L@CQPY#94G1:1:XX^%O="CO3'PS>$8N.Y?=CV_D1EB M%^4%,C/4%C^G7B_5&+_/9XF4ZJW9[[^MS/S]WLR,T3H7 VJ>/BR-U)<)6][) M?DHJR)6MJIX5ANEZ0@[[-@@!_$Y>]X3)7D^O^%0,1E?CV[XS[_T;RRMB*[.> M34Q2"=D]2=,F)JN%;A-34B/R4[)Z_U-D^RKR*0N&2L6[H'=U-;WK7SO]?T_Z MHZ;+0QO!<[E=OTC?P$#K.WO M8!O0U/0?/GIG!&C\09R]\?WN7A@ANS>8*_X*L_GXZI_O+MDV[]IA*R ?T;WY M8#Q".NML11LOR\H4X<%9J&<6$)RINXD'!9R)CFP7R6H E?JR+#7$NG!LP]CG ML5:ZR:&UHAVT\2>$_OHQB%X)N20A6?H)ORJHG0PN*DX7_=O)ZU&D.Z^F'RY=-G:,V&]C&[%+!C4L\4W M;Q%Y5#>@_/!V[$@P\-?^1;J+O0(35P_A.58551#BLF,F#3N1^O-RW=S#ZV!_AAN#TD.A4 !6R9 5^5P.LV]!!Q&P.I ]8TF>M >2%BR-4]>P7G(? MQ00U<&% UC"U76=P!@-6!'NN :0*F-)AK2I M4BE_UL-3& @!9AK> I!Y8SF,M)G7!0=]G.9^9;D[&9A :24@9\9R'&ES!H#@ MK >L)%YB\RO5FJK1!)!^8WGXM>G7AN>L.\-@_>CZ-,N81S<)$?,708;^$UGD M>L/7[$:M@4T-UO218U!#G^)OF.@_N4%*;MD4E^97LIJV/8TFH.3:8TC2Q@>= MT;Y+0Z8?3TF=^<6 >516A+)GCX$)B 4Z9UN_9(T#D:@&E"4+;$]*72RAI_ZQ MD_$F5=T@NW]GJ[5*CQJ"DVF.2.@(S=+X'8?8\5OZ:.I.#V]:NR1,) MHM)Q338V0=6AG-IC9=+"!9W%"?4CFC_,,"5>X,9Q=CV=P;OX)8VSB_A2TDF9 M34*W)2BW]IBEFJ*%3O.(/)>4I5'(_NKE68LU-[+Z+4%IML<&U10M?">4XK)P MGL67U/N15%(D%!E7G3_DM9!<0-YZZE4&N;M:49(_-3A>EIF"A3U JF-[9AZ5 M=%4+(B.WW3/O@2S2H.P6T4OXUBP@^W-\K.2--=>\-6Q7DH8\'J6S+5.H+,NI M;%ZMI-U0I-,];KX][[RZ;7BY W+* N?61HU9D?B@24;>8Y2V98Q6+^]E([.2 M&J0F02_Z[N<\,_7NIOL-)5D>VBPC+>M(VPUN #G\@ M;OTT9..O)F%)D<$7>=2]E52^NZZT%6X3\Z\]Y%0MH*P9;ZYE^+1QL6:H[R>"J9!WAV121A])YIU7< M3@5@9,2;7)YP$V(U!%=%,Q!K$0'6Q9=XJ MI=Z435XU+]+L$G"B'VG?1B;.W>+'+P^BD-\8\!-<(6B1]K'(BZ._7VC0*/K! M5S>/9PL0HOLME*Z3EDO"$RJ0K0)3-\FB8D./S? 9#?K]H$FKV)=SQ_2$YBA: MU!6NBY !)KWPDDZK%V@VB!U"?DP':(2=1=SW*8WH5<14\#C<7/R24U;Y>EEK M&FC0*G;T^E'30&,4\3=I!XF?91NU2E:LP_3/V";1-Y('>N\JZR SL?YLK&X# MVRRJG;]9'R#\<2;(S2P;;Y445:(,S=CVTRY5<_WB6F3?G1'ZY'ND/CJA%V1B M%!YZ65*:WYDRVW:B4J9L/EL;35K-VL0^KAF>I M8\#&WVD?GSGVFB2N'\0CE_)KEB=2OSVO1/ZTF4&V$,'9RM"EDCTRA=_--8,V MY%0M>FLNGU@!0?%S2Q0KU1I];N?2L?D$SDBE,/9>L1$A I71Z=B_4Y[ZJX=D MO+R+\\1#8F(4U;#W6MH4@6"PC*RM5P:4IE(%[)W,D0155#_K7%B?".]O;&I@ MPK@K,DK7]X1>^T'*3X;9_KV\==]>*XAI;]S@V66C/1(Z_%WK310$T3,3+MM6 M3_*&8[ZY=\/7N(@@+87TDL7EZR;H;,Z^ESV3=)C:^I8D#]&BV$O6[V(K<9;S M!^(L-\(X"9?&*?2,G83]LI#IO__K+Q?OO_MK[-#\L\ZB+)QS_^IXA7@.Q\-A MT&^+TIV(SCJ3\8?MEK<+F#]YP+S4!"^II9HE*F/+R%QA+DK^B[W,?U;QQF8; M,DC(6O*@@KJF'?Q!>B:,M))JVXUEN\3%-"F1QOZU(XS]@P>P+%(O&=/B0J'W MXM<1Q(K6ESP_0H2JE Y?)\>?7R47PL37T=KUZ_(L[22O*X[,A!!6$?IU.NSL M$28>L)BE]YL%/KXE?+M5 _+>2P]U-=#.\'+H]F%6:M'.L; 6\ GUUZ3FM0P9 MY*HZ:(<^3=!ANAN!G3^;1JCGNP$(<4EQM'<=-,%6:HQN]9C[:W8D&2_GU UC M=K0?+WD^;-5B6]0&53Z_]5='NY*QS4H"A4LU3$E+EFX=1IIPV=+JWL:K.)EX ME"S&;(9F4A/A#+G13%P%.TN_5M>L/H0C1P)_YMQ)V$LFD1\F@U"3L-IZZ+G5 M6Z)- @HZ=PKS1O_%"]+,J!G'/#B0AR(T-E+5-X;O PBR@-0_]-<$-WQK\(@D M?=UI'9 MOI9U*;8#9']<2$W!E<1>3 JGW[MRW)TO,P(;UF['N2;89<"0>4@?E M[-A4'6?J/=0)W[B[E0A@SJTK:PW'\E\P^6UK,B$9R+C_\@B1_$Z(0'NXHIJ=B3+:YD[TZ[D%KV[ M ML%55+U*E]@:6EW=-Z3;:WT@]"C/%[AFN1_#L(]">K%558ZVRD4HIS!8YWX MV[*Y42KTFY@=H1HVG1^_SZ>F, \10 VUD:X ^X$4O^^F7,V5LJ8=M("XDRR= M0N#PSQ_5-XZ8)K$?\R2><^HN2/FIF3B_:Y4>1[ZN)-W>?(*'MQ1-\6-)]A%^ M1$GX9TJ_9(>4N+A'C2VX^#S/)Y.JO&;VI^)-$K$*JGKHM@'HPT

LU@AXAKT-@$G[->@JO:L9-S@W%;KH4=;W[, ML*UJW_@$FD2)&V"?/\M)LC6KX7BY]662KK"5S/ \-M7;-LS75'_3]&:E MS1;:LG\2^LKZ5IY%VXHT=9]OV>Q!?3>0^*L(BJ/G?==]\$RJ-OJRNI7N4T1_ M'803&GDDAK!R4!Y[H3R"EUK-[2'FQ@_]^($LN&,RA)B#\M@KVA'$U&IN#S'9 M-AE 2%$..U/*$43L:=KJI@*)NI_<(-UDSB3TB4!HK*F#G>7D"$J%")SUD6"K MGO1><;\46GSE\236WQ2>]5:_[K%5S5U_Y9F!ZJ[_L?A*=LM/-M^Q]PCP%A]K MW3ETB-\G5<08@%NPPZ6ZZ?NM<#WQ(Q*$$@[5$0J0NG8PJ=MWH0_R#HW'-K1! MY>5KEC!,&BX/JORVR2QK:B8,H@TRN8RJP'E093O(U.BTX%>R2TIB!\W?NDS] MD-"]_9$J"EM:"=MPH]$Q#P@#8(%N+.!;VS0A%,R5L +V,:4Y3PH,T#FZ26GH M)_S8%2YN_!?^-W&NGJ*2K Z0J>_L8TJ-!#I9/Y$'WPO4!!V6P\X/TIR4>HW1 MBN&X=['JQ[+C:A&MKP*,&_]T%^G:QF\INS& 5&G0:>YZ7)PC@R:L8PIZ?X/VXE4$W/=WA>PW3(:=XBV03[K^V:A=M+[9WDM;#^1]J>*-W)-77>:#>$)H]L:/XKX9WH(=I^FF]\UP/?'OFP&R5N:M1LP.;;N#UNW/^B0/;;J- MOF'2!6X!(42_=#OF[>RY2&BM\3-'JT/@>3#& MLQ\$L)-/Y8WSC^/Q]:?!<&C/66>C$.O_ P91N/)YELAL_.D$W&DV@^US.R5, MDM1+L@3KV=N?F4GG*HJ3&.QV"VC$CK6S$<="+UR VO@'HSTAN6B9H%FL!^! M!*MM![D-.G4E%2)$6_PST&4:,W'8KL]C"W7L2Y*-%S6$%=X*9UD]Z/^'6N+OY;G$X^45.V'ZP)N,RFOOP\&H M[XQOG*MI_WI@T0W&-;E/=+;OHO)8!][[9!#RG@8(@ZLM;,<"(6>A"OB4EQ*J=<#YGW;A>EC90O@FN*WMN5-3I@+[%W1=*M:NM M+VT'$>+N).7!%H/XE#Q%P1/?D.R)IS*'*ZIA;W9EW:OZEH$: ".I@.>$KH>1 M&\I.%(=EL'V_(,#6B&T0Q2U__'ML1PU!554'VX\*B#),=?0C6OFH %MVQ37L MF//ABZ]8$_07T>M$&_(3(%4MQ^J:=M"DZG@ KO;5,F%CNG3#7^]"/R$+V8Q5 M+84]1T&[3VF^$JF*/D/]Y%*?#^*IFRAR4U1+VM'5X3-258-23\&'7S7WU)6U M@P)1)Y+@;\LA8$+]=2:0V@OFH"!V:@%QUZGXJ]2J:&1+NOW6.!0CR@K6E0," M^BT>H +!3X'G_#D"X5DJAYU100_/BH*&\62%8#UTKR00T[]8@FE52;.HWD0I M!8%:+HB=9$(/TZJ*78Z"=G9IM>D(ON[2$9QM.@)3@?/9M989+&V(G,?*\G#1 M_D[ IC0/C2\OY2NE0=D<0T;"9$?-6KZ&9O7#V+=5Q[; 0%$UCAU]M-$]T7LN_I3RL M58M!$35V_-5']%2GM>QKRJ-:I10446.'7VU$VS^KR0#UGP!]M%P*"JBQDZ\^ MH!4=C0!ZX],X$\P- FF$(BLL*@O=]!ISQ- 5ZZO$8AG//9Q <186!@*LC&G M# V0%1H;G!EF_HMZ8B@5@MYO&GLA1WM>J&AH$DW^VC$ SW(Q**+V;%9KM+3L M6#PE"[)^S+)591+K')/KZ]IX2H,?F^MU*EU:V4B:WI%:5-M&XF3=4XM'6VZJ MY5+*CN\@-?6/]A?&'&QT^JP6EZV; RS*C,C@!36-S%ZF36;;-XD15SI=<*Y-T/5(7!\[^N*8U4F%BF4D9LE39PQ@=S$.R\[2 MD@4+W@)VU,187Q([, 0^!\HT-0+M,(IC M$@]"GC>8+"#KC[P&=KP('&J(YH;V %D>,-A:7UL4.X!$9TV7Z&H$7;:E)B$C M%@*OJ"R>6[XVP')UC2#<8U]89(=.4I=NC!79+P%%$_M@71'N8K4BYNJ$A1I[!,Q1)<3;R>VUZ7P?46I"A1X"P[ (.5/#/O\66,[5ZH" MA=V"PRU(^5/#SB\;M8'/*UD6#=$0^C( )P:?NVKK8I_7L2QTHAGT9?6-(#\B M3$8O6I,IR3(?@\XVRDJ6!5G(L <"8')[TUO\DL8)6?3O_63A2C)L\K?NCP[?N+S+L,E?9AFS\1S=^09HK'<>J&_* 8)W&/U;HF7N9CPM8>QG:/DEY\$P5!]!P7Z>6W MRNXEI__V,#G]_($XZZTT3K1T$O:38".3LV ?=_Y -F(YZ4ZN_'=^(9GC<='^ MZ+A9(QOQG _O_^1P"?_D,([Y+Y>YE#]L\^!WV>^/&-%Y!RA2*_$Q<6F^*:(+0 M8:,VN!>9Z0OU\%G5!6"U7&H..>XFT9214[?,OUQI58&_QW9NJ$JQP$@'F\;7MS M1MGS(%F\N_=GL&GI7J$Q2@?N*S2V/HWD;>7=UYR9)]EV\AVFZ M[+MO(?NN#7GWWDSRW1-YJWX^N7?MR5_X1E+OVI.^\&UDWK4GV_;;2[QK0Y;H MMYYWUX;$T8;3[G8/8&J?-X3/8+;\UE)#$KIG,!$(,/X,IKG(E\_U'4QS 2V? MZ4.8YJ)4/N.7,,U%I'S&3V&:BS2Q\RW,(V]34-*LG=3>;T^NM;>*\HR4 M83(BTI Q957L.[-F(PZ("#IWY>!+-AVPDZ?/ RB)&Y/Q?>"O,IB!\>6R^NBY M*!N=U;7 .1,NU4E<])I!]_$WQZQMR5_V=VB#,"$,ZX3OSF<)7]W9GLWCT*\D M,:XZ;: GXCQ^&PL!"9W7/U#K@<#/[W23)BDE17*\;('8;,DS>Q?;U;WS M^!XO"'B/&S\2?CD3KK*2->F=/A%H?J>_'":'R"5QUKDH3L"_X&PRF3@IE\8) M]\5QHHT\>?%8E-/)>2:MYG2JM;#NM"G0$6>48,7%I9$F:1+'Y(#@(9MFLKZ^ MZ1/7*>$IA8"YF1JWB'67*:6E?IX^$K6SMC9"E5=G;-)M".UFU%P/$>=E>N,= M0Y#>N@E\6DFOV]_5&^X<;:;!/BG%@B3:#3#02JW=_H;>+,%M)ML^+;^E#&!' M\INUA'9Q;)C?%X1KXW-\7GT,EV7R,^B'L .?PPX?E0EB_Z+QXJJ M3O -FT.[26ZY;Z@ T^\HW^<=)20K;M9#[2H"G<6=05@![7Y9GVZ%TA:8;C); M!D_MRVTA,Y+$-Q%-'J91VF,=->'7W_4Z^'66&U::_7$AM=E\7Y>3>[D1PTDR MFPS_-/LADR1+T#T=WSEN)H_CAHM#BXT3[&02&F]X/2Y;9[6IC,R":67NTL-R MYV-AJ=?PK(_'^Z-RZJ\>DO'R+B:9JM!)M5(-VUM<0)1L4A6H?M;DEB=9Y;"L M+7Q.]@NQLN@G','ZK?0/4-7#]SL78P[:P8BO_<]OM E4W#DC:?-0?)D O0?PS5>'QX=AOS?KSUI[$> -[N_W M>PYWM(0.E+SL^>SSQ9I:-F5](GS72A:]XK5,PL.1-[_D/CN24!O]EL[HIK,I M3';S>UV8];B35>&)U9#?VI;.:+/?%"9\2]DE"L/]WG3?^06+\?/6G<2WKSC%>UO7JK;VLG0'Y3;@J#S M^HVT$M)C$?G6]H:P(>(&F?MK+UP,V;<")F?_Y9&$,2FX5RO8K#7DM L *@^? MFS@"-/29NA!>+K628E5U;$O:4135L@T##)W>;5Q1.R.Z87/8F2#TQ_11N-G& M^E9]Z*B&UL7GRO+^)V4]['6: M]_V>EZ39""IP&<0]KW"\80<\4/#)-Q=U9[G%5CCG/I:YP'_M9C)G;10'1L>/V4\+N;/#HT4OCK^5 ^)6 MI"G/]LS#MK).+!A@U1ZWJR\-2FSY,V=WI#0",_J>1:!5_1),)'%0V@UAGS]; MZP$JK&SEF/T@C_6,IPQY)M^#-KMU39S?P5(;G[-V_7@ABLR"#>;<%8@ M]W7ZR0W2G#R^;/.P5.UNHM4V]@&VM?[3 %%;IXHQV][1[8_"E>*!;[U6L(^P MK1$N1JM_^=V%+$S4!12(K4@+GT M6X6W\2UE%[Q2XI%>LHMMD=J!/M39@;SMI_G5_:+X>-D.5(IGV8M?V( MMUO_FXA>1^E]LDR#PL(KS7/;_K>P[3 @DA7]HC7([>M-@W!"(QYINS%"9/E^ MGT@0/0IV]2*0E"UA6V[:Z E N.SC>6MMRG*H+2/Z[-*%YE10VP"V/:6E\2T! MQSXR!^$3 R:BDH /61ULBT@[ _$ B,&D,IGL\F>+";N*U.W[@T [A&LJH1M MYM#!'Z*/K<,$M&R7S#6M[XSVV\8V9IQL)U0'Z3GT#GY<9G_FA(2+PA009W;7 MH[J&O&%LHXF9?@$!\U1S]F^I'_O9G4E][%?])'=0"_MEB.-G[5H83L.!,DZU M3N*&L:H&7T8_C@%P#AQS&Y*:A\IZX(:M!;ET1],:(/6/=W/.-'F47YC;3J& MO;?"+*.C6%/N+?(\*>E9NJW6O;,4584R;Y&;"1@0FQ;9DJ032AY=?V,K@$W. MLNI0"D]A1%$0 B%2 (^E9):,/WE/UJ6SI@$HH:Z?Q:7505?VUM#$UPW MR\;@=A]0DED]X.IK06D[A66HT>B2@?&6#C+[X&@<8@XK0AFW*#0*",8Y1VMS M%S"Z\,-5\/J)_.@^\0O3[(W12S?@Y[.XQW=[3WZ4QL'KE#Q&E/WNTP.A9$0( M^PHL%OOK0Q_0O3T@%OVPG&J@5P:-):/]4(_RE1$R \/#=T@E+)3*VL%$ M?3\2@5\2O[QU:Y& F"8E\-F_=L"S?_RGF "Y++T7OPYQ5JI2Z!R@KI.[Y-^, M O%UQ'.&*D'>%$.&N0Y!&<8;L7>Q!:<#>>:1T*5^5%V^;[-XE7K,U;70/.;K MH:W #]7;S+%*8W+91E_*^)!60'-9!U(!T-::P^T;"C42;QNZ"*,NPJB+,.HB MC+H(HR["J(LP4E%FM>=,%V&$[JO;11AU$49=A%$78=1%&'411EV$$8"!+L+( M@EU+%V%D%2M=A%$7860/LUV$486:+L+H348864)-%R?4Q0F]E3BA)O>.77A0 M%Q[4A0=93F@7'M2%!W7A05UX4!<>U'9X$/JL^=:"?)K[OBEC>Y B=$IO:A5Q M+2.78PV&8PNAK?]IUY[]_]V38XQMFVTH7)'*6'V,ZGB)M1 M5K0CID _D$:I&'YDC5C$RKRA0]S0MM@;8.<$$S@T'IW39 ;II2N MB2!HY[ WU]0Y9\ID>IF)\3F:*&'HCU0E2R*! +!K\&0T3DB+J(30T VFY(F$ M*9D1^N1[9#"="4-4MFHI*F)[P4.Z8(4J$!CHN_F]%UC_D5(_7O@>QU5%FK(B MML-Z ]* 8*"3QI0@<>)[5SP\@KZJJ!(4Q_:H;$"05'%T6I@J$T+]:"'?11P4 MLV,M:K9Q.%"E-*21&5!M#RH%[6"AM@>),+=EW6<"_4Q<>O'5^[^H9J*:HM@1 M,((N4P6]7D<;)IU"LN_@Z'^GB;ZQ^WY=]+^S#/TFWFPM.*^9HD/#L@$^]1N] M QHOES%)6/_@BU2^H;B)Z)2LTL"EO'.E]#&*">MC7OT-'FM$MPWLTT@#DAIH M:?T &_IK/P<]'H=WLF>9==K /K68&($BI-#)K7IJ'5ZL7#VXX8IUU]Z:[_C% M%.NWA+WO:$YT4]3>BO<;KN^C,7_5YAVBF01_01PK?F:"( =NX M9C)A8S].XO$RS^+)I);F\?RV)H\G;\\A18..5[3H1,LLC>=RTRYZ6LZ)^\KW MS7L9:Y3^!M)*. -TDU*G$&U.W06Y2BF5NC=**R&?6 '$'(P\ 3HJV0Q,F8N M.YOY;*0!&*HMCWU4;<2.1/.SCJPJ5!N$;/KC>S(HJ]4*V(?4QK2*=$L 5?'TV3L MD-=XI@,Q='8)_V=)Y/WZ[MZ-R:*=%!R$_)$2!OW"S M'Q7NU>S(L#O?#.)9NEZSU?YWZ(, WQT>)$IBL3/$3J[-R8(=)&CV0$ NFA/S M\HX?9H<,KR2ALTTYFYU!HJV0CA\[\59,FQX,V $Q7I8YF9* :\23U<2S!];7 M,WA8?\ZT \2,'MDNDCN3]T 6:%\;+VLU@6X*:<-@(*71^BSF?G2]KEP1QML#-B1U8'_FFP] &\]!\ MH04F_IWD]NHQ6]BWEH2XQR]7_>2U.*S,HW&:L,-]R)\-G,:IW,#PET,#P[Q\ M&>DD_%,[ONS*% M_#U^QP^V#1S]"3LV:8;M 4>CA&\#4*H@T@!P[&^C;3OZ4>MC[[!+M8 4_H$^ M5Y-]0'Z$/RCV>3!\H#3ZT;RYECM-P@7/G@4);3?S-3MZ3FVOUQW?C?3'MA@< MW)S=A7X2LWVCZE2JJ(9M23 Y,@ZZ!0A ],/J;H,D7YSN#_$8/V87D:,H?&** MDL4HY7H5,ZQJWV#B@]CO5+:VUZJ;7LPQU/CZ_S$[Q,\2ER:H;FRMX?.)\)R$ M9-%[(M1=D8^L@>2:G21N7)_R" ;9V>J$,E@_A:)W=#"1;Z/O-^&B@"R#AC^# MF>FCR*QOY&/8KJ-F>[,9:NS8-+2FV['S[BD%P;Y%.9/N:GX&ML&!_M@%ZZ>3 M;ISKOX;M=VSM;D)&SEE'+K<##.)F&2P MK.VY7V[R21]GEUV>S(H_GT3T27Q M,8P6*@&P XBM[;*:%'[6,[00*QLL' UDPGY2^?P&Q6SS M3U\3+[LI_?">#S>I>^3W;;M'[B(S,^&<7+HL:I-':+XR&9T,'V@=O?.?[/PG[>C-G?]DYS_Y.7;7SG^R\Y^TH4-W_I.= M_V3G/]GY3W;^D^?>93O_R@O^>U7+?M+3J:S7N<=V7E'=MZ1G7=DYQUIB>]Q\)#_'[MKY2'8^DC9TZ,Y'LO.1['PD.Q_)SD?R MW+MLYR/9^4AV/I*M$_UVIO;.1_(,^FGG(_D&3-"=CV1K,+X-'\DL]\N["FB% M-^'(I?F3\/4.C^\/'1YG\_'5/]]=]F;]:^=J?#OICV:]^6 \VKHG.ML6.T?% MSE&Q^WBGQ?-X'OOD_JAX3BB?CS]J M?_T81*^$9!TO/U.K:)54@8[9MS!HEJ?9U+_0N7*-52 M9>?YO*Z;"?!N:;7RGM(,Q/?L?QF0[ ?E4U3_M]1/7OE'N3^,<*YBM925L*_" MY3MFB ;M3$:UD _G@\G%5^^_E2%\6 9L?4!#M%XK]-G\V O=4EZ7@RO=*>%( ML)]?16%V+Y.ZP9S0]85B?3^U,%U@9.O,GF^OSOY3[-RF7.F8S80>[PXK$\XE M\L]9;U(]>=>$T(/>^;:6)D*?_,*.6$%QZPB3J13/H\0-RK_G=]RC*/F9)%/B M1:O0_WWG;B*Q\;7_2>P#L;%.:)PF_(ZX7!*>_XP,0B]:D[G[,G43P@4-/3_P M,P7JU>Z_>"2.685+$I*EG_3641I*7'/:_Q+VZ=U]]CMIV%O ML?!Y%31B_H>A^%B2A*?9BSNE%#[HVLU@C/!7#,:0[(H\9F9;/S[ M-#/Q7+X6C$ONW#2:0+:D-2#U8)!KPX4_9&_=7R)ZE<8).TO0 :/QR.UMO> M/\93Y^IN-A_?]J\;IU(]_C1F7=Z%'*!,I3'P"B!115,,9BZPK<4L5S2,9 MF(2*J Y1>3NNYT#,' POD4;XX105R2K; 0 _0]O"'^0]3D7.T*88A8ITEZ]L MEO8>UB[]5>Z(H*[Y%LBJ*(4>J5 5<2.@RA]!7=-2Q@1]4LG=H7KH7G=N0.(I M>2)A2D8D47IEU1?'OKV"=L##@YY,>72+0<_SN-&7">@1_XG/$"IVQ#6P@]0; M$J2"P(A/RN:FNQ?')!%'4K"B]26A@\%8DA9=L(6:6#(0:B9?=0BCM)*EBXKF M-J 2JXCG*5]5A7U,>_$O5[*4HFK74QY\2DIAK_8;XT%%2-7*HJQHW0Z@V@$/ MB8)A86;VBVE2XHO]:\<5^\=_]BT]@HF.%:PK9^G J9W;!"J8<:=68,X].L?+ M/7&$$Q@K+RF.S( U KR$@U,>%=OOB&+XN$[D6HQM+E%#E)U$R72T,PVM?B: M+):F))1^M$S[;EX-\6P]+D:.)RL#ZJ%[!=%\F)IB6M72**HW44HAH);+H?G: M-,2TJJ-]1Z>=#^U[C8WY7BWTJS^5_5ZU(Z_! /]R[RI:K_TD3VX5+OAYW ]7 M[-SN$^!-W]>'-WU7X]O;P?RV/YK/G-Z(9Y ;S0>CC_W1U:!OT;V?3'&]&WJ= M9G"&XY"LW."&R)*REHJ@#[0&Q!R,O8K"Z#/BT$_\5>YY2Q(V?C+GG970I-<,_O&X!2Z;(&=D4W'M4^*QHER7\7+I>^R0,PB9"CR& M<4K8M)OA*G)D9TWHM8 =%W$4>]K:6CQ0^R_$(/$K#1I-$#C;^C01XA"O@!DXS;J_ M?C:$B*:MIDZ*M! !]MEWWQW??=;GZ-8WWK_3YZ[I\">(GXX\Y+N&KK1/;E6. M9MU:.G<0H3O?G4I;6K Q:&K) )$#=F( $:[(5N(;Q:5_D&68 M$9QMQA#N,RP'<8I!E@W=\;YT3O.X2DDA,UIRUZ.23> XLZ:,T7P,5V+N0#9L M)V*K'Z4GVP4FN2:_,3>*A6M:;7#5NK.R.+D'[A-JFI'-R=AY;NU:9Y>,3\6Z M+B>ZPOT;QWLO!>5)#DV"P5M+TV4W!K%4G0##OY@<9R3E4S_V-2/;1YZ@"?/0 MG4VEI"2RIMY_UT97_#_73YLZZ8''EP M471=E2X2I2+ICO$*6(;[;>Y9'H*1IBO6I9(ZACM+"9F6[X+M^GX4F+:WN)E* MJM2, ]-QNO&;>X(+AJBEUM+(BS_',T',C6,X@=&\\3B]S M@=K2(T?C_W MN!"$T":P+$7<>BPH&N%$#%HI:W)Y192O7]#DZY[4OJJFYUDT#=A'W$JLP-W$ M[TOM$Y55Q"'4GDKB\/H#4$L#!!0 ( -*BA5@W7R"T8]D1#0'4EA2A[!X[N05?..*OA$ MT%4%!^+0=YH&8TJV<1>\_99H\W!-0--L:^1^+2!WH5A3IDF>(' CD3TX]"RY ME'S7!5/U/=)8;E3D^OO*R7#%2$OI+X)&Y;CD(B8BAQMLP^@!$!-2OJ7QB[% MSNU&8:_8']@R37J6COCVX7DD03_1D F<_VMB"G5=4*[U'DCR)+5P2]?8]6.? M2KIZ1H%]N/6<\>=*E%#-J#]\-QHFWK6-W%7LX=R%ON/-_,!;#(.%Y_A5<*?# M&D;7OEAZ'YG/+\JNR-)%H@BZWLA#%V4Q49#-6HLRS,K =IXV=$DE8"X,2Q]< M2NH;)"XJ/L)(1&1*A[.I[TP#F(UQL'CN>,8+X83-PA](?# MV6(:N-.;G<73$M![XPYJ-C?"$2UL T3:W1:5Q?&]6\W<*K:!N-*[.3 MMXUVLWW5@9#%^:=9KWN@*\@VV]$< RXC^1>*!DNBVK*QO<" MV2%7"3&RB*&?"+K-\].JEDN->J-918\M4F7K0J#2JWXXV8@592&+:+B%]$7( MFV$577^_3&E,0T%5=Y@D!)L8X)"?/F-[!/1R9ISARE""U _B3>@5%]GX9X0# M@@L_AA&)R&Y)!)B80)1CULXT[V==1'JJ@^??P<*'R63^/S)4/O="TSJORV$.PGWNU83%F#V:)VJ=I5P7U291MVJR 9@>/ M5XX"[;^\L_C'!?ZDMNOJX).?A-2!Z3=02P,$ M% @ TJ*%6)M!" K-!P %2 H !E>#,Q+3$N:'1MU5IM;]LX$OZ^ MP/X'GH$N4D".WYKMP7$-R+9R$2YG&[:R:#\=:(FR>9%$E93L>G_]S9"R(\=. M:J?.%EL4224.A_/RS#.DV,ZM]Y^[[J^_=&X=>P"_"?[I>*YWYW0[-?,;1FO% M<*1A!2;"U']4 MJ^2&LRAHDTD>L>J8SAFI5KN=@?O'1F5,Y9PGU4RDH+B99M>D>#,362;B-FGA MNQ4/L@6N7']7V9F.%E45_Y/!( K.A R8-.IZ$?4?".@D2D0\V YN-)OQQF:\ MTOTMF:GTNE,#_=WB9\F%VHX/VL'QJ8'9>-U,1E-OMFCI];4^K MWB2C&^+=.F1J3WKVT)E61Y_OG"\_TSB[[Z%1S7J]^=/,.#-H*EW7(@,A>;8@ MM_2!QQ:L+S,>KDFVH%G[[6K8LWMW#ND[=W?3L=UWA__Z5*E7]//8'@PVSR^33:1!IXN%+TF(XWV!KH#4HO&Y>[+TA_A 8//U6:6^O* MV?M?KC!Z$%>RH$M&)%MRMF(!A),K8B=)3B,R8:F0&1$)N1$RUH1)1$@THS(I M5"9S/\LENN4F_J6Q"7Y,SN%1\PB/4AH$/)E7-5.UR09^&;D]@83Y3"DJUR@2TP<&ZY9T*G@7@#&P9(2NX!HHX'/I MYS&()3 =+('&2U8+[B^(RO''X_P5DZQ0@@[$7$6,8FP :5 SD*.4^=I U)N" M:2( -R$Q$)39NAR&LZ;Q1>RU7I7BTS/,2,@3B"&FXS%F%J07Q&%8EL9Y$@+6 M:<9!#T_\* ] )^2E%" +4%]%63Y8&5 4<%5LHD4<@ M 'D6D R]G-+V^%0M2!B)E=J 0+(YAU*CL!#%E\9NL-(JY5)MC-FS]J]+YX?7 MI+/U?,5Z.\[_)M777%RK(F,%_2/"11AR>-1A<0F53"< LIG$<- $099GT5< M+5 3VU.K3(Q$, %"!9>"1DF4VC,T2N%VY6* M)_3S*5Q -F]_4H(E!-X.APNZ/O#TJ=@8, 4O(!@:,+[?JHLY&*?YNKX*4B* M,P91+U8R-"MR"0J@N)9"SV,F%(%E&=QH)G'W-A%62"@QP* M'VS1YR6::4-GB@><2HX.<-,--(4EJ"E7R- :]DK3N2YPH1@8E &AX*248B+S MB"(O@5O:B$>FAQFF;Y3;'?QKQE 0J /FL^"U5/&#.)D=C9,C87)TN>VAY?A" M/1HT +0E#Q +5(F$(B51!3C"GHX H3+8) O@P^F,1SQ;(_D?6A:AJ_.J4V90 MMR-:VA-HYOM6.)3F,@7(*-VL?!\.\=H O3N8LP1Z4 3(@1&6(B11!'8^!AT M79X"]_PD?/AGX!%G2:-<%QM&CX4A]&>^!+_5@3Z[;35'D(=Y/-QZ-1Y@(A2^ M,@U^)O+L>0N.H3>ZE6:X>PF_OY\CL\V^2$.H_.>D-#A':S#1VH\Z M[MJ+MJE'#J;VA$I'NA>^GTN,;8E;#V@-(>-04"&8!CJ^YL#*3!H-"ZJV30,K M30. !9J"M.T%/:SA"/# HN*D\$3>^F%W?B3IIR?ZZLR'N-=M"?4)-]C Q7HL M"*S/&,ZQH!,_9Y1J ROKA#:RU^^WIE'H^9F0II +,?T.M,9P9LP8>X& 9@+: M XX''$S4>BX +U#O"OD$?N/F8P-(]C7GX %Z$N:)KP\5[__&FS\;#E787SDD M$_>SN#'V.8/H%\2[W82M&'U )C7]37.I[LSZ9+XY8)V4TV*_9$X3!TJ3!C!1 ML6UE/IO_HI_#%,@@M%W+T+D"+E=Y',.F[T^FG2G8Z^!1]$VI^I0=V O) M8- M)4#;@M Q79 0?/TQHLB298B0)TL1+1FR84+GQ3<56=0PB]-(K!F,KA;"%"[= MP0#D["RT?KD7S7WWBX]TK7 YVU%Y87O)ALX?G^ MK%]&O_?R%13Q!,GUXS"*A=%;MU^4^?#QW=Z=X>SIG6%-U7:^[K]]N/[:U?JW MKG-#G,]._]YS_W#(Z.;&[3L3BXP!AN[ &7K$'@[(P)TX?6\T>7N#+L83P+X[ MMN_VK7H*UBW?E!FG?.-6TA4P7OY> S5\S:&3XY7S-1FE>J_21@J9 M,KUQ,=?#VMYG+KI_/W#/_7OI^OK9&^JG7F@V+%MLKJW1;KU^^?IZY^:ZAM?Z MYIX?_SO _P%02P,$% @ TJ*%6"91PC#4!P Q\ H !E>#,Q+3(N M:'1MQ5EM;^)($OZ^TOZ'/J19923> I.=$V&0#)B+=1P@<$X[GTZ-W4!?C.UQ MVS#LK[^GVH880A*2P%X4 >ZNKJ[7IZK=S3O[7_W6K[\T[TRCBV]&?TW;LOMF MJUE)OS%;R::;[6'W.YO8W_OFM\(L\.,&NZZ&,;/E4B@V$&LV#I;<+Z8#1381 MD9P5L!!+_U8JL9X4GMM@X\03I1&?"U8JM9I=Z]];EDL>S:5?BH,0C&MA?,NR MD6D0Q\&RP>HTMI9NO*"=JY\*>\M)HI*2?PI,$N$TB%P1I>S:'G<>&'@R%7C2 MW4UN.:?SU]OY0NLW?ZK"VV8%_%O99TZ%RIX.6L'16PVSU:[!B+0*70QV-S9[ MWPI.*$O7U8?_7-?J^"\OXF6AU1E9S##'PXD]ON_8]V-S4F36H%/&1J5_-BL& MA!R=2Y"M[F=B>,MB\3,N<4_.,13)^2*&LNV6^<>=U;9L5K\NUYJ5]ODT.+KA M195RA!^+*!N3OBN(9ZE6KMZ$J:X=7E#S M5Z6:F!TM3[U:8\,>L^],-C'&;6-@3DK#/_KF]_^G<$;')J%JU>HEH^-E,WSFS?=@V,J(4U[O.6R(LT<[FV-#2@N9&6F:7=W MK=W.!U>7^ M=88D\.!;H;:3+N_ _R:*K ?3L@5?"1:)E11KX<*<4L'8?L(]-A9A$,4L\%DO MB)8:,UDP8QI4112H.$J<.(E(+$P!>.4(I'&R)9\@>!?7,\%<9< M"(,M/5*%]B "1T9.L@29C^60!+67K1?263"5T,?C^K6(1,:$%%A*Y0E.MD&D MQ0LHJ$+A: &);PC1 A=JPC$PRG23-\-YW5A_EQO?[D7!9M*'G\Q 5/V#YGA"+\)B-OPT*8CKQ.T>!YCV[-+*H.MD;D MN)(8%XDB\4 7P8PN-Y.:7D2+M>5WVY3TNJS^?>?:>@K]%ZD<2W*K,*QF,4Z0&LYG$HU;=8CP2VL@PFIQZ M@HS!!#P[]:1:$#F1+9&EE*GT[$KE>($"'NG\C0(OM788!8YP":;8%8SK"G@K MM:#YTUEP']VH@=2@WE2QZSHO7=]\$C#PO'@>1J>G)^Z%P<@8^B8C3<_?DP$ PK:1+_N8J\#F! M%%>(%:K6% 0\C#<$^<>VI?#4OM-N22-KCS17[346_LP4"I,H M1%@H7:(#H@C'@?!@;"BUS MQ;U$)PU92,QFJ+QR!=W4D0JZ*S G@$#Z>+RH:I]C(1)8I:5[&B3Q\Q*< E-\ M1RVH+YF]WHVQZ;;CT6$L4DM GEMB?CFWN6=P6S>UR%/+4E^=540]<]1];\A8 M@N; <9*([)?#P2-<9_ J$F,&T<#C1P($%5'*8<'5#N I8[23A:NA1,N>I?D& M3?J#\+)>_H"^^&%U/N+8X\Z\>4]#=^Y^3A\SW6U$%!_CFM)LB<,D>-)KA5R( M4X*\ ?&?E-^=:!PE. ZB-!\S,CT&KDLD/T@K, GK,(X5N$Z81. M.AA?G_HS+Q53/)/^*O!6@D#-Y_/LY464Y:E8AEZP$9A=+X(T.?E>#,!G9T'G M\H$U*_J-VL';NOP=1O7)!<8++]??M/ O>)FWNR)Q L_CH1(-MOWUUO=\76IX M&LQ E^:QFR*K56OUYW'\V:N.S.N:8 M&0,8S>R,3=L8?[^\&%>C,>+>&D&"1UE(!J/3&=X/;*3Y5K3#N#T+-N4N/.FJ M\Q8H\2-!+:4+UELV#'5'T" TF0C='J27H5K\9ZYU?S]RJ_M[[K+VV?O80RWT M+4=>XO22EN36^^:M/E]_\ 4$L#!!0 ( -*BA5A\BJ5G MW 0 "@4 * 97@S,BTQ+FAT;>U8;6_B.!#^7JG_82[25JW$.VUO%VBD MD(0C.@Y0"*OVT\DDIO@:G-1QMN5^_8T#H9326[$J[)>M*EYL,S//^)F'85I= M[Z^>?GK2ZMJ&A<^@_EJ>X_5LO55>/N-N>;7=:@^L.QAY=SW[1IM&7#:@6HDE M>&Q.$^C3)W"C.>&%Y4(!1E2PJ88?Q(_^5BQ"A]$P:(";AK0X)/<4BD6]93E? MS"TO]ZOYOJ:?\4D2-UMEM*^O'C<@E%]AR . M]TU,CJX!ZF@%L1C0=>W.C>;'K%BM//Q=K=7QOS23>[8],:N M/2J TS=+Z*CX9ZML8)##CPHDQ_Y!!IL@Z;,LDI#=XY)@]S.)8-NZ?=MUVHX' M]5JIVBJW/P[!3H<'!>53+JG(4)FVZSD=QS0\9]"'X=@=C8V^!][@@! WW%<_ MP[@T*B$Q1K:9A5"M7U5R\,>(P!B!80V&GFUMHS_6%>3(OU2N8= !KVO#R'#; M1M\>%0>W/?L.#--3.[5*I7:$I!P4]S]I(METL5ID/*#*:*5TQ;BF.QS\B'/J M2Q9Q5$XY SFC8'">DO#TQ*5Q)"1$4\CDA8HHD2+U92J4;X?[)3A7Y\_"X#&- MFF8TCPE?G(GLW06@R4XDYID$P302F>T%)0(HAA& 17TZGU !]6H!+;FDYCXF5U09J/E:D DQ1,!\_%% !,:1D\%F%%!)PN\+H&9S"*)4Y&D MA$N0$6Q4U"J/JJ(*"@L)HEC9V3R>'U+DP\1F&(F8$$Z3XN YI LP_"SEBGPJ M?B(;/X,:6Z3TC';/!M/N]49#PW3Z?]QH%2U[/S0L*W^_=W2OOJQ5@]'RW-S* M-Y5OGX1YN/A%K:V:D)9GY:=6%BX_Q\^:7BUA6V*]/;0#M:9[F/H5PZ=I&.(% M(W]#Q8@U^P1]3)F@X"_2@,29Q@XYB_VI.LNJ7TI %&+%@(5YG:U;C[,E3]Z[#,Q1W%*F+CW3RW<7]_6P5_I52CIWX7I^KX['V MHO&_9RY___2F\Y]L=_[EI Q6))1$=,D#FQ\^7>KC7T0 M=JNV6X ATM"Q;&S7C+X%EN-B&S5P#Q_0^=!%[CM#H_$S=G2'2W7I.'T#2QHK>E7'F:3@[S+7]@SW[JB: M\A*+BL$PS<&X[V&9?U=BM@5F5Y.R,1-2TZ FJL%C2KFO9E!-&,2J54H:2C7R MUC*;%V5AOC/YNMXQ^+K>F&>].[+:$6_\:O"QG&.IN#/_F_.LS5&6FOBI2=]R M]*BO3-Q(9@JQ?B>_INI:=A09+WOGNT\3IIM.OUOQ0>TL*)=5/E MXG8GI2RN!?84WI9ZVCS,.\?G^_GYHZ/'9N*7+P^?8?^C]/\=$YYMV, &7GRN M8[)U+P0MW8,MQ^+-Y?#USX^*I=[=W[O^Y_[!]_CO8!&J1T>G%R-Q/+P\OQI? MOCL=O[L<7O7%Z.QT $&[_SA\=@PE+[Z4(MGV+[3A2Q'4I[ K2SW'5T[/%P'& MGAP-_W@S.AF-Q0^#_<-G)U_.@*WROJI-A3)!.3;JU?#J]')T,1Z=GXGSU^)R M^,L(1W9\-G[L_(?:OKP25\/3=Y>C\6AX]16M[F@451A>#E^)BW>75^^@BQB? MDQJLY/X!Z3E^,_PVVK36B^$?IV^.SWX9BN/3,>FP_]/W/WP#);YJ)/Q9^Z!G MZT='XX42,UN6=J7-7$R5+YQ>!FV-L#,1\-"KHG8Z: BRLYT>Y[=RU@=7%Z%V M)&YDBH%X0HL?EU,*GE-;+:59/W;\J9^_7JF;W]C:I:^$=<+K2I?205%7^:=" M>S&17DU%O80ZM'VS+X>HW^G)2IDI5D@S%5 ER( /A7*P31?X0$9H4UBWM$ZR M54^RB@OI("=)?]K?MK^8K$NY\LT[)_PQO\)"Y7)90M*D5#N]I;,?M8<0\I3 MTH'X78F%_ @GUA4. Y ?M9/:"&@4\EJ6'17B7:,@,5$XEH&@(XH;K,DGQ@91 M0-%2P3Y:C>]\/?E3%4$$VX=3XG)*.Q76,$NH3TOXR\-I M,^64*12]RGIL6H$#VJ)97RA9+.CY:J'Q%TB;Z9+.P6,5-E_HB0X[O6!YRV-C MH(NX5&2SP"&\MJ[B@M!N$1;89!A?)*2E/:580O+@:Z? MTDT8,IQ'18V1L&I M7.H GUP%6UQ_13#YQD9>U,[7TE @=D.GSQ]D:WX1S=_I>;(?X6R\]H$C[OGS M_M[>'OU/>+Q-"C1!\GRO>8;P^&@#81:2MD),L2?[XN][ SS>I\@1'V59(Z 1 MNKQ3GR/X>7>+"XY_IZ8[O>[[6U]_.''8]=C#B;W#49-@#/6#+';$1<[6 ?7! M3"ED8F#M]#+TWH#](OHGQB96BFE=KCOAVZ?0T-.2X-C7]'E6E_BTE#J6(F.- M]![X2H7AH<0-W.@DN^]7Z:Y5N.'?6[5YPXO(M8"WD?JIE)^]OP*AJB"_X(I1 M+*1!EU*CG#M>$'1Q3:FWKB:V;(C%;^\&J?X^&*_^%F'LDOB_[SCUM.._A2WA MEQBQ3H'/3#DNJ:('JKL$MT81(A*;<[$\ED_B:GX$ M/M"5\G "%O"N*K!9,+#HWKX8AJ+CXW.4I4T',UTS%C2H>17^M(A(1RRKI<Q,WB9/(VWO#;7=)@SQ'&72;4T,5?&;G;T*?X53 D+&9CM@CHA!:@L$N_+ M=)S>TP9<',1A4D,6,3AL--&&U_0[/)!SJ 2A#C+2S$CM)SAQ4EAC\4J)E494 ML)Y3Q=MWG8&G81$UL4NB;C5DKVEO%$QXAT3H5!P;LKB1]12*A?0+H8B,)JWP M"B0*\'&90C3!L)S/G9H3:Y>5K8E$+)2A^)R".'KBDSIB!UH/'X0L"EKU4*+U MY*@A(P^M,I]WFH@4;#[&>AL[RY:)Q=BIY)I *E98,7,6\0;)'$3TIS8,>8BP MRCIJ4QU:U($@61,K 9#8=(I^IPB60QF!CNTZ'!0;S?0G#JC$)%W""#U#%5^C MDX*>L"0F4!\=VPI9T4^J4M/D8\OD5"D)*?KA=X.\5A;2A&))#Z64_0[;:[C>!#BQ4Z$27&2*Q9EB M'5A"RW4?B <8'KN#"=KMO777XJU<'&WW0YG\$.OP M3F_+/"EF2X4=<4.G5+]-FBE MQB(B1(M*F^SC9DYTRP:8S):Z493QW=M.0)7U@OHV:%5:X@)IGAB6:%$F"."A(G> :M$6I :)>(B9[&AR@T:>,E ML)"\YI5BE@DG\!DZU3@P4H@.'Z4VVN%H M4()0'^!#'RU/9\6S@!KU4HI&\D05LO:*0-3=V["865 304X1!BMU1>[C-,GU MB^?:^4,6^(T!>O.*DVX&7V*S#S71&.(=X=\YWK'+>B/ M6RY!?^S<;=YY?=D:W3&EJW.\T[PM?>*4O-Z=*+08T'O)=MQ#H\^5V+U+_:+7 MJ/_OUOB4<"]>#YQD1'B5$8%:XPYYY+%#RQZ1N4,I!'B*X52 MX5H^R@_CR*+$+D3HN7)01L2$H"W62KJ(>=80.)BTZP9:H0OTS2Z2;Q;*-4DE M8 *K#@5"48% *)4$C 85C8MC6\RI'$?NT1 8B&\]B?: F1Z*B1;4%*NM,^*G^H@](Y89K1LMU!^)XHQIU MQSXTQ-GID3<)5+)UMQ4R47FR-9:1."?*ZZFLI?71^7K6]A5);-.ZK> I@"O= M1*&$D:P%WTME]_#%#T\35.%4H'LKNK1"D\2S/8#C_L&>F,JU9ZPD;"Z:*8"7 M*-)XQG$ %S#6RE1QG/U$LRILQ+BZDG2#16<F;FZ/7=MGK8>;#HZ#C/M/:JGM0V'[HZ.K3C/Z:W1&@J7CIHE. M3F)XXG#KGEC*0GBY5 E0-I.QFR$4]3436.V@*<8@)#>4\Y5U'23-/LE? IL6X>VOX'"^+2S$IE$QIX M.2WVRT:4YL.\GO;\$-/7/*FH<3 M;$T3M3E$0-,40^[W..!-TU6&MPSBZ6)BVS@V_[)ALV'+G.JG_8/LY[/W)Z=O M(]?_M$SC6R+TVM0JQ8NWS6R7IU/36('P=6EI_.)IFAOG(&W-[/QTPZFY]H!? M^C4%7[%D-5HMAOD.YKA H]95,P-_'!4UIL=@X_I%4V))P=EXLON;BUA_ @)I M+F-#*>_CMR=J,!^@NU)N3E?(%,%$&M.H&ZD;+Y'3=1]E&8@]3XJY!I$#"$2> M1JVIO":AFGY@@Y:"VL0VX;+8R$R0L-HR2LRHQSG;T/ /&)KCVT)#[@X8(2A]Q9)1.GN.(@QL-.C:,&)Y):<_K[5 M%^GL[C(O3@V94SS13^&9K9NP 7K#$2V^WV"W7\X17!]6?#UTK^,$3_CL\[QC M6/(_6K$1KDA$_7FNW:33X>;E.T]F" ^8-R4;MIN+LZ$)%@V.T8BG'W3=O5S( M;H%,I1^<#@7ON3&9V$*GD M&^"D'Y;(+D4@,LL]A6A"=,HNS*QYSC8^ZZ9BVTYN#2RCZX@IM!D.1'M-M#()Q,6M'ER M.![O;9&/46Y$9ZP?'5"8HG31C(LY-45NY]PH";8905VSFGUKN]!A"L4>F%IV@R/=/V^":*J\T_C[USE9LZ)T@/>/7 M-J+D+S7V.O@K3+C^R\2)_GT#_;N&^ \=Z-]#_!M02P,$% @ TJ*%6![F M7ORN#0 ^U, @ !E>#DW+FAT;>T<:W/;-O*[9O0?<)ZY-)Z1[#SN>E/; M]8Q?F6B:)AY;N;M^NH%(2$)- @P 6E5_?7<7( G*DMWT8DM5DW%DBP0![&+? M#QZ]'?[X[KC;.7I[<7(.OQG^.QH.AN\NCH_V_6^XNQ]N'YU^./^)70]_>G?Q M_=T?L!>X[693-T45W[Q M]YW6X[BCOI6_"KB) T?:I,+XZ4XSGMPPF)-9GL+=7 M%V^^WTD*V7_YXN9_+U^]AI^]JK]'X[V3V#GEX^ZNPI+C[**D9.I PR<'E_\]^W@=#!DW_WK:/_TL8 *RSTJ M2(E03AB Z93@5[%1SDS(]9N?2B,1I8]ES!]>?9>FG4A\""F@$ OW,T*7=;@>& MDPP31EMG #6EP:4'*ME;?/I,YP57\_AY-A*9%+>P>S?ECDGXL4PJA@^.A(6O M>,CPA\5]X=4P">,JA>&6V2DW8JHS4 6VVW&:)49P)^A^SN%Q^,\X2\H,=^:7 M$7DQY:AF+,T_,=+Y"7F2Z!(>&9C("G8*^I+IS M0#Z K17,F>S MJ4RFK##Z5J:P+(RCI>%@=%GD0/N(D$08@D_\(I+2R=OVXA4B ;_*T4EQ58$H MU80A7@%5-!G\#1C"JV.C<\ C6+ MU72,?/BVA VR*V%U27P( W+IG! ])'//+:AQ@13'L*S",!OW_M/78"HB@5 "@ 3 ]8P%HJ6A U>$'6R6C*D50I, [@ Y: MFWP\!I$+V\'KP/(ES^Q6\<"9OB5JN*A$E=U>/N %",PV/8&Z>&8LBC8+NL@8 MDLA("*@V0%HV$ER/QQ+D.JP..J(BK04>09)'06[21BQ?"S)+ *#S2E=>UV(7 MT)Y,N0)GYR0AS?'RN]?_H!4XR.Q4 &,NB.3X@5@P]X)6%"P#!D?9#TI$I;"I M6D5[1FB)?8 O3*H+F&8DCK"EJ4!H,\S/1?P M;3;5<%ISK\0<'"*= ?YN&-Z6HY\!5]7IA#-KH?=Y;+00W78[,>%NJ9ZZJHV+ M0SCVVDZX:NR$[>+9060?M8Q+8.5@T:1()@48.D"4R+"K["<@?;1&&]NHO@5, M7(H%4?"-O=?"PBT\8&5U.XV5%;$9&E>]B)!G,LNJQ]"*S4>EL6''!F7/6$BR MB\DXG".;"FO1>HOR8]HN'GT#=%J4IM!6! 53Z]G>"CKM=G+!E25R#"IIK#,@5Z"%@S\9 M5OSGWC^E6KI>N A&H\#I^R_V7L'0G>,3I<""9".M2DLJ%;1DT*!3$"9]4IN9 M5I,^VA=H.$_!I@C(M&O?_F8@\=KIY(:!:XYF_=IWLTDX 0,7!+0,W$9AUZ\( M\KM 8\E(E8F : M.[2CT2+B#B/'E>_"E_H;8$99< [VV)O5-S&$GF1E*GIL5#J&QK?2X)YD,I<4 MT]9_$9.K"M VHFU;VHS4#/4#CWB)E.#;B.XG6KM.]L,_%QA!*)<:G?' M!14OEM13T+7?7\BQ&?"^%YC8 UGVE4'\+BY >H-,M6Q$"<%NITI[]ICCO^!B MJ6@L;A\5Y3D*XE]#9.;B=# \/]E=.R2;@<\WI4JM#P+K0OBTVU=;T^_BG?Q4 MRA33VY4&[W;(MN"6S;2Y0=V>\$*BR :S(>"/+MHI&V=ZMG80-@.15Z3"EF#1 MZS9&"?A@C$4(;>YR:P6X0,C-ZX9E,S!:B\&[.!75K8)B6&!)?+E([I?!651; MB%6%A[#4IQ+SRK"C0_;!1Y$.<$M5IH[J#JE>'X'3OZW!7C.LPO6H+YP%$^;7C^XKYDR@$[ MR3$_P:Y].I+2%YB NQ5FOETA?"Q[XAY8@''DBYA\EHCR4R/ATW"$+JI3PJ\K M=2NP1D0\M-Z4 M8Q4:HY&MM4/**0V%5?=F\[F@%U>U4W_X".<,6,R\1 S2 4KZ!L+TWS^WJ>TL62E#J-A"8 N':,(FM<5?S+$ M_D&#ZCG?#=E\JHQ;*%<8>P=DE5HPXE:"J,?: 9#8:X=E0S ZVF56B!LOD+QM M$0J!YVR"E<,@VC+Y:Z.WT%^!T3TLL3*)M$"/X*2X+$A.RS.XXCL=A.F1@TAI M96"'0EM)9U'5DL!)NGG?RU$^PPJQM2-D0XXEV<4R/T0L47I3V"W22DF27D,T MMD+^A.P9' O3LU@]^M#S*C-E[0!O"-K37;1+$I%EOO2V=%2[B-P1_'2@Y[+R MV3W]5I2+7OK^UY1@TY+1:[D6"9\^PJXAI& \H7PZ!C( /**HD$L64+]9'U= M9J:MK=0*)@Y,,/Z)-^&YY4;!5MG= \P(@)7CMI1$0EV[9;P$\]>030+Z3%9@ MDU!)M,(F,X$J,RJW5S04'3GJI5CHQU "?4UNYCVJ6]*%P2)3LEUX>BLM^755 M?Q5OM>HL%!PN:?>HPQ4+G1ZP4S#G+9)DU.Y165EQ$QNMB@T#"6WD+BOXOK&V M<]I:5 G,_"-7C:A" OU@7T@,3F@12MTU^. 8X[]9DO6V Y"&H3^04<]#3ZB M$U/*2#0$A3BCUD!82U%DB-/32&/8?*"?4/#Y7 M4V98P&JB=HG0]M?M!-T7M6O@!/6,U&YD+9V[H7G_OPX+UC18H!*F$'L,8;># M_BBV$*P] 4#H)GZ#3?BEMB5R%<*U%,I!CCT'^;!M$G9)EYZH >9U[PZ6 MVF,TC"1Q:$MMM\8LM DM("UJ[:76'5H+V8"\D_LBK[@@BN=;:OOQBKU'!4VA MR DGN"NY6."*L:MX&$'8*L(\03;T73G#1@=L&X%6!(:RAP1/2W+?:>@BX4U1 MVSH0%U/ 6I^\IQ;WK>/A M5':(:./7T1)X-%O%?!\(9TVLFUU1M?NVQ=TZG*U/G>5M]M19TU99;A MBQI@VA"F)8?M+ME476@T,\4'J6N3<,HG1H0(8QQUB:\CJ\A<9MPT5QF] L0; M%,% M;G#5<78[GW6>;4&5B0E5''N(5FZV%U(GU"W8]I&:/84D#?AV3M:W$WDKJ28G M,3*GUGP0@HF@QD/;JW?CCPH6Q>;">712D7F/!/_$LN">@I-77VM+OGQMR08H MHT%>&(RG)N$--=NJA;P1%T+(#ST=^X7T(L1@M589/!T\W!*9]J0>&!!JL M8G;K\UZ[@*^10U.O_Q(DBA-'VPJLX-+VOI(F=TOWCRSN/Z6V>^-+/WP!02P$"% ,4 " #2HH58G\^OU%__ 0 9D1$ $@ M @ $ 8W!I+3$P:U\Q,C,Q,C,N:'1M4$L! A0#% @ MTJ*%6.SV'6>=% ^A0 !, ( !C_\! &-P:3$P:S$R,S$R M,S P,2YJ<&=02P$"% ,4 " #2HH58RYP6R/D1 !JN $ M @ %=% ( 8W9U+3(P,C,Q,C,Q+GAS9%!+ 0(4 Q0 ( -*BA5AL$C(N MXAL 9+ 0 4 " 80F @!C=G4M,C R,S$R,S%?8V%L+GAM M;%!+ 0(4 Q0 ( -*BA5C+KU0M%BL .VG @ 4 " 9A" M @!C=G4M,C R,S$R,S%?9&5F+GAM;%!+ 0(4 Q0 ( -*BA5B*DI4Z,64 M (.F!0 4 " >!M @!C=G4M,C R,S$R,S%?;&%B+GAM;%!+ M 0(4 Q0 ( -*BA5C2,&KXDTD -K7! 4 " 4/3 @!C M=G4M,C R,S$R,S%?<')E+GAM;%!+ 0(4 Q0 ( -*BA5B->*S(50( ,,& M ( " 0@= P!E>#(Q+FAT;5!+ 0(4 Q0 ( -*BA5@W M7#(S+3$N:'1M4$L! A0# M% @ TJ*%6)M!" K-!P %2 H ( !FB(# &5X,S$M M,2YH=&U02P$"% ,4 " #2HH58)E'",-0' #'P "@ M@ &/*@, 97@S,2TR+FAT;5!+ 0(4 Q0 ( -*BA5A\BJ5GW 0 "@4 * M " 8LR P!E>#,R+3$N:'1M4$L! A0#% @ TJ*%6)LJ ME_9,#0 %C$ D ( !CS<# &5X-"TQ+FAT;5!+ 0(4 Q0 M ( -*BA5@>YE[\K@T /M3 ( " 0)% P!E>#DW+FAT 7;5!+!08 #@ . $H# #64@, ! end XML 90 cpi-10k_123123_htm.xml IDEA: XBRL DOCUMENT 0000889348 2023-01-01 2023-12-31 0000889348 2023-06-30 0000889348 2024-04-04 0000889348 2023-12-31 0000889348 2022-12-31 0000889348 2022-01-01 2022-12-31 0000889348 us-gaap:CommonStockMember 2021-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0000889348 us-gaap:RetainedEarningsMember 2021-12-31 0000889348 2021-12-31 0000889348 us-gaap:CommonStockMember 2022-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000889348 us-gaap:RetainedEarningsMember 2022-12-31 0000889348 us-gaap:CommonStockMember 2022-01-01 2022-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-12-31 0000889348 us-gaap:RetainedEarningsMember 2022-01-01 2022-12-31 0000889348 us-gaap:CommonStockMember 2023-01-01 2023-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-12-31 0000889348 us-gaap:RetainedEarningsMember 2023-01-01 2023-12-31 0000889348 us-gaap:CommonStockMember 2023-12-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0000889348 us-gaap:RetainedEarningsMember 2023-12-31 0000889348 cvu:GovernmentSubcontractsMember 2023-01-01 2023-12-31 0000889348 cvu:GovernmentSubcontractsMember 2022-01-01 2022-12-31 0000889348 cvu:PrimeGovernmentContractsMember 2023-01-01 2023-12-31 0000889348 cvu:PrimeGovernmentContractsMember 2022-01-01 2022-12-31 0000889348 cvu:CommercialContractsMember 2023-01-01 2023-12-31 0000889348 cvu:CommercialContractsMember 2022-01-01 2022-12-31 0000889348 us-gaap:TransferredOverTimeMember 2023-01-01 2023-12-31 0000889348 us-gaap:TransferredOverTimeMember 2022-01-01 2022-12-31 0000889348 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-12-31 0000889348 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-12-31 0000889348 cvu:FavorableAdjustmentMember 2023-01-01 2023-12-31 0000889348 cvu:FavorableAdjustmentMember 2022-01-01 2022-12-31 0000889348 cvu:UnfavorableAdjustmentMember 2023-01-01 2023-12-31 0000889348 cvu:UnfavorableAdjustmentMember 2022-01-01 2022-12-31 0000889348 us-gaap:MachineryAndEquipmentMember 2023-12-31 0000889348 us-gaap:MachineryAndEquipmentMember 2022-12-31 0000889348 srt:MinimumMember us-gaap:MachineryAndEquipmentMember 2023-12-31 0000889348 srt:MaximumMember us-gaap:MachineryAndEquipmentMember 2023-12-31 0000889348 us-gaap:ComputerEquipmentMember 2023-12-31 0000889348 us-gaap:ComputerEquipmentMember 2022-12-31 0000889348 us-gaap:FurnitureAndFixturesMember 2023-12-31 0000889348 us-gaap:FurnitureAndFixturesMember 2022-12-31 0000889348 us-gaap:VehiclesMember 2023-12-31 0000889348 us-gaap:VehiclesMember 2022-12-31 0000889348 us-gaap:LeaseholdImprovementsMember 2023-12-31 0000889348 us-gaap:LeaseholdImprovementsMember 2022-12-31 0000889348 us-gaap:PropertyPlantAndEquipmentMember 2023-01-01 2023-12-31 0000889348 us-gaap:PropertyPlantAndEquipmentMember 2022-01-01 2022-12-31 0000889348 cvu:WeldingMetallurgyIncMember 2018-12-30 0000889348 us-gaap:RevolvingCreditFacilityMember 2016-03-24 0000889348 cvu:TermLoanMember 2016-03-24 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember us-gaap:PrimeRateMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateOneMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateTwoMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateThreeMember 2022-04-11 2022-04-12 0000889348 cvu:TermLoanMember cvu:BankUnitedMember cvu:PrimeRateFourMember 2022-04-11 2022-04-12 0000889348 srt:MaximumMember cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2022-08-19 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2022-08-18 2022-08-19 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2022-11-09 2022-11-10 0000889348 cvu:TermLoanMember cvu:BankUnitedMember 2022-11-09 2022-11-10 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2023-03-21 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodOneMember cvu:BankUnitedMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodTwoMember cvu:BankUnitedMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodThreeMember cvu:BankUnitedMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodFourMember cvu:BankUnitedMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodFiveMember cvu:BankUnitedMember 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2023-03-21 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:FirstInstallmentMember cvu:BankUnitedMember 2023-03-21 2023-03-23 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:SecondInstallmentMember cvu:BankUnitedMember 2023-03-21 2023-03-23 0000889348 us-gaap:DebtInstrumentRedemptionPeriodOneMember cvu:BankUnitedMember 2023-12-31 0000889348 us-gaap:DebtInstrumentRedemptionPeriodTwoMember cvu:BankUnitedMember 2023-12-31 0000889348 us-gaap:DebtInstrumentRedemptionPeriodThreeMember cvu:BankUnitedMember 2023-12-31 0000889348 cvu:BankUnitedMember 2023-12-31 0000889348 srt:MinimumMember cvu:BankUnitedMember 2023-01-01 2023-12-31 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-19 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodOneMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodTwoMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodThreeMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodFourMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodFiveMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodSixMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:PeriodSevenMember cvu:BankUnitedMember us-gaap:SubsequentEventMember 2024-02-20 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2023-12-31 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2022-12-31 0000889348 cvu:TermLoanMember cvu:BankUnitedMember 2021-10-27 2021-10-28 0000889348 cvu:BankUnitedMember 2023-01-01 2023-12-31 0000889348 cvu:BankUnitedMember 2022-12-31 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember us-gaap:PrimeRateMember 2023-01-01 2023-12-31 0000889348 us-gaap:PrimeRateMember 2023-12-31 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2023-12-31 0000889348 cvu:TermLoanMember 2022-12-31 0000889348 srt:ScenarioPreviouslyReportedMember 2022-12-31 0000889348 srt:RestatementAdjustmentMember 2022-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember 2023-12-31 0000889348 us-gaap:StateAndLocalJurisdictionMember 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2018Member 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2018Member 2023-01-01 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2017Member 2023-01-01 2023-12-31 0000889348 us-gaap:DomesticCountryMember 2023-01-01 2023-12-31 0000889348 us-gaap:InternalRevenueServiceIRSMember us-gaap:TaxYear2017Member 2023-12-31 0000889348 us-gaap:StateAndLocalJurisdictionMember 2023-01-01 2023-12-31 0000889348 us-gaap:CostOfSalesMember 2023-01-01 2023-12-31 0000889348 us-gaap:CostOfSalesMember 2022-01-01 2022-12-31 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-12-31 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2022-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-12-31 0000889348 us-gaap:PerformanceSharesMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2023-01-01 2023-12-31 0000889348 us-gaap:PerformanceSharesMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2023-01-01 2023-12-31 0000889348 us-gaap:PerformanceSharesMember 2023-01-01 2023-12-31 0000889348 us-gaap:PerformanceSharesMember 2023-12-31 0000889348 cvu:PerformanceEquityPlan2009Member 2009-12-31 0000889348 cvu:PerformanceEquityPlan2009Member 2023-12-31 0000889348 cvu:LTIP2016Member 2016-12-31 0000889348 us-gaap:EmployeeStockOptionMember cvu:LTIP2016Member 2023-12-31 0000889348 cvu:LTIP2016Member 2020-10-01 2020-12-31 0000889348 cvu:LTIP2016Member 2020-12-31 0000889348 cvu:LTIP2016Member 2023-04-01 2023-06-30 0000889348 cvu:LTIP2016Member 2023-06-30 0000889348 cvu:LTIP2016Member 2023-12-31 0000889348 us-gaap:RestrictedStockMember 2022-12-31 0000889348 us-gaap:RestrictedStockMember 2023-01-01 2023-12-31 0000889348 us-gaap:RestrictedStockMember 2023-12-31 0000889348 us-gaap:PerformanceSharesMember 2022-12-31 0000889348 cvu:CustomerOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerThreeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerFourMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerThreeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerFourMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerThreeMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerFourMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerThreeMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerFourMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerOneMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerTwoMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerThreeMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerFourMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-31 0000889348 cvu:CustomerOneMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerTwoMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerThreeMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 cvu:CustomerFourMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000889348 2023-05-16 2023-05-17 0000889348 2021-05-19 2021-05-20 iso4217:USD shares iso4217:USD shares pure false --12-31 2023 FY true false 0000889348 10-K 2023-12-31 1-11398 CPI AEROSTRUCTURES, INC. NY 11-2520310 91 Heartland Blvd. Edgewood NY 11717 (631) 586-5200 Common Stock, $.001 par value CVU NYSEAMER No No Yes Yes Non-accelerated Filer true false false true false false 46445647 12854428 49 RSM US LLP New York, New York 5094794 3847225 4352196 4857772 3600000 35312068 27384540 1436647 2493069 40000 40000 678026 975830 46913731 43198436 4740193 6526627 794056 1124556 19938124 6574463 1784254 1784254 189774 238744 74360132 59447080 10487012 8029996 10275695 7344590 3600000 5937629 6001726 337351 576549 2400000 1200000 44498 1719766 1999058 1817811 30107 11396 31511350 30301834 17640000 19800000 3100571 5077235 26483 70981 52278404 55250050 0.001 0.001 50000000 50000000 12771434 12771434 12506795 12506795 12771 12507 73872679 73189449 -51803722 -69004926 22081728 4197030 74360132 59447080 86466321 83335764 69400693 67031502 17065628 16304262 10758624 11410067 6307004 4894195 2455214 2271101 3851790 2623094 -13349414 -6553131 17201204 9176225 1.40 0.74 1.38 0.74 12311219 12389890 12471961 12389890 12335683 12336 72833742 -78181151 -5335073 9176225 9176225 171112 171 171 355707 355707 12506795 12507 73189449 -69004926 4197030 17201204 17201204 264639 264 264 770362 770362 87132 87132 12771434 12771 73872679 -51803722 22081728 17201204 9176225 470950 688096 103304 133997 770626 355878 13363661 6574463 72099 -505576 -37843 -3600000 750000 7927528 2925201 -1056422 -1535856 -297804 350755 -1786434 -1270141 5107211 -1157019 -3600000 596741 -64097 878960 -1795417 -1131135 -239198 -919165 18711 6231 3928341 944329 140450 40789 -140450 -40789 960000 250000 1719766 3115181 330482 49572 87132 54334 -2540322 -3365181 1247569 -2461641 3847225 6308866 5094794 3847225 2454065 1792858 4364 25291 <p id="xdx_80B_eus-gaap--OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock_znIt6o0V6dVa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>1.</b></span></td><td id="xdx_823_zW1DEiEUwk1i" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>PRINCIPAL BUSINESS ACTIVITY AND SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company consists of CPI Aerostructures, Inc. (“CPI”), Welding Metallurgy, Inc. (“WMI”) and Compac Development Corporation, a wholly owned subsidiary of WMI (collectively the “Company”).</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">CPI is a U.S. supplier of aircraft parts for fixed wing aircraft and helicopters in both the commercial and defense markets. CPI manufactures complex aerostructure assemblies, as well as aerosystems. Additionally, CPI supplies parts for maintenance, repair and overhaul (“MRO”) and kitting contracts.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">An operating segment, in part, is a component of an enterprise whose operating results are regularly reviewed by the chief operating decision maker (the “CODM”) to make decisions about resources to be allocated to the segment and assess its performance. Operating segments may be aggregated only to a limited extent. The Company’s CODM, the Chief Executive Officer, reviews financial information presented on a consolidated basis for purposes of making operating decisions and assessing financial performance. The Company has determined that it has a single operating and reportable segment.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_84F_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zhyv1lS4SF1l" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_860_zChTs1TuuM6g">Basis of Presentation and Principles of Consolidation</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The accompanying consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and applicable rules and regulations of the United States Securities and Exchange Commission (“SEC”). The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated in consolidation.</span></p> <p id="xdx_85F_zDpCe1quiNVf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_842_eus-gaap--UseOfEstimates_zAQDIWvd3Pj7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86A_zLgRLFsJ3YC6">Use of Estimates</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The preparation of financial statements in conformity with U.S. GAAP requires the use of estimates by management. Actual results could differ from these estimates.</span></p> <p id="xdx_85A_z8cNamgpyj8e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_848_eus-gaap--RevenueRecognitionPolicyTextBlock_zrZ46JyflHA" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_868_znGCcm36jV37">Revenue Recognition</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company follows Accounting Standards Codification Topic 606, “Revenue from Contracts with Customers” (“ASC 606”). In accordance with ASC 606, the Company recognizes revenue when it transfers control of a promised good or service to a customer in an amount that reflects the consideration it expects to be entitled to in exchange for the good or service. The majority of the Company’s performance obligations are satisfied over-time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. Under the over-time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred and an estimate of costs to complete and resulting total estimated costs at completion.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. This is known as the over time revenue recognition model. Under the over time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred as a percentage of total estimated costs at completion of the contract.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer; in most cases this will be based on shipping terms.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The majority of the Company’s revenues are from long-term contracts with the U.S. government and commercial contractors. The Company accounts for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. For the Company, the contract under ASC 606 is typically established upon execution of a purchase order either in accordance with a long-term customer contract or on a standalone basis.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To determine the proper revenue recognition for our contracts, we must evaluate whether two or more contracts should be combined and accounted for as a single contract, and whether the combined or single contract should be accounted for as one performance obligation or more than one performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or to separate a contract into multiple performance obligations could change the amount of revenue and profit recorded in a period. A performance obligation is a promise within a contract to transfer a distinct good or service to the customer in exchange for payment and is the unit of account for recognizing revenue. The Company’s performance obligations in its contracts with customers are typically the sale of each individual product contemplated in the contract or a single performance obligation representing a series of products when the contract contains multiple products that are substantially the same. The Company has elected to account for shipping performed after control over a product has transferred to a customer as fulfillment activities. When revenue is recognized in advance of incurring shipping costs, the costs related to the shipping are accrued. Shipping costs are included in costs of sales. The Company provides warranties on many of its products; however, since customers cannot purchase such warranties separately and they do not provide services beyond standard assurances, warranties are not separate performance obligations.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when or as the performance obligation is satisfied. For contracts with more than one performance obligation, the Company allocates the transaction price to each performance obligation based on its estimated standalone selling price. When standalone selling prices are not available, the transaction price is allocated using an expected cost plus margin approach as pricing for such contracts is typically negotiated on the basis of cost.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The contracts with the U.S. government typically are subject to the Federal Acquisition Regulation (“FAR”), which provides guidance on the types of costs that are allowable in establishing prices for goods and services provided under U.S. government contracts. The pricing for commercial contractors are based on the specific negotiations with each customer and any taxes imposed by governmental authorities are excluded from revenue. The transaction price is primarily comprised of fixed consideration as the customer typically pays a fixed fee for each product sold. The Company does not adjust the amount of revenue to be recognized under a customer contract for the effects of the time value of money when the timing difference between receipt of payment and transferring the good or service is less than one year.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. The Company uses the cost-to-cost input method to measure progress for its performance obligations because it best depicts the transfer of control to the customer which occurs as the Company incurs costs on its contracts.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company generally utilizes the portfolio approach to estimate the amount of revenue to recognize for its contracts and groups contracts together that have similar characteristics. Contract gross profit margins are calculated using the estimated costs for either the individual contract or the portfolio as applicable. Significant judgment is used to determine which contracts are grouped together to form a portfolio. The portfolio approach is utilized only when the result of the accounting is not expected to be materially different than if applied to individual contracts.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company’s contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new or changes the existing enforceable rights and obligations. The effect of a contract modification on the transaction price, and the measure of progress for the performance obligation to which it relates, are recognized prospectively when the remaining goods or services are distinct and on a cumulative catch-up basis when the remaining goods or services are not distinct.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain contracts contain forms of variable consideration, such as price discounts and performance penalties. The Company generally estimates variable consideration using the most likely amount based on an assessment of all available information (i.e., historical experience, current and forecasted performance) and only to the extent it is probable that a significant reversal of revenue recognized will not occur when the uncertainty is resolved.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In applying the cost-to-cost input method, the Company compares the actual costs incurred relative to the total estimated costs expected at completion to determine its progress towards satisfying its performance obligation and to calculate the corresponding amount of revenue to recognize. For any costs incurred that do not depict the Company’s performance in transferring control of goods or services to the customer, the Company excludes such costs from its input method measure of progress as the amounts are not reflected in the price of the contract. Costs that are inputs to the satisfaction of a performance obligation include labor, materials and subcontractors’ costs, other direct costs and an allocation of indirect costs.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes to the original estimates may be required during the life of the contract. Estimates are reviewed quarterly and the effect of any change in the total estimated costs expected at completion for a contract is reflected in revenue in the period the change becomes known. ASC 606 involves considerable use of estimates and judgment in determining revenues, costs and profits and in assigning the amounts to accounting periods. For instance, management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation, execution by our subcontractors, the availability and timing of funding from the customer, and overhead cost rates, among other variables. The Company continually evaluates all of the factors related to the assumptions, risks and uncertainties inherent with the application of the cost-to-cost input method; however, it cannot be assured that estimates will be accurate. If estimates are not accurate, or a contract is terminated which will affect estimates at completion, the Company is required to adjust revenue in the period the change is determined.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">When changes are required for the estimated total revenue on a contract, these changes are recognized on a cumulative catch-up basis in the current period. A significant change in one or more estimates could affect the profitability of one or more of our performance obligations. If estimates of total costs to be incurred exceed estimates of total consideration the Company expects to receive, a provision for the remaining loss on the contract is recorded in the period in which the loss becomes evident.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract acquisition costs are those incremental costs that the Company incurs to obtain a contract with a customer that it would not have incurred if the contract had not been obtained. The Company does not typically incur contract acquisition costs or contract fulfillment costs that are subject to capitalization in accordance with the guidance in Accounting Standards Codification Subtopic 340-40, “Other Assets and Deferred Costs—Contracts with Customers.”</span></p> <p id="xdx_857_zbl5ObTCXgyl" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_84B_ecustom--GovernmentContractsPolicyTextBlock_zvztXC804Jmb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_861_zIUG3LL67yak">Government Contracts</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company’s government contracts are subject to the procurement rules and regulations of the U.S. government. Many of the contract terms are dictated by these rules and regulations. Specifically, cost-based pricing is determined under the FAR, which provides guidance on the types of costs that are allowable in establishing prices for goods and services under U.S. government contracts. For example, costs such as those related to charitable contributions, advertising, interest expense, and public relations are unallowable, and therefore not recoverable through sales. During and after the fulfillment of a government contract, the Company may be audited in respect to the direct and allocated indirect costs attributable thereto. These audits may result in adjustments to the Company’s contract cost, and/or revenue.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">When contractual terms allow, the Company invoices its customers on a progress basis.</span></p> <p id="xdx_85B_zokIRZUbz5Ui" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_843_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zUchnLqHBVQg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_862_zgohtmzlF7Mh">Cash</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company maintains its cash in multiple financial institutions. The balances are insured by the Federal Deposit Insurance Corporation up to the limit of $<span id="xdx_901_eus-gaap--CashFDICInsuredAmount_iI_c20231231_zb460yFIj0rg" title="FDIC Insured balance">250,000</span>. From time to time, the Company’s balances may exceed these limits. As of December 31, 2023 and 2022, the Company had $<span id="xdx_90A_eus-gaap--CashUninsuredAmount_iI_uUSD_c20231231_zp0wx02to16l" title="Cash uninsured amount">4,943,628</span> and $<span id="xdx_905_eus-gaap--CashUninsuredAmount_iI_uUSD_c20221231_zYArtl73ysRi" title="Cash uninsured amount">3,763,608</span>, respectively, of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly credit worthy.</span></p> <p id="xdx_856_z7uCK4ROe9cg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_843_eus-gaap--TradeAndOtherAccountsReceivablePolicy_z7yUwu0XlK4c" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_865_zpFxampUX718">Allowance for Credit Losses</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company maintains an allowance for credit losses on accounts receivable and contract assets. The adequacy of the allowance is assessed quarterly through consideration of factors such as age of the receivable and identification of any anticipated collectability issues by account, if applicable. The Company writes off accounts when they are deemed to be uncollectible.</span></p> <p id="xdx_854_zkpGapbMTR89" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_84D_eus-gaap--InventoryPolicyTextBlock_zTcM8EFK5EF7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86E_zoBo3qBcpnx8">Inventory</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventories, which consist of raw materials, work in progress and finished goods, are reported at lower of cost or net realizable value using the weighted average cost method. <span style="background-color: white">The Company capitalizes labor, material, subcontractor and overhead costs as work-in-process for contracts where control has not yet passed to the customer. The Company regularly reviews inventory quantities on hand, future purchase commitments with its suppliers, and the estimated usability for its inventory. If the Company’s review indicates a reduction in usability below carrying value, it reduces its net inventory to its net realizable value.</span></span></p> <p id="xdx_85D_zvoxi4qSNWoh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_848_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_zwWdoCBaO8n" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_864_ziq4ROdRIq1h">Property and Equipment</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Property and equipment are carried at cost, net of accumulated depreciation. Depreciation is computed utilizing the straight-line method over the estimated useful life of the asset. Leasehold improvements depreciation is computed over the shorter of the lease term or estimated useful life of the asset. Additions and improvements that extend the useful lives are capitalized, while repairs and maintenance are expensed as incurred. </span></p> <p id="xdx_853_ziBThD5BUWp6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_844_eus-gaap--LesseeLeasesPolicyTextBlock_zt0Cs5yu7IYe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86B_zuS4HoomIGr6">Leases</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company leases a building and various equipment. Under ASC 842, Leases (“ASC 842”), at contract inception we determine whether the contract is or contains a lease and whether the lease should be classified as an operating or a finance lease. Operating leases are included in right-of-use (“ROU”) assets and operating lease liabilities in our consolidated balance sheets.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ROU assets represent the Company’s right to use an underlying asset during the lease term, and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. The determination of the length of lease terms is affected by options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. The existence of significant economic incentive is the primary consideration when assessing whether the Company is reasonably certain of exercising an option in a lease. ROU assets and liabilities are recognized at commencement date and measured as the present value of lease payments to be made over the lease term. As the interest rate implicit in the lease is not readily available for most of the Company’s leases, the Company uses its estimated incremental borrowing rate in determining the present value of lease payments. The estimated incremental borrowing rate is derived from information available at the lease commencement date. The lease ROU asset recognized at commencement is adjusted for any lease payments related to initial direct costs, prepayments, and lease incentives. The ROU asset is amortized on a straight-line basis generally over the shorter of the lease term or the estimated useful life of the underlying asset and interest on the lease liability.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At December 31, 2023, the Company has right of use assets and lease liabilities of $<span id="xdx_900_eus-gaap--OperatingLeaseRightOfUseAsset_iI_pp0p0_uUSD_c20231231_z8HyDuwdrHtj" title="Operating lease right-of-use assets">4,740,193</span> and $<span id="xdx_906_eus-gaap--OperatingLeaseLiability_iI_pp0p0_uUSD_c20231231_z3RWUMHAYgDi" title="Operating lease liabilities">5,099,629</span>, respectively. At December 31, 2022, the Company had right of use assets and lease liabilities of $<span id="xdx_901_eus-gaap--OperatingLeaseRightOfUseAsset_iI_pp0p0_uUSD_c20221231_zogfdjAsHXac">6,526,627</span> and $<span id="xdx_90C_eus-gaap--OperatingLeaseLiability_iI_pp0p0_uUSD_c20221231_zVMNLFl9I4pl">6,895,046</span>, respectively.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finance leases are treated as the purchase of an asset on a financing basis. Assets under finance leases, which primarily represent machinery and equipment, computer equipment, and leasehold improvements, are included in property and equipment, net, with the related liabilities included in current portion of long-term debt and long-term debt on the consolidated balance sheets.</span></p> <p id="xdx_85A_zLh438YmnDxb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_844_eus-gaap--GoodwillAndIntangibleAssetsGoodwillPolicy_zykiI1LrSLT9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86F_z5locptOjjIg">Goodwill</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill represents the excess of purchase price of an acquisition over the fair value of net assets acquired. Goodwill is not amortized but instead is assessed for impairment annually as of December 31<sup>st</sup> and when events and circumstances warrant an evaluation. The Company has determined that it has a single operating and reporting unit, and assesses during its evaluation whether it believes it is more likely than not that the fair value of this reporting unit is greater than or less than its carrying amount by comparing the fair value of this reporting unit with its carrying value. If the carrying amount of a reporting unit exceeds the reporting unit’s fair value, the amount by which the carrying value exceeds the fair value is recognized as an impairment loss. The Company performed its annual impairment assessment of goodwill as of December 31, 2023 and concluded that goodwill was not impaired. The Company assessed goodwill using qualitative factors to determine whether it was more likely than not that the fair value is less than its carrying value (step 0) and determined that no further testing was required.</span></p> <p id="xdx_854_z568oURZcfsj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p id="xdx_848_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zdw8993QCTZ7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86D_zukLwrgAuV93">Long-Lived Assets</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company reviews its long-lived assets for impairment whenever changes in circumstances indicate that the carrying amount of an asset may not be fully recoverable by comparing the estimated undiscounted cash flows expected to result from the use of the asset and the estimated amounts expected to be realized upon the asset’s eventual disposition with the carrying value of the asset. If the carrying amount of the asset exceeds the aforementioned estimated expected undiscounted cash flows and estimated expected disposition proceeds, the Company measures the amount of the impairment to record by comparing the carrying amount of the asset with its estimated fair value. As of December 31, 2023, the Company determined that long-lived assets were not impaired.</span></p> <p id="xdx_85B_zT36Tm3m73Zh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_842_eus-gaap--FairValueMeasurementPolicyPolicyTextBlock_zisFPMWgmGd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_865_z1YOyEjoCZ9b">Fair Value</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The fair value hierarchy has three levels based on the reliability of the inputs used to determine fair value. Level 1 refers to fair values determined based on quoted prices in active markets for identical assets. Level 2 refers to fair values estimated using significant other observable inputs and Level 3 includes fair values estimated using significant unobservable inputs.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At December 31, 2023 and 2022, the fair values of the Company’s current assets and current liabilities approximated their carrying values because of the short-term nature of these instruments.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The carrying value of the line of credit and long-term debt approximates fair value (level 2) as the interest rate is based on market quotes.</span></p> <p id="xdx_85E_zkr3kNAzeo6j" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_84E_eus-gaap--EarningsPerSharePolicyTextBlock_zSiGKv6KxmF8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86B_zcDOOIZr5lFd">Earnings per Share</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the treasury stock method in the calculation of earnings per share. Net income per common share is computed by dividing net income by the weighted average number of common shares outstanding during the period.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic and diluted income per common share is computed using the weighted average number of common shares outstanding. Diluted income per common share is adjusted for the incremental shares attributed to unvested RSUs. There were <span id="xdx_900_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_pp0p0_c20230101__20231231_z4ByZ2eP8iui" title="Incremental shares used in calculation of diluted income per common share">160,742</span> and <span id="xdx_908_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_pp0p0_c20220101__20221231_z3vlQ919xE65" title="Incremental shares used in calculation of diluted income per common share">0</span> incremental shares used in the calculation of diluted income per common share for the years ended December 31, 2023 and 2022, respectively.</span></p> <p id="xdx_852_zKUE2HRexBjc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p id="xdx_84E_eus-gaap--IncomeTaxPolicyTextBlock_z8fYpKL0Rtz" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86C_z8HfS7TKojAj">Income Taxes</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income taxes are accounted for under the asset and liability method whereby deferred tax assets and liabilities are recognized for future tax consequences attributable to the temporary differences between the consolidated financial statements carrying amounts of assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the period that includes the enactment date. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company recognizes the effect of an income tax position only if, based on its merits, the position is more likely than not to be sustained on audit by the taxing authorities.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.</span></p> <p id="xdx_859_zq6PSPYBiLXf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_846_eus-gaap--ShareBasedCompensationOptionAndIncentivePlansPolicy_zf2mjSAwR81c" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_864_zvWDUGXFxY6f">Stock-Based Compensation</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company accounts for stock-based compensation in accordance with ASC 718, Compensation - Stock Compensation (“ASC 718”). ASC 718 establishes accounting for stock-based awards exchanged for employee and nonemployees. Under the provisions of ASC 718, stock-based compensation cost is measured at the grant date, based on the fair value of the award on the grant date, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the equity grant).</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Restricted stock awards are granted at the discretion of the Company’s board of directors. These awards are restricted as to the transfer of ownership and generally vest over the requisite service period. The Company recognizes forfeitures at the time the forfeiture occurs.</span></p> <p id="xdx_856_zIPuWglpitj2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_845_eus-gaap--InProcessResearchAndDevelopmentPolicy_zaBrNak3U9d5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86E_zeHLDcDTk8nj">Research and Development</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Customer-funded research and development (“R&amp;D”) costs are incurred pursuant to contractual arrangements requiring us to provide a product meeting certain defined performance or other specifications, such as designs, and such contractual arrangements are accounted for principally by the over time revenue recognition method. Customer-funded R&amp;D is included in the “Revenue” and “Cost of sales” line items in our Consolidated Statements of Operations.</span></p> <p id="xdx_852_ztSRvTWX8mS5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_844_eus-gaap--PriorPeriodReclassificationAdjustmentDescription_zZBIkdTpiwn9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif"><span style="text-decoration: underline"><span id="xdx_86D_zBNMRnhCYQFk">Prior Period Reclassification</span></span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif">Certain amounts in prior periods have been reclassified to conform with current period presentation within the Consolidated Statement of Shareholder’s Equity and the Consolidated Statements of Cash Flows.</span></span></p> <p id="xdx_859_zqOlwJpIop6e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_84B_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_zIGljUJKGVP3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_862_zrm2QNmaBPl3">Recently Issued Accounting Standards</span> – Adopted</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In 2023, the Company adopted ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments (ASU 2016-13), using a modified retrospective method, which did not result in a material impact on the Company’s consolidated financial statements.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Recently Issued Accounting Standards – Not Adopted</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which focuses on the rate reconciliation and income taxes paid. ASU No. 2023-09 requires a public business entity (“PBE”) to disclose, on an annual basis, a tabular rate reconciliation using both percentages and currency amounts, broken out into specified categories with certain reconciling items further broken out by nature and jurisdiction to the extent those items exceed a specified threshold. In addition, all entities are required to disclose income taxes paid, net of refunds received disaggregated by federal, state/local, and foreign and by jurisdiction if the amount is at least 5% of total income tax payments, net of refunds received. For PBEs, the new standard is effective for annual periods beginning after December 15, 2024, with early adoption permitted. An entity may apply the amendments in this ASU prospectively by providing the revised disclosures for the period ending December 31, 2025 and continuing to provide the pre-ASU disclosures for the prior periods, or may apply the amendments retrospectively by providing the revised disclosures for all period presented. We expect this ASU to only impact our disclosures with no impacts to our results of operations, cash flows, and financial condition.</span></p> <p id="xdx_85F_zBXTtXzLVTB6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_84F_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zhyv1lS4SF1l" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_860_zChTs1TuuM6g">Basis of Presentation and Principles of Consolidation</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The accompanying consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and applicable rules and regulations of the United States Securities and Exchange Commission (“SEC”). The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated in consolidation.</span></p> <p id="xdx_842_eus-gaap--UseOfEstimates_zAQDIWvd3Pj7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86A_zLgRLFsJ3YC6">Use of Estimates</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The preparation of financial statements in conformity with U.S. GAAP requires the use of estimates by management. Actual results could differ from these estimates.</span></p> <p id="xdx_848_eus-gaap--RevenueRecognitionPolicyTextBlock_zrZ46JyflHA" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_868_znGCcm36jV37">Revenue Recognition</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company follows Accounting Standards Codification Topic 606, “Revenue from Contracts with Customers” (“ASC 606”). In accordance with ASC 606, the Company recognizes revenue when it transfers control of a promised good or service to a customer in an amount that reflects the consideration it expects to be entitled to in exchange for the good or service. The majority of the Company’s performance obligations are satisfied over-time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. Under the over-time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred and an estimate of costs to complete and resulting total estimated costs at completion.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. This is known as the over time revenue recognition model. Under the over time revenue recognition model, revenue and gross profit are recognized over the contract period as work is performed based on actual costs incurred as a percentage of total estimated costs at completion of the contract.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer; in most cases this will be based on shipping terms.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The majority of the Company’s revenues are from long-term contracts with the U.S. government and commercial contractors. The Company accounts for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. For the Company, the contract under ASC 606 is typically established upon execution of a purchase order either in accordance with a long-term customer contract or on a standalone basis.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To determine the proper revenue recognition for our contracts, we must evaluate whether two or more contracts should be combined and accounted for as a single contract, and whether the combined or single contract should be accounted for as one performance obligation or more than one performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or to separate a contract into multiple performance obligations could change the amount of revenue and profit recorded in a period. A performance obligation is a promise within a contract to transfer a distinct good or service to the customer in exchange for payment and is the unit of account for recognizing revenue. The Company’s performance obligations in its contracts with customers are typically the sale of each individual product contemplated in the contract or a single performance obligation representing a series of products when the contract contains multiple products that are substantially the same. The Company has elected to account for shipping performed after control over a product has transferred to a customer as fulfillment activities. When revenue is recognized in advance of incurring shipping costs, the costs related to the shipping are accrued. Shipping costs are included in costs of sales. The Company provides warranties on many of its products; however, since customers cannot purchase such warranties separately and they do not provide services beyond standard assurances, warranties are not separate performance obligations.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when or as the performance obligation is satisfied. For contracts with more than one performance obligation, the Company allocates the transaction price to each performance obligation based on its estimated standalone selling price. When standalone selling prices are not available, the transaction price is allocated using an expected cost plus margin approach as pricing for such contracts is typically negotiated on the basis of cost.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The contracts with the U.S. government typically are subject to the Federal Acquisition Regulation (“FAR”), which provides guidance on the types of costs that are allowable in establishing prices for goods and services provided under U.S. government contracts. The pricing for commercial contractors are based on the specific negotiations with each customer and any taxes imposed by governmental authorities are excluded from revenue. The transaction price is primarily comprised of fixed consideration as the customer typically pays a fixed fee for each product sold. The Company does not adjust the amount of revenue to be recognized under a customer contract for the effects of the time value of money when the timing difference between receipt of payment and transferring the good or service is less than one year.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The majority of the Company’s performance obligations are satisfied over time as the Company (i) sells products with no alternative use to the Company and (ii) has an enforceable right to recover costs incurred plus a reasonable profit margin for work completed to date. The Company uses the cost-to-cost input method to measure progress for its performance obligations because it best depicts the transfer of control to the customer which occurs as the Company incurs costs on its contracts.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company generally utilizes the portfolio approach to estimate the amount of revenue to recognize for its contracts and groups contracts together that have similar characteristics. Contract gross profit margins are calculated using the estimated costs for either the individual contract or the portfolio as applicable. Significant judgment is used to determine which contracts are grouped together to form a portfolio. The portfolio approach is utilized only when the result of the accounting is not expected to be materially different than if applied to individual contracts.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company’s contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new or changes the existing enforceable rights and obligations. The effect of a contract modification on the transaction price, and the measure of progress for the performance obligation to which it relates, are recognized prospectively when the remaining goods or services are distinct and on a cumulative catch-up basis when the remaining goods or services are not distinct.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company also has contracts that are considered point in time. Under the point in time revenue recognition model, revenue is recognized when control of the components has transferred to the customer.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain contracts contain forms of variable consideration, such as price discounts and performance penalties. The Company generally estimates variable consideration using the most likely amount based on an assessment of all available information (i.e., historical experience, current and forecasted performance) and only to the extent it is probable that a significant reversal of revenue recognized will not occur when the uncertainty is resolved.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In applying the cost-to-cost input method, the Company compares the actual costs incurred relative to the total estimated costs expected at completion to determine its progress towards satisfying its performance obligation and to calculate the corresponding amount of revenue to recognize. For any costs incurred that do not depict the Company’s performance in transferring control of goods or services to the customer, the Company excludes such costs from its input method measure of progress as the amounts are not reflected in the price of the contract. Costs that are inputs to the satisfaction of a performance obligation include labor, materials and subcontractors’ costs, other direct costs and an allocation of indirect costs.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes to the original estimates may be required during the life of the contract. Estimates are reviewed quarterly and the effect of any change in the total estimated costs expected at completion for a contract is reflected in revenue in the period the change becomes known. ASC 606 involves considerable use of estimates and judgment in determining revenues, costs and profits and in assigning the amounts to accounting periods. For instance, management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation, execution by our subcontractors, the availability and timing of funding from the customer, and overhead cost rates, among other variables. The Company continually evaluates all of the factors related to the assumptions, risks and uncertainties inherent with the application of the cost-to-cost input method; however, it cannot be assured that estimates will be accurate. If estimates are not accurate, or a contract is terminated which will affect estimates at completion, the Company is required to adjust revenue in the period the change is determined.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">When changes are required for the estimated total revenue on a contract, these changes are recognized on a cumulative catch-up basis in the current period. A significant change in one or more estimates could affect the profitability of one or more of our performance obligations. If estimates of total costs to be incurred exceed estimates of total consideration the Company expects to receive, a provision for the remaining loss on the contract is recorded in the period in which the loss becomes evident.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract acquisition costs are those incremental costs that the Company incurs to obtain a contract with a customer that it would not have incurred if the contract had not been obtained. The Company does not typically incur contract acquisition costs or contract fulfillment costs that are subject to capitalization in accordance with the guidance in Accounting Standards Codification Subtopic 340-40, “Other Assets and Deferred Costs—Contracts with Customers.”</span></p> <p id="xdx_84B_ecustom--GovernmentContractsPolicyTextBlock_zvztXC804Jmb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_861_zIUG3LL67yak">Government Contracts</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company’s government contracts are subject to the procurement rules and regulations of the U.S. government. Many of the contract terms are dictated by these rules and regulations. Specifically, cost-based pricing is determined under the FAR, which provides guidance on the types of costs that are allowable in establishing prices for goods and services under U.S. government contracts. For example, costs such as those related to charitable contributions, advertising, interest expense, and public relations are unallowable, and therefore not recoverable through sales. During and after the fulfillment of a government contract, the Company may be audited in respect to the direct and allocated indirect costs attributable thereto. These audits may result in adjustments to the Company’s contract cost, and/or revenue.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">When contractual terms allow, the Company invoices its customers on a progress basis.</span></p> <p id="xdx_843_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zUchnLqHBVQg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_862_zgohtmzlF7Mh">Cash</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company maintains its cash in multiple financial institutions. The balances are insured by the Federal Deposit Insurance Corporation up to the limit of $<span id="xdx_901_eus-gaap--CashFDICInsuredAmount_iI_c20231231_zb460yFIj0rg" title="FDIC Insured balance">250,000</span>. From time to time, the Company’s balances may exceed these limits. As of December 31, 2023 and 2022, the Company had $<span id="xdx_90A_eus-gaap--CashUninsuredAmount_iI_uUSD_c20231231_zp0wx02to16l" title="Cash uninsured amount">4,943,628</span> and $<span id="xdx_905_eus-gaap--CashUninsuredAmount_iI_uUSD_c20221231_zYArtl73ysRi" title="Cash uninsured amount">3,763,608</span>, respectively, of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly credit worthy.</span></p> 250000 4943628 3763608 <p id="xdx_843_eus-gaap--TradeAndOtherAccountsReceivablePolicy_z7yUwu0XlK4c" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_865_zpFxampUX718">Allowance for Credit Losses</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company maintains an allowance for credit losses on accounts receivable and contract assets. The adequacy of the allowance is assessed quarterly through consideration of factors such as age of the receivable and identification of any anticipated collectability issues by account, if applicable. The Company writes off accounts when they are deemed to be uncollectible.</span></p> <p id="xdx_84D_eus-gaap--InventoryPolicyTextBlock_zTcM8EFK5EF7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86E_zoBo3qBcpnx8">Inventory</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventories, which consist of raw materials, work in progress and finished goods, are reported at lower of cost or net realizable value using the weighted average cost method. <span style="background-color: white">The Company capitalizes labor, material, subcontractor and overhead costs as work-in-process for contracts where control has not yet passed to the customer. The Company regularly reviews inventory quantities on hand, future purchase commitments with its suppliers, and the estimated usability for its inventory. If the Company’s review indicates a reduction in usability below carrying value, it reduces its net inventory to its net realizable value.</span></span></p> <p id="xdx_848_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_zwWdoCBaO8n" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_864_ziq4ROdRIq1h">Property and Equipment</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Property and equipment are carried at cost, net of accumulated depreciation. Depreciation is computed utilizing the straight-line method over the estimated useful life of the asset. Leasehold improvements depreciation is computed over the shorter of the lease term or estimated useful life of the asset. Additions and improvements that extend the useful lives are capitalized, while repairs and maintenance are expensed as incurred. </span></p> <p id="xdx_844_eus-gaap--LesseeLeasesPolicyTextBlock_zt0Cs5yu7IYe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86B_zuS4HoomIGr6">Leases</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company leases a building and various equipment. Under ASC 842, Leases (“ASC 842”), at contract inception we determine whether the contract is or contains a lease and whether the lease should be classified as an operating or a finance lease. Operating leases are included in right-of-use (“ROU”) assets and operating lease liabilities in our consolidated balance sheets.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ROU assets represent the Company’s right to use an underlying asset during the lease term, and lease liabilities represent the Company’s obligation to make lease payments arising from the lease. The determination of the length of lease terms is affected by options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option. The existence of significant economic incentive is the primary consideration when assessing whether the Company is reasonably certain of exercising an option in a lease. ROU assets and liabilities are recognized at commencement date and measured as the present value of lease payments to be made over the lease term. As the interest rate implicit in the lease is not readily available for most of the Company’s leases, the Company uses its estimated incremental borrowing rate in determining the present value of lease payments. The estimated incremental borrowing rate is derived from information available at the lease commencement date. The lease ROU asset recognized at commencement is adjusted for any lease payments related to initial direct costs, prepayments, and lease incentives. The ROU asset is amortized on a straight-line basis generally over the shorter of the lease term or the estimated useful life of the underlying asset and interest on the lease liability.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At December 31, 2023, the Company has right of use assets and lease liabilities of $<span id="xdx_900_eus-gaap--OperatingLeaseRightOfUseAsset_iI_pp0p0_uUSD_c20231231_z8HyDuwdrHtj" title="Operating lease right-of-use assets">4,740,193</span> and $<span id="xdx_906_eus-gaap--OperatingLeaseLiability_iI_pp0p0_uUSD_c20231231_z3RWUMHAYgDi" title="Operating lease liabilities">5,099,629</span>, respectively. At December 31, 2022, the Company had right of use assets and lease liabilities of $<span id="xdx_901_eus-gaap--OperatingLeaseRightOfUseAsset_iI_pp0p0_uUSD_c20221231_zogfdjAsHXac">6,526,627</span> and $<span id="xdx_90C_eus-gaap--OperatingLeaseLiability_iI_pp0p0_uUSD_c20221231_zVMNLFl9I4pl">6,895,046</span>, respectively.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finance leases are treated as the purchase of an asset on a financing basis. Assets under finance leases, which primarily represent machinery and equipment, computer equipment, and leasehold improvements, are included in property and equipment, net, with the related liabilities included in current portion of long-term debt and long-term debt on the consolidated balance sheets.</span></p> 4740193 5099629 6526627 6895046 <p id="xdx_844_eus-gaap--GoodwillAndIntangibleAssetsGoodwillPolicy_zykiI1LrSLT9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86F_z5locptOjjIg">Goodwill</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill represents the excess of purchase price of an acquisition over the fair value of net assets acquired. Goodwill is not amortized but instead is assessed for impairment annually as of December 31<sup>st</sup> and when events and circumstances warrant an evaluation. The Company has determined that it has a single operating and reporting unit, and assesses during its evaluation whether it believes it is more likely than not that the fair value of this reporting unit is greater than or less than its carrying amount by comparing the fair value of this reporting unit with its carrying value. If the carrying amount of a reporting unit exceeds the reporting unit’s fair value, the amount by which the carrying value exceeds the fair value is recognized as an impairment loss. The Company performed its annual impairment assessment of goodwill as of December 31, 2023 and concluded that goodwill was not impaired. The Company assessed goodwill using qualitative factors to determine whether it was more likely than not that the fair value is less than its carrying value (step 0) and determined that no further testing was required.</span></p> <p id="xdx_848_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zdw8993QCTZ7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86D_zukLwrgAuV93">Long-Lived Assets</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company reviews its long-lived assets for impairment whenever changes in circumstances indicate that the carrying amount of an asset may not be fully recoverable by comparing the estimated undiscounted cash flows expected to result from the use of the asset and the estimated amounts expected to be realized upon the asset’s eventual disposition with the carrying value of the asset. If the carrying amount of the asset exceeds the aforementioned estimated expected undiscounted cash flows and estimated expected disposition proceeds, the Company measures the amount of the impairment to record by comparing the carrying amount of the asset with its estimated fair value. As of December 31, 2023, the Company determined that long-lived assets were not impaired.</span></p> <p id="xdx_842_eus-gaap--FairValueMeasurementPolicyPolicyTextBlock_zisFPMWgmGd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_865_z1YOyEjoCZ9b">Fair Value</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The fair value hierarchy has three levels based on the reliability of the inputs used to determine fair value. Level 1 refers to fair values determined based on quoted prices in active markets for identical assets. Level 2 refers to fair values estimated using significant other observable inputs and Level 3 includes fair values estimated using significant unobservable inputs.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At December 31, 2023 and 2022, the fair values of the Company’s current assets and current liabilities approximated their carrying values because of the short-term nature of these instruments.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The carrying value of the line of credit and long-term debt approximates fair value (level 2) as the interest rate is based on market quotes.</span></p> <p id="xdx_84E_eus-gaap--EarningsPerSharePolicyTextBlock_zSiGKv6KxmF8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86B_zcDOOIZr5lFd">Earnings per Share</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the treasury stock method in the calculation of earnings per share. Net income per common share is computed by dividing net income by the weighted average number of common shares outstanding during the period.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic and diluted income per common share is computed using the weighted average number of common shares outstanding. Diluted income per common share is adjusted for the incremental shares attributed to unvested RSUs. There were <span id="xdx_900_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_pp0p0_c20230101__20231231_z4ByZ2eP8iui" title="Incremental shares used in calculation of diluted income per common share">160,742</span> and <span id="xdx_908_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_pp0p0_c20220101__20221231_z3vlQ919xE65" title="Incremental shares used in calculation of diluted income per common share">0</span> incremental shares used in the calculation of diluted income per common share for the years ended December 31, 2023 and 2022, respectively.</span></p> 160742 0 <p id="xdx_84E_eus-gaap--IncomeTaxPolicyTextBlock_z8fYpKL0Rtz" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86C_z8HfS7TKojAj">Income Taxes</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income taxes are accounted for under the asset and liability method whereby deferred tax assets and liabilities are recognized for future tax consequences attributable to the temporary differences between the consolidated financial statements carrying amounts of assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the period that includes the enactment date. Deferred tax assets are reduced by a valuation allowance when, in the opinion of management, it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company recognizes the effect of an income tax position only if, based on its merits, the position is more likely than not to be sustained on audit by the taxing authorities.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.</span></p> <p id="xdx_846_eus-gaap--ShareBasedCompensationOptionAndIncentivePlansPolicy_zf2mjSAwR81c" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_864_zvWDUGXFxY6f">Stock-Based Compensation</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company accounts for stock-based compensation in accordance with ASC 718, Compensation - Stock Compensation (“ASC 718”). ASC 718 establishes accounting for stock-based awards exchanged for employee and nonemployees. Under the provisions of ASC 718, stock-based compensation cost is measured at the grant date, based on the fair value of the award on the grant date, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the equity grant).</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Restricted stock awards are granted at the discretion of the Company’s board of directors. These awards are restricted as to the transfer of ownership and generally vest over the requisite service period. The Company recognizes forfeitures at the time the forfeiture occurs.</span></p> <p id="xdx_845_eus-gaap--InProcessResearchAndDevelopmentPolicy_zaBrNak3U9d5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_86E_zeHLDcDTk8nj">Research and Development</span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Customer-funded research and development (“R&amp;D”) costs are incurred pursuant to contractual arrangements requiring us to provide a product meeting certain defined performance or other specifications, such as designs, and such contractual arrangements are accounted for principally by the over time revenue recognition method. Customer-funded R&amp;D is included in the “Revenue” and “Cost of sales” line items in our Consolidated Statements of Operations.</span></p> <p id="xdx_844_eus-gaap--PriorPeriodReclassificationAdjustmentDescription_zZBIkdTpiwn9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif"><span style="text-decoration: underline"><span id="xdx_86D_zBNMRnhCYQFk">Prior Period Reclassification</span></span></span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif">Certain amounts in prior periods have been reclassified to conform with current period presentation within the Consolidated Statement of Shareholder’s Equity and the Consolidated Statements of Cash Flows.</span></span></p> <p id="xdx_84B_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_zIGljUJKGVP3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline"><span id="xdx_862_zrm2QNmaBPl3">Recently Issued Accounting Standards</span> – Adopted</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In 2023, the Company adopted ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments (ASU 2016-13), using a modified retrospective method, which did not result in a material impact on the Company’s consolidated financial statements.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Recently Issued Accounting Standards – Not Adopted</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which focuses on the rate reconciliation and income taxes paid. ASU No. 2023-09 requires a public business entity (“PBE”) to disclose, on an annual basis, a tabular rate reconciliation using both percentages and currency amounts, broken out into specified categories with certain reconciling items further broken out by nature and jurisdiction to the extent those items exceed a specified threshold. In addition, all entities are required to disclose income taxes paid, net of refunds received disaggregated by federal, state/local, and foreign and by jurisdiction if the amount is at least 5% of total income tax payments, net of refunds received. For PBEs, the new standard is effective for annual periods beginning after December 15, 2024, with early adoption permitted. An entity may apply the amendments in this ASU prospectively by providing the revised disclosures for the period ending December 31, 2025 and continuing to provide the pre-ASU disclosures for the prior periods, or may apply the amendments retrospectively by providing the revised disclosures for all period presented. We expect this ASU to only impact our disclosures with no impacts to our results of operations, cash flows, and financial condition.</span></p> <p id="xdx_803_eus-gaap--RevenueFromContractWithCustomerTextBlock_z29rkYJY5Yui" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2.</b></span></td><td id="xdx_826_zYaBnx6nLXv1" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>REVENUE</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Disaggregation of Revenue</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_894_eus-gaap--DisaggregationOfRevenueTableTextBlock_zTDlXGL6l878" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">Year Ended</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31,<br/> 2023</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; text-align: left">Government subcontracts</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_983_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__srt--ProductOrServiceAxis__custom--GovernmentSubcontractsMember_zm1TCQG7akDl" style="width: 12%; text-align: right" title="Revenue">69,672,602</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__srt--ProductOrServiceAxis__custom--GovernmentSubcontractsMember_zdcVQRrBTn7b" style="width: 12%; text-align: right" title="Revenue">69,023,729</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Prime government contracts</td><td> </td> <td style="text-align: left"> </td><td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__srt--ProductOrServiceAxis__custom--PrimeGovernmentContractsMember_zTC12iTeEFyi" style="text-align: right" title="Revenue">11,842,145</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__srt--ProductOrServiceAxis__custom--PrimeGovernmentContractsMember_zfojcfQ79Jgf" style="text-align: right" title="Revenue">8,663,308</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt">Commercial contracts</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_983_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__srt--ProductOrServiceAxis__custom--CommercialContractsMember_zFFlAWn6pZOi" style="border-bottom: Black 1pt solid; text-align: right" title="Revenue">4,951,574</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__srt--ProductOrServiceAxis__custom--CommercialContractsMember_zO95P8qUH9E2" style="border-bottom: Black 1pt solid; text-align: right" title="Revenue">5,648,727</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-weight: bold; padding-bottom: 2.5pt; padding-left: 9pt">Total</td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231_z13w3Y5NXVRd" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">86,466,321</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_98A_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231_zffh21pcGsRb" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">83,335,764</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td></tr> </table> <p style="margin-top: 0; margin-bottom: 0"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">Year Ended</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31, 2023</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31, 2022</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; text-align: left">Revenue recognized using over time revenue recognition model</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zHtKTeDKDQNi" style="width: 12%; text-align: right">82,713,436</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zSqDpCpZRYR6" style="width: 12%; text-align: right">75,911,241</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">Revenue recognized using point in time revenue recognition model</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zVDTW8QU32wa" style="border-bottom: Black 1pt solid; text-align: right">3,752,885</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_983_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zCPgnCPjiC81" style="border-bottom: Black 1pt solid; text-align: right">7,424,523</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold; padding-bottom: 2.5pt; padding-left: 9pt">Total</td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231_z3mONwIIlC41" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">86,466,321</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231_zkDamK7XJk0e" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">83,335,764</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td></tr> </table> <p id="xdx_8AF_zQdFLXpzEcFc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Favorable/(Unfavorable) Adjustments to Gross Profit </i></b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We review our Estimates at Completion (“EAC”) at least quarterly. Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many inputs, and requires significant judgment by management on a contract-by-contract basis. As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule, identified risks and opportunities, and the related changes in estimates of revenues and costs. The risks and opportunities relate to management’s judgment about the ability and cost to achieve the schedule, consideration of customer-directed delays or reductions in scheduled deliveries, technical requirements, customer activity levels, and related variable consideration. Management must make assumptions and estimates regarding contract revenue and costs, including estimates of labor productivity and availability, the complexity and scope of the work to be performed, the availability and cost of materials including any impact from changing costs or inflation, the length of time to complete the performance obligation, the availability and timing of funding from our customer, and overhead cost rates, among others.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes in estimates of net sales, cost of sales, and the related impact to operating profit on contracts recognized over time are recognized on a cumulative catch-up basis, which recognizes the cumulative effect of the profit changes on current and prior periods based on a performance obligation’s percentage-of-completion in the current period. A significant change in one or more of these estimates could affect the profitability of one or more of our performance obligations. Our EAC adjustments also include the establishment of, and changes to, loss provisions for our contracts accounted for on a percentage-of-completion basis.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_899_ecustom--ScheduleOfEstimatesAtCompletionAdjustmentsTableTextBlock_zDVpIMh9PUOf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_znv435LTM5bi">Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">Years Ended</td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom"><span style="font: 10pt Times New Roman, Times, Serif"><b>December 31, </b></span><span style="font-size: 10pt"><br/> <span style="font-family: Times New Roman, Times, Serif"><b>2023</b></span></span></td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom"><span style="font: 10pt Times New Roman, Times, Serif"><b>December 31,</b></span><span style="font-size: 10pt"><br/> <span style="font-family: Times New Roman, Times, Serif"><b>2022</b></span></span></td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 24%; text-align: justify">Favorable adjustments</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_984_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20230101__20231231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--FavorableAdjustmentMember_zH8quYyWkIZ2" style="width: 10%; text-align: right" title="Favorable adjustments">2,601,615</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20220101__20221231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--FavorableAdjustmentMember_zIt5hE8W8Qpc" style="width: 10%; text-align: right">4,962,675</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 1pt">(Unfavorable) adjustments</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_985_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20230101__20231231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--UnfavorableAdjustmentMember_zVHud7qe73pj" style="border-bottom: Black 1pt solid; text-align: right" title="Unfavorable adjustments">(4,052,117</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_983_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20220101__20221231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--UnfavorableAdjustmentMember_zwOLupb9USmk" style="border-bottom: Black 1pt solid; text-align: right" title="Unfavorable adjustments">(3,207,099</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 2.5pt">Net adjustments</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_989_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20230101__20231231_zlaS8edmCBQl" style="border-bottom: Black 2.5pt double; text-align: right" title="Net adjustments">(1,450,502</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20220101__20221231_zkmA2dhe3189" style="border-bottom: Black 2.5pt double; text-align: right" title="Net adjustments">1,755,576</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8A0_zOIv9vrAhTB4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Favorable adjustments during the year ended December 31, 2023 included the NGC E-2D MY2 Outer Wing Panel (“OWP”) and NGC E-2D Wet Outer Wing Panel programs. Unfavorable adjustments during the year ended December 31, 2023 included the Boeing A-10 and Embraer Phenom 300 programs. Favorable adjustments during the year ended December 31, 2022 included the Raytheon NGJ Pods/AMS and Lockheed Margin F-16 Rudder Island programs. Unfavorable adjustments during the year ended December 31, 2022 included the NGC E-2D MY2 OWP and Embraer Phenom 300 programs.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Transaction Price Allocated to Remaining Performance Obligations</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2023, the aggregate amount of transaction price allocated to the remaining performance obligations was approximately $<span id="xdx_90F_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20231231_z9kltzaj7ZXd" title="Remaining performance obligations">118.2</span> million. This represents the amount of revenue the Company expects to recognize in the future on contracts with unsatisfied or partially satisfied performance obligations as of December 31, 2023.</span></p> <p id="xdx_894_eus-gaap--DisaggregationOfRevenueTableTextBlock_zTDlXGL6l878" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following table presents the Company’s revenue disaggregated by contract type and revenue recognition method:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">Year Ended</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31,<br/> 2023</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; text-align: left">Government subcontracts</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_983_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__srt--ProductOrServiceAxis__custom--GovernmentSubcontractsMember_zm1TCQG7akDl" style="width: 12%; text-align: right" title="Revenue">69,672,602</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__srt--ProductOrServiceAxis__custom--GovernmentSubcontractsMember_zdcVQRrBTn7b" style="width: 12%; text-align: right" title="Revenue">69,023,729</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Prime government contracts</td><td> </td> <td style="text-align: left"> </td><td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__srt--ProductOrServiceAxis__custom--PrimeGovernmentContractsMember_zTC12iTeEFyi" style="text-align: right" title="Revenue">11,842,145</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__srt--ProductOrServiceAxis__custom--PrimeGovernmentContractsMember_zfojcfQ79Jgf" style="text-align: right" title="Revenue">8,663,308</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt">Commercial contracts</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_983_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__srt--ProductOrServiceAxis__custom--CommercialContractsMember_zFFlAWn6pZOi" style="border-bottom: Black 1pt solid; text-align: right" title="Revenue">4,951,574</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__srt--ProductOrServiceAxis__custom--CommercialContractsMember_zO95P8qUH9E2" style="border-bottom: Black 1pt solid; text-align: right" title="Revenue">5,648,727</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-weight: bold; padding-bottom: 2.5pt; padding-left: 9pt">Total</td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231_z13w3Y5NXVRd" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">86,466,321</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_98A_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231_zffh21pcGsRb" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">83,335,764</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td></tr> </table> <p style="margin-top: 0; margin-bottom: 0"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">Year Ended</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31, 2023</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td><td style="font-weight: bold; padding-bottom: 1pt; text-align: center; vertical-align: bottom"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">December 31, 2022</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: center; vertical-align: bottom"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; text-align: left">Revenue recognized using over time revenue recognition model</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zHtKTeDKDQNi" style="width: 12%; text-align: right">82,713,436</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zSqDpCpZRYR6" style="width: 12%; text-align: right">75,911,241</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">Revenue recognized using point in time revenue recognition model</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zVDTW8QU32wa" style="border-bottom: Black 1pt solid; text-align: right">3,752,885</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_983_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zCPgnCPjiC81" style="border-bottom: Black 1pt solid; text-align: right">7,424,523</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold; padding-bottom: 2.5pt; padding-left: 9pt">Total</td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20231231_z3mONwIIlC41" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">86,466,321</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td><td style="font-weight: bold; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20221231_zkDamK7XJk0e" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">83,335,764</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"> </td></tr> </table> 69672602 69023729 11842145 8663308 4951574 5648727 86466321 83335764 82713436 75911241 3752885 7424523 86466321 83335764 <p id="xdx_899_ecustom--ScheduleOfEstimatesAtCompletionAdjustmentsTableTextBlock_zDVpIMh9PUOf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_znv435LTM5bi">Net EAC adjustments had the following impact on our gross profit during the years ended December 31, 2023 and 2022:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom">Years Ended</td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom"><span style="font: 10pt Times New Roman, Times, Serif"><b>December 31, </b></span><span style="font-size: 10pt"><br/> <span style="font-family: Times New Roman, Times, Serif"><b>2023</b></span></span></td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center; vertical-align: bottom"><span style="font: 10pt Times New Roman, Times, Serif"><b>December 31,</b></span><span style="font-size: 10pt"><br/> <span style="font-family: Times New Roman, Times, Serif"><b>2022</b></span></span></td><td style="font-weight: bold; text-align: center; vertical-align: bottom; padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 24%; text-align: justify">Favorable adjustments</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_984_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20230101__20231231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--FavorableAdjustmentMember_zH8quYyWkIZ2" style="width: 10%; text-align: right" title="Favorable adjustments">2,601,615</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20220101__20221231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--FavorableAdjustmentMember_zIt5hE8W8Qpc" style="width: 10%; text-align: right">4,962,675</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 1pt">(Unfavorable) adjustments</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_985_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20230101__20231231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--UnfavorableAdjustmentMember_zVHud7qe73pj" style="border-bottom: Black 1pt solid; text-align: right" title="Unfavorable adjustments">(4,052,117</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_983_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20220101__20221231__srt--CumulativeEffectPeriodOfAdoptionAxis__custom--UnfavorableAdjustmentMember_zwOLupb9USmk" style="border-bottom: Black 1pt solid; text-align: right" title="Unfavorable adjustments">(3,207,099</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 2.5pt">Net adjustments</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_989_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20230101__20231231_zlaS8edmCBQl" style="border-bottom: Black 2.5pt double; text-align: right" title="Net adjustments">(1,450,502</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_ecustom--EstimatesAtCompletionAdjustmentToGrossProfit_c20220101__20221231_zkmA2dhe3189" style="border-bottom: Black 2.5pt double; text-align: right" title="Net adjustments">1,755,576</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 2601615 4962675 -4052117 -3207099 -1450502 1755576 118200000 <p id="xdx_809_ecustom--ContractWithCustomerAssetAndLiabilityTextBlock_zaISaaixXfl5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>3.</b></span></td><td id="xdx_82A_zcjyCr4xznzf" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CONTRACT ASSETS AND LIABILITIES</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract assets represent revenue recognized on contracts in excess of amounts invoiced to the customer and the Company’s right to consideration is conditional on something other than the passage of time. Amounts may not exceed their net realizable value. Under the typical payment terms of our government contracts, the customer retains a portion of the contract price until completion of the contract, as a measure of protection for the customer. Our government contracts therefore typically result in revenue recognized in excess of billings, which we present as contract assets. Contract assets are classified as current assets. The Company’s contract liabilities represent customer payments received or due from the customer in excess of revenue recognized. Contract liabilities are classified as current liabilities. </span></p> <p id="xdx_892_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zI5S5NEjSMbf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <span id="xdx_8B0_zJ3IBzdsBbU1" style="display: none; visibility: hidden">Schedule of contract assets and liabilities</span></span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 60%; margin-right: auto"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_495_20231231_zT2FFi7pG7n3" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <b>2023</b></span></p></td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49C_20221231_zxPxo3vwKL0j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td id="xdx_490_20211231_zUmTmBdqFEl8" style="border-bottom: Black 1pt solid; text-align: center"><b>December 31,<br/> 2021</b></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerAssetNet_iI_maNCAz5zf_zzGFevkfHIk" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 45%; text-align: left">Contract assets</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">35,312,068</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">27,384,540</td><td style="width: 1%; text-align: left"> </td> <td style="text-align: right; width: 16%">24,459,339</td> <td style="width: 1%"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td> <td> </td> <td> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerLiability_iI_msNCAz5zf_znCiFOORIE6h" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Contract liabilities</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">5,937,629</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">6,001,726</td><td style="text-align: left"> </td> <td style="text-align: right">5,122,766</td> <td> </td></tr> </table> <p id="xdx_8A9_zt2IkbPrTgsh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract assets at December 31, 2023 increased $<span id="xdx_903_ecustom--IncreaseDecreaseInContractAsset_c20230101__20231231_zC9woRrUqroa" title="Increase in contract assets">7,927,528</span> from December 31, 2022 due to the recognition of revenue during 2023 upon the satisfaction or partial satisfaction of performance obligations for which we had not yet billed our customers as of December 31, 2023, primarily on our T-38 Pacer Classic program, our Lockheed Martin F-16 Rudder Island program and our NGC E-2D Advanced Hawkeye OWP program.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract liabilities decreased $<span id="xdx_900_ecustom--IncreaseDecreaseInContractLiability_iN_di_c20230101__20231231_zOjjBtI46oW3" title="Decrease in contract liabilities">64,097</span> during 2023, primarily due to revenue recognized on these performance obligations in excess of payments received.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Revenue recognized for the year ended December 31, 2023, that was included in the contract liabilities balances as of January 1, 2023 was $<span id="xdx_905_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_c20230101__20231231_zzMmbMAOKWik" title="Revenue recognized that was included in contract liabilities">3,816,336</span>. Revenue recognized for the year ended December 31, 2022, that was included in the contract liabilities balances as of January 1, 2022 was $<span id="xdx_900_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_c20220101__20221231_zBqKhX2l3IXk" title="Revenue recognized that was included in contract liabilities">3,598,601</span>.</span></p> <p id="xdx_892_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zI5S5NEjSMbf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <span id="xdx_8B0_zJ3IBzdsBbU1" style="display: none; visibility: hidden">Schedule of contract assets and liabilities</span></span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 60%; margin-right: auto"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_495_20231231_zT2FFi7pG7n3" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <b>2023</b></span></p></td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49C_20221231_zxPxo3vwKL0j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td id="xdx_490_20211231_zUmTmBdqFEl8" style="border-bottom: Black 1pt solid; text-align: center"><b>December 31,<br/> 2021</b></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerAssetNet_iI_maNCAz5zf_zzGFevkfHIk" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 45%; text-align: left">Contract assets</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">35,312,068</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">27,384,540</td><td style="width: 1%; text-align: left"> </td> <td style="text-align: right; width: 16%">24,459,339</td> <td style="width: 1%"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td> <td> </td> <td> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerLiability_iI_msNCAz5zf_znCiFOORIE6h" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Contract liabilities</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">5,937,629</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">6,001,726</td><td style="text-align: left"> </td> <td style="text-align: right">5,122,766</td> <td> </td></tr> </table> 35312068 27384540 24459339 5937629 6001726 5122766 7927528 -64097 3816336 3598601 <p id="xdx_807_eus-gaap--LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_zNMqTFbrnz2a" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>4.</b></span></td><td id="xdx_825_zcRlTteyySn3" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>ACCOUNTS RECEIVABLE</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_89E_eus-gaap--ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_zKRW3LExqXpa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zqdS00qzfPP7">Accounts receivable consists of trade receivables as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 48%"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_495_20231231_zdCiy8p9adDc" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <b>2023</b></span></p></td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49B_20221231_zwLFpJcWbFz" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_40F_eus-gaap--AccountsReceivableGrossCurrent_iI_maARNCzNs5_zs0HNFlSWY52" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 22%; text-align: left">Billed receivables</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">4,444,504</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">5,139,757</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_406_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iNI_di_msARNCzNs5_zY2ygfVPMTJd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt; text-indent: -3pt; padding-left: 3pt">Less: allowance for expected credit losses</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(92,308</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(281,985</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr id="xdx_405_eus-gaap--AccountsReceivableNetCurrent_iTI_mtARNCzNs5_zOZsTWWGmn79" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 2.5pt; text-indent: -8.65pt; padding-left: 17.3pt">   Total accounts receivable, net</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">4,352,196</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">4,857,772</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8A3_zea13iH3h5nh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"> </p> <p id="xdx_89E_eus-gaap--ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_zKRW3LExqXpa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zqdS00qzfPP7">Accounts receivable consists of trade receivables as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 48%"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_495_20231231_zdCiy8p9adDc" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <b>2023</b></span></p></td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49B_20221231_zwLFpJcWbFz" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_40F_eus-gaap--AccountsReceivableGrossCurrent_iI_maARNCzNs5_zs0HNFlSWY52" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 22%; text-align: left">Billed receivables</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">4,444,504</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">5,139,757</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_406_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iNI_di_msARNCzNs5_zY2ygfVPMTJd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt; text-indent: -3pt; padding-left: 3pt">Less: allowance for expected credit losses</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(92,308</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(281,985</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr id="xdx_405_eus-gaap--AccountsReceivableNetCurrent_iTI_mtARNCzNs5_zOZsTWWGmn79" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 2.5pt; text-indent: -8.65pt; padding-left: 17.3pt">   Total accounts receivable, net</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">4,352,196</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">4,857,772</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 4444504 5139757 92308 281985 4352196 4857772 <p id="xdx_803_eus-gaap--InventoryDisclosureTextBlock_zsdI8yWZblyh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>5.</b></span></td><td id="xdx_828_zqhfZpe0hes5" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>INVENTORY</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_893_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zTkE4rfoY4qk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zspOeS8CbNr6">The components of inventory consist of the following:</span> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: center"> </td> <td id="xdx_499_20231231_zVEXKWDzymyc" style="font-weight: bold; text-align: center"> </td> <td style="font-weight: bold; text-align: center"> </td> <td style="font-weight: bold; text-align: center"> </td> <td colspan="2" id="xdx_49F_20221231_ze6JDoNTlib3" style="font-weight: bold; text-align: center"> </td><td style="font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt; text-align: justify"> </td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="font-weight: bold; padding-bottom: 1pt"> </td></tr> <tr id="xdx_40E_eus-gaap--InventoryRawMaterials_iI_maIGzpSz_zBfWX467J3j4" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: justify">Raw materials</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">1,187,008</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">1,892,157</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_40C_eus-gaap--InventoryWorkInProcess_iI_maIGzpSz_zmDLaHumpJTj" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-left: 0in">Work in progress</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">75,795</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">685,438</td><td style="text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--InventoryFinishedGoods_iI_maIGzpSz_zWNn17AHxTea" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt; padding-left: 0in">Finished goods (Includes completed components)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,617,077</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">3,038,859</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40A_eus-gaap--InventoryGross_iTI_mtIGzpSz_maINzM3w_zdUw82zmUDC7" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 1pt; padding-left: 0in">       Gross inventory</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">2,879,879</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">5,616,454</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--InventoryValuationReserves_iNI_di_msINzM3w_z0KQ3O5YqQua" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt; padding-left: 0in">       Inventory reserves</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(1,443,233</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(3,123,386</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr id="xdx_408_eus-gaap--InventoryNet_iTI_mtINzM3w_zeF8QQbkp8l8" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 2.5pt; padding-left: 0in">       Inventory, net</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,436,647</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,493,069</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8AA_zNdmxmsMRQu5" style="margin-top: 0; margin-bottom: 0"> </p> <p id="xdx_893_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zTkE4rfoY4qk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zspOeS8CbNr6">The components of inventory consist of the following:</span> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: center"> </td> <td id="xdx_499_20231231_zVEXKWDzymyc" style="font-weight: bold; text-align: center"> </td> <td style="font-weight: bold; text-align: center"> </td> <td style="font-weight: bold; text-align: center"> </td> <td colspan="2" id="xdx_49F_20221231_ze6JDoNTlib3" style="font-weight: bold; text-align: center"> </td><td style="font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt; text-align: justify"> </td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="font-weight: bold; padding-bottom: 1pt"> </td></tr> <tr id="xdx_40E_eus-gaap--InventoryRawMaterials_iI_maIGzpSz_zBfWX467J3j4" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: justify">Raw materials</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">1,187,008</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">1,892,157</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_40C_eus-gaap--InventoryWorkInProcess_iI_maIGzpSz_zmDLaHumpJTj" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-left: 0in">Work in progress</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">75,795</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">685,438</td><td style="text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--InventoryFinishedGoods_iI_maIGzpSz_zWNn17AHxTea" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt; padding-left: 0in">Finished goods (Includes completed components)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,617,077</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">3,038,859</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40A_eus-gaap--InventoryGross_iTI_mtIGzpSz_maINzM3w_zdUw82zmUDC7" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 1pt; padding-left: 0in">       Gross inventory</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">2,879,879</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">5,616,454</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--InventoryValuationReserves_iNI_di_msINzM3w_z0KQ3O5YqQua" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt; padding-left: 0in">       Inventory reserves</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(1,443,233</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(3,123,386</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr id="xdx_408_eus-gaap--InventoryNet_iTI_mtINzM3w_zeF8QQbkp8l8" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 2.5pt; padding-left: 0in">       Inventory, net</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,436,647</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,493,069</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 1187008 1892157 75795 685438 1617077 3038859 2879879 5616454 1443233 3123386 1436647 2493069 <p id="xdx_80F_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_z4gTb2Fi03wd" style="margin-top: 0; margin-bottom: 0"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>6.</b></span></td><td id="xdx_82D_zVOzoHMp4lpf" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>PROPERTY AND EQUIPMENT</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"> </p> <p id="xdx_890_eus-gaap--PropertyPlantAndEquipmentTextBlock_zoE8vCu1Nhh4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_z4UdlkcoN4ih">The components of property and equipment consist of the following:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt"> </td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">Estimated</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Useful Life (years)</td><td style="font-weight: bold; padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 57%; text-align: left">Machinery and equipment</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z1WRseQl8oHd" style="width: 10%; text-align: right">4,004,779</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zvMhCGjWXQYb" style="width: 10%; text-align: right">3,978,662</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 15%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90A_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember__srt--RangeAxis__srt--MinimumMember_zBAOyMDyarvk">5</span> to <span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember__srt--RangeAxis__srt--MaximumMember_z0Rn9xTA2QHc">7</span></span></td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Computer equipment</td><td> </td> <td style="text-align: left"> </td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zTNRhjnN0t52" style="text-align: right">4,242,437</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zF59nrhSpOgd" style="text-align: right">4,191,040</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"><span id="xdx_906_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_znjuZi55b0F6">5</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Furniture and fixtures</td><td> </td> <td style="text-align: left"> </td><td id="xdx_987_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zDURLOelPJHj" style="text-align: right">709,350</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zpNYTUHEAJKj" style="text-align: right">709,350</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"><span id="xdx_904_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zhcGdSgfneij">7</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Automobiles and trucks</td><td> </td> <td style="text-align: left"> </td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--VehiclesMember_z4z15SLaq5E5" style="text-align: right">13,162</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--VehiclesMember_zIQMkVb6OWn" style="text-align: right">13,162</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"><span id="xdx_908_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--VehiclesMember_zmxcIzmfqW82">5</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Leasehold improvements</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zfLncIY3dUob" style="border-bottom: Black 1pt solid; text-align: right">2,692,552</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zQSMcv6VuLW4" style="border-bottom: Black 1pt solid; text-align: right">2,629,615</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> Lesser of lease term or <span id="xdx_90A_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z9SBBhBo88be" title="Estimated useful life">10</span> years</span></td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-left: 9pt">Total gross property and equipment</td><td> </td> <td style="text-align: left"> </td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_maPPE_c20231231_zVKfEehbx7hk" style="text-align: right">11,662,280</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231_zSLdpzlMuIQa" style="text-align: right">11,521,829</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Less accumulated depreciation and amortization</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_msPPE_c20231231_zdMjvUNVdRs6" style="border-bottom: Black 1pt solid; text-align: right" title="Less accumulated depreciation and amortization">(10,868,224</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_c20221231_zn2NjlbEMFUi" style="border-bottom: Black 1pt solid; text-align: right" title="Less accumulated depreciation and amortization">(10,397,273</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="text-align: center"> </td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 9pt">Total property and equipment, net</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentNet_iTI_mtPPE_c20231231_zsA6ee3zOYml" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">794,056</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentNet_iTI_c20221231_z0ck1zKoPxS4" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">1,124,556</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="text-align: center"> </td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8A8_zgeuZs7mqaPl" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Depreciation expense for the years ended December 31, 2023 and 2022 was $<span id="xdx_906_eus-gaap--Depreciation_c20230101__20231231__us-gaap--FairValueByAssetClassAxis__us-gaap--PropertyPlantAndEquipmentMember_zMeK5akvlUS8" title="Depreciation expenses">470,950</span> and $<span id="xdx_904_eus-gaap--Depreciation_c20220101__20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--PropertyPlantAndEquipmentMember_zx1g2RpexMb">563,096</span>, respectively.</span></p> <p id="xdx_890_eus-gaap--PropertyPlantAndEquipmentTextBlock_zoE8vCu1Nhh4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_z4UdlkcoN4ih">The components of property and equipment consist of the following:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt"> </td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">Estimated</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Useful Life (years)</td><td style="font-weight: bold; padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 57%; text-align: left">Machinery and equipment</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z1WRseQl8oHd" style="width: 10%; text-align: right">4,004,779</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zvMhCGjWXQYb" style="width: 10%; text-align: right">3,978,662</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 15%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90A_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember__srt--RangeAxis__srt--MinimumMember_zBAOyMDyarvk">5</span> to <span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember__srt--RangeAxis__srt--MaximumMember_z0Rn9xTA2QHc">7</span></span></td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Computer equipment</td><td> </td> <td style="text-align: left"> </td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zTNRhjnN0t52" style="text-align: right">4,242,437</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zF59nrhSpOgd" style="text-align: right">4,191,040</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"><span id="xdx_906_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_znjuZi55b0F6">5</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Furniture and fixtures</td><td> </td> <td style="text-align: left"> </td><td id="xdx_987_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zDURLOelPJHj" style="text-align: right">709,350</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zpNYTUHEAJKj" style="text-align: right">709,350</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"><span id="xdx_904_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--FurnitureAndFixturesMember_zhcGdSgfneij">7</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Automobiles and trucks</td><td> </td> <td style="text-align: left"> </td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--VehiclesMember_z4z15SLaq5E5" style="text-align: right">13,162</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_985_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--VehiclesMember_zIQMkVb6OWn" style="text-align: right">13,162</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"><span id="xdx_908_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--VehiclesMember_zmxcIzmfqW82">5</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Leasehold improvements</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zfLncIY3dUob" style="border-bottom: Black 1pt solid; text-align: right">2,692,552</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zQSMcv6VuLW4" style="border-bottom: Black 1pt solid; text-align: right">2,629,615</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> Lesser of lease term or <span id="xdx_90A_eus-gaap--PropertyPlantAndEquipmentUsefulLife_iI_dtY_c20231231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z9SBBhBo88be" title="Estimated useful life">10</span> years</span></td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-left: 9pt">Total gross property and equipment</td><td> </td> <td style="text-align: left"> </td><td id="xdx_98A_eus-gaap--PropertyPlantAndEquipmentGross_iI_maPPE_c20231231_zVKfEehbx7hk" style="text-align: right">11,662,280</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231_zSLdpzlMuIQa" style="text-align: right">11,521,829</td><td style="text-align: left"> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Less accumulated depreciation and amortization</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_985_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_msPPE_c20231231_zdMjvUNVdRs6" style="border-bottom: Black 1pt solid; text-align: right" title="Less accumulated depreciation and amortization">(10,868,224</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_98B_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_c20221231_zn2NjlbEMFUi" style="border-bottom: Black 1pt solid; text-align: right" title="Less accumulated depreciation and amortization">(10,397,273</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="text-align: center"> </td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 9pt">Total property and equipment, net</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentNet_iTI_mtPPE_c20231231_zsA6ee3zOYml" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">794,056</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--PropertyPlantAndEquipmentNet_iTI_c20221231_z0ck1zKoPxS4" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">1,124,556</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="text-align: center"> </td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 4004779 3978662 P5Y P7Y 4242437 4191040 P5Y 709350 709350 P7Y 13162 13162 P5Y 2692552 2629615 P10Y 11662280 11521829 10868224 10397273 794056 1124556 470950 563096 <p id="xdx_804_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zI5G3Gi6hAI3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>7.</b></span></td><td id="xdx_82C_zIgM7cFLdm18" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>GOODWILL</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company acquired WMI on December 20, 2018. The acquisition was accounted for as a business combination in accordance with ASC Topic 805. Accordingly, the Company recorded the fair value of the assets and liabilities assumed at the date of acquisition. As a result of the acquisition of WMI on December 30, 2018, the Company recorded Goodwill of $<span id="xdx_907_eus-gaap--Goodwill_iI_c20181230__us-gaap--BusinessAcquisitionAxis__custom--WeldingMetallurgyIncMember_zAa4KJAX6qf4" title="Goodwill">1,784,254</span>.</span></p> 1784254 <p id="xdx_80F_eus-gaap--DebtDisclosureTextBlock_zejH6yMw3eK3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>8.</b></span></td><td id="xdx_827_z2V82AFSnqQl" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>LINE OF CREDIT</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On March 24, 2016, the Company entered into an Amended and Restated Credit Agreement with the lenders named therein and BankUnited, N.A. (“BankUnited”) as Sole Arranger, Agent and a Lender, dated as of March 24, 2016 (as amended, the “Credit Agreement” or the “BankUnited Facility”). The BankUnited Facility originally provided for a revolving credit loan commitment of $<span id="xdx_906_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_c20160324__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_pn6n6" title="Line of credit facility, maximum borrowing capacity">30</span> million (the “Revolving Loan”) and a $<span id="xdx_906_eus-gaap--DebtInstrumentFaceAmount_c20160324__us-gaap--CreditFacilityAxis__custom--TermLoanMember_pn6n6" title="Debt instrument, face amount">10</span> million term loan (“Term Loan”). The Revolving Loan bears interest at a rate based upon a pricing grid, as defined in the Credit Agreement.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On April 12, 2022, the Company entered into a Consent, Waiver and Ninth Amendment (the “Ninth Amendment”) to the Credit Agreement. Under the Ninth Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to <span id="xdx_902_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zHQ32YYZu5wg">September 30, 2023</span>, (b) providing for the repayment of an additional $<span id="xdx_90D_ecustom--RepaymentOfPrincipalUnderAgreement_pp0p0_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zK4rynqUWrR5">750,000</span> of the principal balance of the Term Loan in three installments of $<span id="xdx_903_ecustom--RepaymentOfPrincipalInstallmentUnderAgreement_pp0p0_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zRkswbQhFz79">250,000</span> on September 30, 2022, December 31, 2022 and March 31, 2023 in addition to $<span id="xdx_90E_eus-gaap--DebtInstrumentPeriodicPaymentPrincipal_pp0p0_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zNp2auop1eP5">200,000</span> regular monthly principal payments through December 31, 2022 and (c) increasing the interest on the Revolving Loan and the Term Loan as follows: through June 30, 2022, Prime Rate (as defined in the Credit Agreement) plus <span id="xdx_90E_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember_zRNvB4vbH0Z9">2.5</span>%; from July 1, 2022 through August 31, 2022, Prime Rate plus <span id="xdx_903_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateOneMember_z7DpepLktSCi">5</span>%; from September 1, 2022 through October 31, 2022, Prime Rate plus <span id="xdx_90A_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateTwoMember_zIat8dF10APd">6</span>%; from November 1, 2022 through December 31, 2022, Prime Rate plus <span id="xdx_908_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateThreeMember_zmAYxycT8Zs">7</span>%; and from January 1, 2023 through September 30, 2023, Prime Rate plus <span id="xdx_90F_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateFourMember_zeBe9iy0Nbd1">8</span>%. Additionally, under the Ninth Amendment, the Credit Agreement financial covenants were amended. BankUnited also waived or consented to certain covenant non-compliance, waived temporarily or consented to, late delivery of certain financial information and waived permanently late delivery of certain pro-forma budget information.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font: 10pt Times New Roman, Times, Serif"></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On August 19, 2022, the Company entered into a Consent, Waiver and Tenth Amendment (the “Tenth Amendment”) to the Credit Agreement. Under the Tenth Amendment, the parties amended the Credit Agreement by (a) increasing the maximum leverage ratio applicable for the fiscal quarter ending September 30, 2022 to <span id="xdx_904_ecustom--MaximumLeverageRatio_iI_pid_uPure_c20220819__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__srt--RangeAxis__srt--MaximumMember_zcllnj5aVtg7">5.0</span> to 1.0, (b) waiving and/or consenting to the exclusion from the Company’s covenant compliance requirements for the fiscal quarters ended December 31, 2021, March 31, 2022, June 30, 2022 and September 30, 2022 up to (i) $<span id="xdx_900_ecustom--LossesIncurredUnderAgreement_pp0p0_c20220818__20220819__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zunwgDz8OQz2">566,025</span> of losses incurred and reserves taken under the Borrower’s welded product contracts, and (ii) $<span id="xdx_902_ecustom--ReserveUnderAgreement_pp0p0_c20220818__20220819__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zNLpnASkQt4f">367,045</span> of reserves taken with respect to the Borrower’s welded product inventory, and (c) waiving and/or consenting to the exclusion from the Company’s covenant compliance requirements for the fiscal quarters ended March 31, 2022, June 30, 2022, September 30, 2022 and December 31, 2022 up to $<span id="xdx_900_ecustom--ExpensesUnderAgreement_pp0p0_c20220818__20220819__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zkQPesx3qPPg">795,997</span> of accrued severance and COBRA costs and employer taxes incurred by the Company during the fiscal quarter ending March 31, 2022. Additionally, under the Tenth Amendment, BankUnited waived or consented to late delivery of certain financial information required by the Credit Agreement.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On November 10, 2022, the Company entered into an Eleventh Amendment to the Credit Agreement (the “Eleventh Amendment”). Under the Eleventh Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to <span id="xdx_908_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_ztGHgOhMea2a">November 30, 2023</span> or with respect to the Term Loan, if earlier, until the outstanding principal balance is paid in full (the “Term Loan Maturity Date”), (b) providing for regular monthly principal payments of $<span id="xdx_900_ecustom--RepaymentOfPrincipalUnderAgreement_pp0p0_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zTv0kmqwFxq8" title="Repayment of principal under agreement">200,000</span> on the Term Loan from January 1, 2023 through the Term Loan Maturity Date (in addition to the Company’s existing obligation to make two principal payments on the term loan of $<span id="xdx_907_ecustom--RepaymentOfPrincipalInstallmentUnderAgreement_pp0p0_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zk7ek8NgKHKi" title="Repayment of principal installment under agreement">250,000</span> on each of December 31, 2022 and March 31, 2023) and (c) decreasing the interest rate on the Revolving Loan and on the Term Loan to the Prime Rate plus <span id="xdx_905_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zltdk0AbCZi1">3.5</span>% effective as of November 1, 2022.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On March 23, 2023, the Company entered into a Twelfth Amendment to the Credit Agreement (the “Twelfth Amendment”). Under the Twelfth Amendment, the parties amended the Credit Agreement by : (a) extending the maturity date of the Company’s existing revolving line of credit and its existing term loan to <span id="xdx_90D_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20230321__20230323__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z87axgXExOPl">November 30, 2024</span> (under the terms of the Credit Agreement, the outstanding principal balance of the term loan will be repaid by June 30, 2023); (b) providing for reduction of the aggregate maximum principal amount of all revolving line of credit loans to $<span id="xdx_901_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodOneMember_zlU85IJd6oY5" title="Line of credit facility, maximum borrowing capacity">20,520,000</span> from October 1, 2023 through December 31, 2023, $<span id="xdx_90D_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodTwoMember_z9itFkKwen46" title="Line of credit facility, maximum borrowing capacity">19,800,000</span> from January 1, 2024 through March 31, 2024, $<span id="xdx_90D_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodThreeMember_z5riKt10R8Wa" title="Line of credit facility, maximum borrowing capacity">19,080,000</span> from April 1, 2024 through June 30, 2024, $<span id="xdx_903_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodFourMember_zHbBmz5gYrOa" title="Line of credit facility, maximum borrowing capacity">18,360,000</span> from July 1, 2024 through September 30, 2024, and $<span id="xdx_906_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodFiveMember_zipRpwPisDBh" title="Line of credit facility, maximum borrowing capacity">17,640,000</span> from October 1, 2024 and thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period; and (c) payment of a $<span id="xdx_906_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zahugLzsqQuj" title="Capitalized fee">250,000</span> capitalized fee incurred in connection with the Eighth Amendment to the Credit Agreement in two installments, the first installment to be paid on June 1, 2023 in the amount of $<span id="xdx_906_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--FirstInstallmentMember_zDWAgg9s4dI7" title="Capitalized fee first installment">116,667</span> and the second installment to be paid July 1, 2023 in the amount of $<span id="xdx_908_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--SecondInstallmentMember_zqavKisvgCSi">133,333</span>, together with all unpaid interest accrued at the term loan interest rate on the capitalized fee through each such date.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Credit Agreement, as amended, requires us to maintain the following financial covenants (subject to the exclusions provided for in the previous paragraph): (a) minimum debt service coverage ratio of no less than <span id="xdx_90C_ecustom--MinimumDebtServiceCoverageRatio_iI_pip0_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentRedemptionPeriodAxis__us-gaap--DebtInstrumentRedemptionPeriodOneMember_zoYozYsNzGF1" title="Minimum debt service coverage ratio future periods">1.5</span> to 1.0 for the trailing four quarter period ended March 31, 2022, <span id="xdx_909_ecustom--MinimumDebtServiceCoverageRatio_iI_pip0_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentRedemptionPeriodAxis__us-gaap--DebtInstrumentRedemptionPeriodTwoMember_zgqJl9IL1h4d">0.95</span> to 1.0 for the trailing four quarter period ended June 30, 2022, and <span id="xdx_90A_ecustom--MinimumDebtServiceCoverageRatio_iI_pip0_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentRedemptionPeriodAxis__us-gaap--DebtInstrumentRedemptionPeriodThreeMember_z4aeHHyHke45">1.5</span> to 1.0 for the trailing four quarter period ended September 30, 2022 and for the trailing four quarter periods ended thereafter; (b) maximum leverage ratio of no less than <span id="xdx_903_ecustom--MaximumLeverageRatioPeriodOne_iI_pip0_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zCFAAKr1c346">7.30</span> to 1.0 for the trailing four quarter period ended March 31, 2022, <span id="xdx_904_ecustom--MaximumLeverageRatioPeriodTwo_iI_pip0_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zLAJLTn5AZj9">6.30</span> to 1.0 for the trailing four quarter period ended June 30, 2022, <span id="xdx_90B_ecustom--MaximumLeverageRatioPeriodThree_iI_pip0_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zw6Ujwisof3k">5.0</span> to 1.0 for the trailing four quarter period ended September 30, 2022 and <span id="xdx_90F_ecustom--MaximumLeverageRatioPeriodFour_iI_pip0_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zR8MRSr4hAK7">4.0</span> to 1.0 for the trailing four quarter periods thereafter; (c) minimum net income after taxes as of the end of each fiscal quarter being no less than $<span id="xdx_900_ecustom--NetIncomeRequiredUnderAgreement_pip0_c20230101__20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__srt--RangeAxis__srt--MinimumMember_zAXzvvYTwyN" title="Net income required under agreement">1.00</span> commencing June 30, 2022; and (d) a minimum adjusted EBITDA at the end of each quarter of no less than $<span id="xdx_900_ecustom--MinimumAdjustedEbitda_pn5n6_c20230101__20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__srt--RangeAxis__srt--MinimumMember_z7CCj51JNLgb" title="Minimum adjusted EBITDA">1</span>.0 million (waived for the quarter ended March 31, 2022). The additional principal payments, increase in interest and an amendment fee provided for in the Eighth and Ninth Amendments are excluded for purposes of calculating compliance with each of the financial covenants.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On February 20, 2024, the Company entered into a Thirteenth Amendment to the Credit Agreement (the “Thirteenth Amendment”). Under the Thirteenth Amendment, the parties amended the Credit Agreement by (a) extending the maturity date of the Company’s existing revolving line of credit to <span id="xdx_908_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20240219__20240220__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zhzf8SBjIQ6g">August 31, 2025</span>; and (b) setting the aggregate maximum principal amount of all revolving line of credit loans to $<span id="xdx_902_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20240220__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--DebtInstrumentAxis__custom--PeriodOneMember_zEWXaePbhNa4" title="Line of credit facility, maximum borrowing capacity">19,800,000</span> from January 1, 2024 through March 31, 2024, $<span id="xdx_90E_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20240220__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--DebtInstrumentAxis__custom--PeriodTwoMember_zXIItgB38iD1" title="Line of credit facility, maximum borrowing capacity">19,080,000</span> from April 1, 2024 through June 30, 2024, $<span id="xdx_90C_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20240220__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--DebtInstrumentAxis__custom--PeriodThreeMember_zf0GP7zeLNqc" title="Line of credit facility, maximum borrowing capacity">18,360,000</span> from July 1, 2024 through September 30, 2024, $<span id="xdx_908_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20240220__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--DebtInstrumentAxis__custom--PeriodFourMember_znrVJLKl7bG3" title="Line of credit facility, maximum borrowing capacity">17,640,000</span> from October 1, 2024 through December 31, 2024, $<span id="xdx_90A_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20240220__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--DebtInstrumentAxis__custom--PeriodFiveMember_zYUkmgIkPkL5" title="Line of credit facility, maximum borrowing capacity">16,920,000</span> from January 1, 2025 through March 31, 2025, $<span id="xdx_904_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20240220__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--DebtInstrumentAxis__custom--PeriodSixMember_zm4HEgG3OaIc" title="Line of credit facility, maximum borrowing capacity">16,200,000</span> from April 1, 2025 through June 30, 2025 and $<span id="xdx_90B_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20240220__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember__us-gaap--DebtInstrumentAxis__custom--PeriodSevenMember_zNaAonDP5wj2" title="Line of credit facility, maximum borrowing capacity">15,480,000</span> thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2023 and December 31, 2022, the Company had $<span id="xdx_908_eus-gaap--LineOfCredit_iI_pp0p0_c20231231__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z0fFDtZb6Lb2" title="Line of credit oustanding">20,040,000</span> and $<span id="xdx_90C_eus-gaap--LineOfCredit_iI_pp0p0_c20221231__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zds2BLYpINw7">21,000,000</span>, respectively, outstanding under the BankUnited Revolving Loan Facility. $<span id="xdx_901_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20231231__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z9Vpb31Egel6" title="Current portion of line of credit">2,400,000</span> of the revolving line of credit matures and is payable by December 31, 2024 and the remaining balance of $<span id="xdx_900_eus-gaap--LongTermLineOfCredit_iI_pp0p0_c20231231__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z6iN6PyxXUk4" title="Line of credit, net of current portion">17,640,000</span> of the revolving line of credit matures and is payable by August 31, 2025.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The BankUnited Facility is secured by all of the Company’s assets.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> 30000000 10000000 2023-09-30 750000 250000 200000 0.025 0.05 0.06 0.07 0.08 5.0 566025 367045 795997 2023-11-30 200000 250000 0.035 2024-11-30 20520000 19800000 19080000 18360000 17640000 250000 116667 133333 1.5 0.95 1.5 7.30 6.30 5.0 4.0 1.00 1000000 2025-08-31 19800000 19080000 18360000 17640000 16920000 16200000 15480000 20040000 21000000 2400000 17640000 <p id="xdx_80A_eus-gaap--LongTermDebtTextBlock_zWEP65gEWv8j" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>9.</b></span></td><td id="xdx_829_ziV2ctVrS5a2" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>DEBT</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As described above, in connection with the Twelfth Amendment, the Company and BankUnited agreed to amend the Credit Agreement by: (a) extending the maturity date of the Company’s existing revolving line of credit and its existing term loan to <span id="xdx_902_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20230321__20230323__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zIMcO23ELPMj">November 30, 2024</span> (under the terms of the Credit Agreement, the outstanding principal balance of the term loan will be repaid by June 30, 2023); (b) providing for reduction of the aggregate maximum principal amount of all revolving line of credit loans to $<span id="xdx_90F_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodOneMember_zLje3OX8qdUg" title="Line of credit facility, maximum borrowing capacity">20,520,000</span> from October 1, 2023 through December 31, 2023, $<span id="xdx_90D_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodTwoMember_zh1wyAEpLpLe" title="Line of credit facility, maximum borrowing capacity">19,800,000</span> from January 1, 2024 through March 31, 2024, $<span id="xdx_907_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodThreeMember_zP5cxkVzw6ch" title="Line of credit facility, maximum borrowing capacity">19,080,000</span> from April 1, 2024 through June 30, 2024, $<span id="xdx_902_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodFourMember_zvw2eEcYZmdf" title="Line of credit facility, maximum borrowing capacity">18,360,000</span> from July 1, 2024 through September 30, 2024, and $<span id="xdx_902_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodFiveMember_zm5CWHPpmyEl" title="Line of credit facility, maximum borrowing capacity">17,640,000</span> from October 1, 2024 and thereafter, and for payments to be made by the Company to comply therewith (if any such payments are necessary), on the first day of each such period; and (c) payment of a $<span id="xdx_909_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z3vKsEDGRrz1">250,000</span> capitalized fee incurred in connection with the Eighth Amendment to the Credit Agreement in two installments, the first installment to be paid on June 1, 2023 in the amount of $<span id="xdx_905_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--FirstInstallmentMember_znqkeRRNnM2j">116,667</span> and the second installment to be paid July 1, 2023 in the amount of $<span id="xdx_900_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--SecondInstallmentMember_zScZAir6vxHk">133,333</span>, together with all unpaid interest accrued at the term loan interest rate on the capitalized fee through each such date.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As described above, in connection with the Eleventh Amendment, the Company and BankUnited agreed to amend the Credit Agreement by (a) extending the maturity date of the Revolving Loan and the Term Loan to <span id="xdx_908_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zyWlcDQqePx4">November 30, 2023</span> or with respect to the Term Loan, if earlier, until the outstanding principal balance is paid in full (the “Term Loan Maturity Date”), (b) providing for regular monthly principal payments of $<span id="xdx_900_ecustom--RepaymentOfPrincipalUnderAgreement_pp0p0_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zPSgb597Tbsi" title="Repayment of principal under agreement">200,000</span> on the Term Loan from January 1, 2023 through the Term Loan Maturity Date (in addition to the Company’s existing obligation to make two principal payments on the term loan of $<span id="xdx_907_ecustom--RepaymentOfPrincipalInstallmentUnderAgreement_pp0p0_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z2ufKBojPo3f" title="Repayment of principal installment under agreement">250,000</span> on each of December 31, 2022 and March 31, 2023) and (c) decreasing the interest rate on the Revolving Loan and on the Term Loan to the Prime Rate plus <span id="xdx_905_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20221109__20221110__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zo9e3bv6ODn8">3.5</span>% effective as of November 1, 2022.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As described above, in connection with the Tenth Amendment, the Company and BankUnited agreed to amend the Credit Agreement by (a) amending the maximum leverage ratio applicable for the fiscal quarter ending on September 30, 2022, and (b) consenting to and waiving certain covenant non-compliance under the Credit Agreement. Under the Tenth Amendment, there are no changes to interest rates or repayment schedule and the terms pertaining to interest rates and repayment schedule remain the same as described below as per the Ninth Amendment. The Tenth Amendment had no effect on the interest rates on the Revolving Term Loan or Term Loan.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As described above, in connection with the Ninth Amendment, the Company and BankUnited agreed to extend the maturity dates of the Revolving Loan and Term Loan to <span id="xdx_902_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z4Jdmj6kjld1">September 30, 2023</span>, provide for the repayment of an additional $<span id="xdx_90D_ecustom--RepaymentOfPrincipalUnderAgreement_pp0p0_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zYBPQhM2DQT9">750,000</span> of the principal balance of the term loan in three installments of $<span id="xdx_903_ecustom--RepaymentOfPrincipalInstallmentUnderAgreement_pp0p0_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zouo4iaM8bU3">250,000</span> on September 30, 2022, December 31, 2022 and March 31, 2023 (in addition to the $<span id="xdx_904_ecustom--RepaymentOfPrincipalUnderAgreement_pp0p0_c20211027__20211028__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_znW9LhMAEKva" title="Repayment of principal under agreement">750,000</span> in additional principal payments as required by the Eighth Amendment due on November 30, 2021, December 31, 2021 and March 31, 2022), as well as the $<span id="xdx_90E_eus-gaap--DebtInstrumentPeriodicPaymentPrincipal_pp0p0_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_z6huGX9AVc69">200,000</span> regular monthly principal payments paid monthly through maturity, increase the interest on the Revolving Loan and on the Term Loan as follows: through June 30, 2022, Prime Rate (as defined in the Credit Agreement) plus <span id="xdx_90E_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember_zAzX6aNNIlF3">2.5</span>%; from July 1, 2022 through August 31, 2022, Prime Rate plus <span id="xdx_903_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateOneMember_z4R2iM3cRjzh">5</span>%; from September 1, 2022 through October 31, 2022, Prime Rate plus <span id="xdx_90A_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateTwoMember_ztZwYrsG77ic">6</span>%; from November 1, 2022 through December 31, 2022, Prime Rate plus <span id="xdx_908_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateThreeMember_zxOyCKm94Nvg">7</span>%; and from January 1, 2023 through September 30, 2023, Prime Rate plus <span id="xdx_90F_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20220411__20220412__us-gaap--CreditFacilityAxis__custom--TermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--VariableRateAxis__custom--PrimeRateFourMember_zsjqGKvDIlTg">8</span>%, waive or consent to certain covenant non-compliance, and waive temporarily or consented to, late delivery of certain financial information and waived permanently late delivery of certain pro-forma budget information. The BankUnited Facility, as amended, requires us to maintain the financial covenants described in the preceding note.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In 2022, as consideration for the lenders entering into the Ninth Amendment, the Company paid a $<span id="xdx_901_eus-gaap--DebtRelatedCommitmentFeesAndDebtIssuanceCosts_c20230101__20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_ztCYBH6Nnqda" title="Commitment and agent fees">62,833</span> fee to the lenders. The Company has cumulatively paid approximately $<span id="xdx_902_eus-gaap--PaymentsOfDebtIssuanceCosts_c20230101__20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_ztGgChoNmnn" title="Payments of debt issuance costs">962,000</span> of total debt issuance costs in connection with the BankUnited Facility of which approximately $<span id="xdx_90B_eus-gaap--DeferredFinanceCostsNoncurrentNet_iI_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zDl9fMujsqgf" title="Debt issuance costs included in other assets">82,000</span> and $<span id="xdx_909_eus-gaap--DeferredFinanceCostsNoncurrentNet_iI_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zAqMVS0FFgN5" title="Debt issuance costs included in other assets">131,000</span> is unamortized and included in other assets at December 31, 2023 and 2022, respectively.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font: 10pt Times New Roman, Times, Serif"></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_891_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zWX7EIBfBhUh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_z0bMjKtXfPQ6">The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"> <tr style="vertical-align: bottom"> <td style="font-weight: bold; text-align: left">Year ending December 31,</td><td style="font-weight: bold"> </td><td> </td> <td colspan="2" id="xdx_499_20231231_z6kb6knGCxKe" style="text-align: justify"> </td><td> </td></tr> <tr id="xdx_407_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths_iI_maLTDzhnE_z3jp5i5tj6f5" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 36%; text-align: left">2024</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">44,498</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_408_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo_iI_maLTDzhnE_zYmXlH7K6em7" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">2025</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">26,483</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--LongTermDebt_iTI_mtLTDzhnE_zW5bHTqs8z65" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">70,981</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8AF_zhHIocdbArLl" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Included in the long-term debt are financing leases and notes payable totaling $<span id="xdx_905_eus-gaap--LongTermDebtAndCapitalLeaseObligations_iI_c20231231_zFW9qz2QHIyl" title="Financing leases and notes payable">70,981</span> and $<span id="xdx_907_eus-gaap--LongTermDebtAndCapitalLeaseObligations_iI_c20221231_zAWsmmpVACOi">207,414</span> at December 31, 2023 and 2022, respectively, including a current portion of $<span id="xdx_901_eus-gaap--LongTermDebtAndCapitalLeaseObligationsCurrent_iI_c20231231_zuWRJOGZ2wfc" title="Financing leases and notes payable current">44,498</span> and $<span id="xdx_901_eus-gaap--LongTermDebtAndCapitalLeaseObligationsCurrent_iI_c20221231_zx8TJ94TzHWl">136,433</span>, respectively.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The BankUnited Facility is secured by all of the Company’s assets and both the Revolving Loan and Term Loan bear interest at the Prime Rate + <span id="xdx_90A_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20230101__20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember_zTOmtrJlOJki" title="Prime rate Plus">3.50</span>%. The Prime Rate was <span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20231231__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember_zs8SqOaCiVD3">8.50</span>% as of December 31, 2023 and as such, the Company’s interest rate on the Revolving Loan and Term Loan was <span id="xdx_903_eus-gaap--LongTermDebtPercentageBearingVariableInterestRate_iI_pid_dp_uPure_c20231231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember_zzaP8LfjzWB1" title="Interest rate">12.00</span>% as of December 31, 2023.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During the year ended December 31, 2023, the Term Loan was fully repaid. At December 31, 2022, the Term Loan had an aggregate principal balance due of $<span id="xdx_900_eus-gaap--DebtInstrumentCarryingAmount_iI_pp0p0_c20221231__us-gaap--CreditFacilityAxis__custom--TermLoanMember_zl0yTHM86lH4" title="Aggregate principal balance">1,583,333</span>, payable in monthly installments, as defined in the Credit Agreement.</span></p> 2024-11-30 20520000 19800000 19080000 18360000 17640000 250000 116667 133333 2023-11-30 200000 250000 0.035 2023-09-30 750000 250000 750000 200000 0.025 0.05 0.06 0.07 0.08 62833 962000 82000 131000 <p id="xdx_891_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zWX7EIBfBhUh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_z0bMjKtXfPQ6">The maturities of the long-term debt (excluding unamortized debt issuance costs) as of December 31, 2023, are as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"> <tr style="vertical-align: bottom"> <td style="font-weight: bold; text-align: left">Year ending December 31,</td><td style="font-weight: bold"> </td><td> </td> <td colspan="2" id="xdx_499_20231231_z6kb6knGCxKe" style="text-align: justify"> </td><td> </td></tr> <tr id="xdx_407_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextRollingTwelveMonths_iI_maLTDzhnE_z3jp5i5tj6f5" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 36%; text-align: left">2024</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">44,498</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_408_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInRollingYearTwo_iI_maLTDzhnE_zYmXlH7K6em7" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">2025</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">26,483</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--LongTermDebt_iTI_mtLTDzhnE_zW5bHTqs8z65" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">70,981</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 44498 26483 70981 70981 207414 44498 136433 0.0350 0.0850 0.1200 1583333 <p id="xdx_80D_eus-gaap--LesseeOperatingLeasesTextBlock_z5nPra8Tbqmb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>10.</b></span></td><td id="xdx_82B_zEKfkQJBz6Cg" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>LEASES</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company leases manufacturing and office space under an agreement classified as an operating lease. On November 10, 2022, the Company executed the second amendment to the lease agreement for its manufacturing and office space, which extends the lease agreement’s expiration date to April 30, 2026. The lease agreement does not include any renewal options. The agreement provides for an initial monthly base amount plus annual escalations through the term of the lease. In addition to the monthly base amounts in the lease agreement, the Company is required to pay real estate taxes and operating expenses during the lease terms.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company also leases office equipment in agreements classified as operating leases.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For the years ended December 31, 2023 and 2022, the Company’s operating lease expense was $<span id="xdx_909_eus-gaap--OperatingLeaseCost_c20230101__20231231_zdY9TMSKdSb1" title="Operating lease expense">2,142,338</span> and $<span id="xdx_90F_eus-gaap--OperatingLeaseCost_c20220101__20221231_zltuMkDb6DY6" title="Operating lease expense">2,101,596</span>, respectively.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_899_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zoGggnnJvThg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B1_znT9RRvy3yp2">Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"> <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Year ending December 31,</b></span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td colspan="2" id="xdx_49A_20231231_zeD1kdnQTeXh" style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maOLFMPzv5G_zwkhLj8RpPV7" style="font: 10pt Times New Roman, Times, Serif; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 36%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2024</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,228,784</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maOLFMPzv5G_zVARpiIZMBVe" style="font: 10pt Times New Roman, Times, Serif; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2025</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,283,354</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_408_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maOLFMPzv5G_zb4fkAIjC6Ck" style="font: 10pt Times New Roman, Times, Serif; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2026</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">850,276</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_40E_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maOLFMPzv5G_zaTCF9tjIYN2" style="font: 10pt Times New Roman, Times, Serif; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2027</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">111,065</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFive_iI_maOLFMPzv5G_z2rajjLfsO2a" style="font: 10pt Times New Roman, Times, Serif; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2028</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">9,226</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtOLFMPzv5G_zogWhlxyAvzc" style="font: 10pt Times New Roman, Times, Serif; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total undiscounted operating lease payments</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,482,705</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_di_zXiftelwF8ua" style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; padding-left: 9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Less imputed interest</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(383,076</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiability_iI_zjpsoMNAtWY7" style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Present value of operating lease payments</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: Black 1.5pt double; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 1.5pt double; font: 10pt Times New Roman, Times, Serif; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,099,629</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> </table> <p id="xdx_8A1_zMijGGO00Xa2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"></p> <p id="xdx_899_ecustom--LesseeOperatingLeasesTableTextBlock_zx83UgEXXxG" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B1_z65Z9aWUzgA8">The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_491_20231231_zcnqLoPgbDj3" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49F_20221231_zS28VjyJ8UH7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="font-weight: bold; padding-bottom: 1pt"> </td></tr> <tr id="xdx_409_eus-gaap--AssetsAbstract_iB_zNC9taSjQrsg" style="vertical-align: bottom"> <td style="font-weight: bold; text-align: justify">Assets</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--OperatingLeaseRightOfUseAsset_i01I_zBOq9Epi8bMi" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: justify; padding-bottom: 2.5pt">ROU assets, net</td><td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 10%; text-align: right">4,740,193</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left"> </td><td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 10%; text-align: right">6,526,627</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: justify"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--LiabilitiesAbstract_iB_z2VduJUtpKDe" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold; text-align: justify">Liabilities</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--OperatingLeaseLiabilityCurrent_i01I_maOLLzT6D_maOLLzzJK_z8sDsoI4r81j" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Current operating lease liabilities</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">1,999,058</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">1,817,811</td><td style="text-align: left"> </td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiabilityNoncurrent_i01I_maOLLzT6D_maOLLzzJK_z6Obm7ueN5cb" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt">Long-term operating lease liabilities</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">3,100,571</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">5,077,235</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--OperatingLeaseLiability_i01TI_mtOLLzT6D_mtOLLzzJK_z06ikCoB2f1" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 2.5pt; padding-left: 9pt">Total lease liabilities</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,099,629</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,895,046</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8A2_zNByV6jcsKq" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company’s weighted average remaining lease term for its operating leases is <span id="xdx_90F_eus-gaap--OperatingLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20231231_zAW8abygCka6" title="Weighted average remaining lease term operating leases">2.5</span> years as of December 31, 2023. The Company’s weighted average discount rate for its operating leases is <span id="xdx_909_eus-gaap--OperatingLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20231231_z7gXfopdk8T3" title="Weighted average discount rate for its operating leases">5.43</span>% as of December 31, 2023.</span></p> 2142338 2101596 <p id="xdx_899_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zoGggnnJvThg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B1_znT9RRvy3yp2">Future minimum lease payments under non-cancellable operating leases as of December 31, 2023 were as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 50%"> <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Year ending December 31,</b></span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td colspan="2" id="xdx_49A_20231231_zeD1kdnQTeXh" style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maOLFMPzv5G_zwkhLj8RpPV7" style="font: 10pt Times New Roman, Times, Serif; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 36%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2024</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,228,784</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maOLFMPzv5G_zVARpiIZMBVe" style="font: 10pt Times New Roman, Times, Serif; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2025</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,283,354</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_408_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maOLFMPzv5G_zb4fkAIjC6Ck" style="font: 10pt Times New Roman, Times, Serif; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2026</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">850,276</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_40E_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maOLFMPzv5G_zaTCF9tjIYN2" style="font: 10pt Times New Roman, Times, Serif; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2027</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">111,065</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFive_iI_maOLFMPzv5G_z2rajjLfsO2a" style="font: 10pt Times New Roman, Times, Serif; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2028</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">9,226</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtOLFMPzv5G_zogWhlxyAvzc" style="font: 10pt Times New Roman, Times, Serif; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total undiscounted operating lease payments</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,482,705</span></td> <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_di_zXiftelwF8ua" style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font: 10pt Times New Roman, Times, Serif; padding-left: 9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Less imputed interest</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(383,076</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiability_iI_zjpsoMNAtWY7" style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: White"> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Present value of operating lease payments</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td> <td style="border-bottom: Black 1.5pt double; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 1.5pt double; font: 10pt Times New Roman, Times, Serif; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,099,629</span></td> <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></td></tr> </table> 2228784 2283354 850276 111065 9226 5482705 383076 5099629 <p id="xdx_899_ecustom--LesseeOperatingLeasesTableTextBlock_zx83UgEXXxG" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B1_z65Z9aWUzgA8">The following table sets forth the ROU assets and operating lease liabilities as of December 31, 2023 and 2022:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_491_20231231_zcnqLoPgbDj3" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="font-weight: bold; padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49F_20221231_zS28VjyJ8UH7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="font-weight: bold; padding-bottom: 1pt"> </td></tr> <tr id="xdx_409_eus-gaap--AssetsAbstract_iB_zNC9taSjQrsg" style="vertical-align: bottom"> <td style="font-weight: bold; text-align: justify">Assets</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--OperatingLeaseRightOfUseAsset_i01I_zBOq9Epi8bMi" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: justify; padding-bottom: 2.5pt">ROU assets, net</td><td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 10%; text-align: right">4,740,193</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left"> </td><td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 10%; text-align: right">6,526,627</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: justify"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--LiabilitiesAbstract_iB_z2VduJUtpKDe" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold; text-align: justify">Liabilities</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--OperatingLeaseLiabilityCurrent_i01I_maOLLzT6D_maOLLzzJK_z8sDsoI4r81j" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Current operating lease liabilities</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">1,999,058</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">1,817,811</td><td style="text-align: left"> </td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiabilityNoncurrent_i01I_maOLLzT6D_maOLLzzJK_z6Obm7ueN5cb" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt">Long-term operating lease liabilities</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">3,100,571</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">5,077,235</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--OperatingLeaseLiability_i01TI_mtOLLzT6D_mtOLLzzJK_z06ikCoB2f1" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 2.5pt; padding-left: 9pt">Total lease liabilities</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,099,629</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,895,046</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 4740193 6526627 1999058 1817811 3100571 5077235 5099629 6895046 P2Y6M 0.0543 <p id="xdx_804_eus-gaap--IncomeTaxDisclosureTextBlock_zcbeEwCGEFr2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>11.</b></span></td><td id="xdx_827_zWFKZqJceZ6j" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>INCOME TAXES</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We account for income taxes in accordance with ASC 740 Income Taxes. ASC 740 is an asset and liability approach that requires the recognition of deferred tax assets and liabilities for the expected tax consequences or events that have been recognized in our consolidated financial statements or tax returns. ASC 740 also clarifies the accounting for uncertainty in income taxes recognized in the consolidated financial statements. The interpretation prescribes a recognition threshold and measurement attribute for the consolidated financial statements recognition and measurement of a tax position taken, or expected to be taken, in a tax return.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company files income tax returns in the U.S. federal jurisdiction and in various state jurisdictions. The Company generally is no longer subject to U.S. or state examinations by tax authorities for taxable years prior to 2019. However, net operating losses utilized from prior years in subsequent years’ tax returns are subject to examination until three years after the filing of subsequent years’ tax returns. The statute of limitations expiration in foreign jurisdictions for corporate tax returns generally ranges between two and five years depending on the jurisdiction.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_892_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zsjHzkwEciZg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zdN9M1ozWjIl">The (benefit) for income taxes consists of the following:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="font-weight: bold">Year ended December 31,</td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49F_20230101__20231231_zdwpZ3h0tF5a" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49B_20220101__20221231_zpLJG6MdUFCg" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_407_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zMFt2FQLhTe3" style="vertical-align: bottom"> <td style="font-weight: bold; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Current:</b></span></td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_i01_maITEBzUsE_zWEUiXmonoJ1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: left; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">State</span></td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">14,248</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">21,332</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zw04SDi8HPFd" style="vertical-align: bottom; background-color: White"> <td style="font-weight: bold; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Deferred:</b></span></td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_i01_maITEBzUsE_zzyISIDQeXv1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">    Federal</span></td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(12,608,425</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(6,428,448</td><td style="text-align: left">)</td></tr> <tr id="xdx_40C_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_i01_maITEBzUsE_zSztX5XItQO" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">State</span></td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(755,237</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(146,015</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_iT_mtITEBzUsE_zpCCh4KOr9Og" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total</span></td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(13,349,414</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(6,553,131</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr> </table> <p id="xdx_8A3_zTHJNLt4cAre" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"></p> <p id="xdx_89E_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zdDaNbRrS4Ph" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zd5pMKOquvD7">The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: justify">December 31,</td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49A_20230101__20231231_z1thjgXj2k3l" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49E_20220101__20221231_zJ94dhytzBya" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_40C_eus-gaap--IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_maITEBzEBe_zkE52ka45qg" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: justify">Taxes computed at the federal statutory rate</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">808,876</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">550,850</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--IncomeTaxReconciliationStateAndLocalIncomeTaxes_maITEBzOal_maITEBzEBe_zD2gmhaQSeY6" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">State income tax, net</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(585,381</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(98,499</td><td style="text-align: left">)</td></tr> <tr id="xdx_403_eus-gaap--IncomeTaxReconciliationTaxCreditsResearch_iN_di_msITEBzOal_msITEBzEBe_zPJatyGM9rP9" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify">Research and development tax credit</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(133,089</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(190,656</td><td style="text-align: left">)</td></tr> <tr id="xdx_401_eus-gaap--IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_maITEBzOal_maITEBzEBe_z6JUTsdbqeDh" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Change in valuation allowance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(13,531,626</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(6,616,952</td><td style="text-align: left">)</td></tr> <tr id="xdx_405_eus-gaap--IncomeTaxReconciliationOtherReconcilingItems_maITEBzEBe_zYWyPYen6w24" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify">Other</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">88,308</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">51,696</td><td style="text-align: left"> </td></tr> <tr id="xdx_40C_ecustom--IncomeTaxReconciliationLossReserveAdjustment_iN_di_msITEBzEBe_zwWlj5eMj366" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Accrued loss reserve adjustment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0858">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(253,738</td><td style="text-align: left">)</td></tr> <tr id="xdx_40D_eus-gaap--IncomeTaxReconciliationNondeductibleExpense_maITEBzEBe_zyABz1Cx2lqf" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt">Permanent differences</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">3,498</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">4,168</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_mtITEBzEBe_zqMZEm2OjGxa" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 2.5pt; padding-left: 9pt">Benefit for income taxes</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(13,349,414</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(6,553,131</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr> </table> <p id="xdx_8A1_zitfsuwwYLRf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"> </p> <p id="xdx_898_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zhR5WV8Z0d44" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zK55pmqMfOh">The components of deferred income tax assets and liabilities are as follows at December 31:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr id="xdx_409_eus-gaap--DeferredTaxAssetsNetAbstract_iB_zkEOaJStJRr2" style="vertical-align: bottom"> <td style="border-bottom: Black 1pt solid; font-weight: bold">Deferred Tax Assets:</td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_491_20231231_zy8ITfpKeN9c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49B_20221231_z6hiC2VTqaM6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022 <br/> (As Restated)</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_401_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_maDTAGzf5c_z3EssUrL9NXd" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: left">Allowance for credit losses</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">20,632</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">60,100</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_403_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_maDTAGzf5c_z8BZODUuUOSj" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Capitalized R&amp;D</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,420,263</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">864,969</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsTaxCreditCarryforwards_i01I_maDTAGzf5c_zhg7JyCA6fPc" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Credit carryforwards</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,278,642</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,193,146</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsInventory_i01I_maDTAGzf5c_zBaWfsPufwwf" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Inventory reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">350,073</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">722,991</td><td style="text-align: left"> </td></tr> <tr id="xdx_406_ecustom--DeferredTaxAssetsAccruedPayroll_i01I_maDTAGzf5c_z91hkQLLFePg" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Accrued payroll</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">151,986</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">267,819</td><td style="text-align: left"> </td></tr> <tr id="xdx_403_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLossReserves_i01I_maDTAGzf5c_zEcztSCaHFGe" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Loss contracts reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">75,402</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">46,205</td><td style="text-align: left"> </td></tr> <tr id="xdx_40C_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_i01I_maDTAGzf5c_zbCJk1h1ZQc7" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Restricted stock</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">94,809</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">92,677</td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_ecustom--DeferredTaxAssetsAcquisitionCost_i01I_maDTAGzf5c_zyZLQDy6ruih" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Acquisition costs</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">74,136</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">77,762</td><td style="text-align: left"> </td></tr> <tr id="xdx_408_ecustom--DeferredTaxAssetsLeaseLiability_i01I_maDTAGzf5c_zOQv6TatmqK3" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Lease liability</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,139,836</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,469,551</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_ecustom--DeferredTaxAssetsAccruedLegal_i01I_maDTAGzf5c_z0fHNYU6KBm2" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued legal</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0897">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">159,849</td><td style="text-align: left"> </td></tr> <tr id="xdx_409_ecustom--DeferredTaxAssetsDisallowedInterestExpense_i01I_maDTAGzf5c_zOGeYRnwtk84" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Disallowed interest expense</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,067,063</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">943,089</td><td style="text-align: left"> </td></tr> <tr id="xdx_407_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_i01I_maDTAGzf5c_zCUgu3XrjEhf" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Net operating loss carryforward</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">16,356,545</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">17,513,901</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxAssetsOther_i01I_maDTAGzf5c_z30GGUOHFiZ3" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt">Other</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">45,057</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">20,659</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--DeferredTaxAssetsGross_i01TI_mtDTAGzf5c_maDTALNz2rW_zkXtuaAgzppi" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax assets</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">23,074,444</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">24,432,718</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxAssetsValuationAllowance_i01NI_di_msDTALNz2rW_z7q7kKSnxpGf" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Valuation allowance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(569,143</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(14,740,034</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesNetAbstract_iB_zqFAeKOTZDM6" style="vertical-align: bottom; background-color: White"> <td style="text-decoration: underline; font-weight: bold; text-align: left">Deferred Tax Liabilities:</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01I_maDITLzJyM_zW3Xhti3P9fc" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Prepaid expenses</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">143,126</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">207,980</td><td style="text-align: left"> </td></tr> <tr id="xdx_406_eus-gaap--DeferredTaxLiabilitiesTaxDeferredIncome_i01I_maDITLzJyM_z8uaC5WpBt3k" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Revenue recognition </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,224,106</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,341,105</td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01I_maDITLzJyM_zPBhRdVigzF5" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Property and equipment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">140,449</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">178,107</td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_maDITLzJyM_zqZ1GhRIuEYd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">ROU asset</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,059,496</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,391,029</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--DeferredIncomeTaxLiabilities_i01TI_mtDITLzJyM_msDTALNz2rW_zAWJ7bwaUoba" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax liabilities</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">2,567,177</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">3,118,221</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iTI_mtDTALNz2rW_zyu0JkCtUaKd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt">Net deferred tax assets</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19,938,124</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,574,463</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8AE_z5dmZGxSeZB5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"></p> <p id="xdx_89C_eus-gaap--ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock_z78yCmBw2OQ2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">During our review of the Company’s deferred income tax positions as of December 31, 2023, we determined that the following adjustments are needed to our previously reported December 31, 2022 deferred tax assets and liabilities balances, with no impact to our net deferred tax assets, due to the inadequate review, assessment of and reporting of the Company’s temporary differences between book and taxable income. More specifically, the adjustments are required due to computational errors and incomplete analyses. <span id="xdx_8B8_z2UZrhzZdZ47">Accordingly, we have restated the balances as previously reported, where needed, as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><b> </b></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr id="xdx_409_eus-gaap--DeferredTaxAssetsNetAbstract_iB_zf9TevkUSvwd" style="vertical-align: bottom"> <td style="border-bottom: Black 1pt solid; font-weight: bold">Deferred Tax Assets:</td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td colspan="2" id="xdx_49E_20221231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember_zVYwseBHkqp8" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold">2022 (as Previously Reported)</td><td style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold"> </td><td style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold"> </td> <td colspan="2" id="xdx_494_20221231__srt--RestatementAxis__srt--RestatementAdjustmentMember_zKd8tO3BJQT9" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Restatement Adjustments</td><td style="padding-bottom: 1pt; text-align: center; font-weight: bold"> </td><td style="padding-bottom: 1pt; text-align: center; font-weight: bold"> </td> <td colspan="2" id="xdx_49B_20221231_zdOv3dwYIcX5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022 (As Restated)</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_400_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_zPsWlK48TVV1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 55%; text-align: left">Allowance for credit losses</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">60,100</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0945">—</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">60,100</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_408_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_zvQJIe4FF6Ok" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Capitalized R&amp;D</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">864,969</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0949">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">864,969</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--DeferredTaxAssetsTaxCreditCarryforwards_i01I_zMAK1EWVr7Jd" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Credit carryforwards</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,193,146</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0953">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,193,146</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxAssetsInventory_i01I_zJhCTTqktAQ1" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Inventory reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,130,788</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(407,797</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">722,991</td><td style="text-align: left"> </td></tr> <tr id="xdx_401_ecustom--DeferredTaxAssetsAccruedPayroll_i01I_zy4mLxaat6Wb" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Accrued payroll</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">267,819</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0961">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">267,819</td><td style="text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLossReserves_i01I_zV4FfjKangK3" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Loss contracts reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">46,205</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0965">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">46,205</td><td style="text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_i01I_zcnWNb1ndbrh" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Restricted stock</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">160,989</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(68,312</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">92,677</td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_ecustom--DeferredTaxAssetsAcquisitionCost_i01I_z8GrKmnKMDo4" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Acquisition costs</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">77,762</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0973">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">77,762</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_ecustom--DeferredTaxAssetsLeaseLiability_i01I_z2IfwQQD6Rz7" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Lease liability</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,469,551</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0977">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,469,551</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_ecustom--DeferredTaxAssetsAccruedLegal_i01I_z0ELLf1pMLNb" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued legal</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">159,849</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0981">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">159,849</td><td style="text-align: left"> </td></tr> <tr id="xdx_401_ecustom--DeferredTaxAssetsDisallowedInterestExpense_i01I_zi6iKQUziVh6" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Disallowed interest expense</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,268,226</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(325,137</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">943,089</td><td style="text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_i01I_zaMnIjO2WORe" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Net operating loss carryforward</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">19,493,530</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(1,979,629</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">17,513,901</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsOther_i01I_zsQkWt9DnYyl" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt">Other</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">20,659</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0993">—</span></td><td style="text-align: left"> </td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">20,659</td><td style="text-align: left"> </td></tr> <tr id="xdx_406_eus-gaap--DeferredTaxAssetsGross_i01I_zpwO7WPhnIb6" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax assets</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">27,213,593</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(2,780,875</td><td style="text-align: left">)</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">24,432,718</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40A_eus-gaap--DeferredTaxAssetsValuationAllowance_i01NI_di_zBEnYrfUhtH8" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Valuation allowance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(14,916,923</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">176,889</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(14,740,034</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesNetAbstract_iB_zFjOtEHxdVEg" style="vertical-align: bottom; background-color: White"> <td style="text-decoration: underline; font-weight: bold; text-align: left">Deferred Tax Liabilities:</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01I_zlf5QmSutmk1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Prepaid expenses</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">207,980</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1009">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">207,980</td><td style="text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--DeferredTaxLiabilitiesTaxDeferredIncome_i01I_zNOK7PXpztZc" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Revenue recognition</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,966,404</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(2,625,299</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,341,105</td><td style="text-align: left"> </td></tr> <tr id="xdx_40C_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01I_z84A2A9Teonj" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Property and equipment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">156,794</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">21,313</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">178,107</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_zyky4V9qTrog" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">ROU asset</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,391,029</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1021">—</span></td><td style="text-align: left"> </td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,391,029</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--DeferredIncomeTaxLiabilities_i01I_zgUCBGz3tXKe" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax liabilities</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">5,722,207</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,603,986</td><td style="text-align: left">)</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">3,118,221</td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iI_zVfp5hYNJPJ3" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt">Net deferred tax assets</td><td> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,574,463</td><td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1029">—</span></td><td style="text-align: left"> </td><td> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,574,463</td><td style="text-align: left"> </td></tr> </table> <p id="xdx_8A2_zaZRncLUQLj8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2023, the Company had approximately $<span id="xdx_905_eus-gaap--OperatingLossCarryforwards_iI_pn5n6_c20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zDrswg5eKL2f" title="Net operating losses">74.7</span> million of gross net operating loss carryforwards (“NOLs”) for federal tax purposes and approximately $<span id="xdx_900_eus-gaap--OperatingLossCarryforwards_iI_pn5n6_c20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--StateAndLocalJurisdictionMember_zW3cEfjC3Gyc" title="Net operating losses">17.3</span> million of post apportionment NOLs for state tax purposes. The Federal NOLs begin to expire in 2034. Losses generated in 2018 and forward of $<span id="xdx_90F_eus-gaap--OperatingLossCarryforwards_iI_pn5n6_c20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember__us-gaap--TaxPeriodAxis__us-gaap--TaxYear2018Member_zSehedMKgqw9" title="Net operating losses">14.4</span> million have an indefinite life and can offset up to <span id="xdx_90B_ecustom--OffsetTaxableIncomeForRegularTaxPurposePercent_pid_dp_uPure_c20230101__20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember__us-gaap--TaxPeriodAxis__us-gaap--TaxYear2018Member_zx0luVbyFxca" title="Offset taxable income for regular tax purpose (percent)">80</span>% of taxable income in the future. Federal NOLs generated prior to 2018 can offset <span id="xdx_90A_ecustom--OffsetTaxableIncomeForRegularTaxPurposePercent_pid_dp_uPure_c20230101__20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember__us-gaap--TaxPeriodAxis__us-gaap--TaxYear2017Member_zRvKNHBwaNt7" title="Offset taxable income for regular tax purpose (percent)">100</span>% of future taxable income. The state NOLs begin to expire in 2034.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_902_eus-gaap--OperatingLossCarryforwardsLimitationsOnUse_c20230101__20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--DomesticCountryMember_zrK8PLaj1vEh" title="NOL description">As a result of the Tax Cuts and Jobs Act of 2017 and the Coronavirus Aid, Relief, and Economic Security Act of 2020, federal NOLs arising before January 1, 2018, and NOLs arising after January 1, 2018, are subject to different rules. Our pre-2018 NOLs totaled approximately $<span id="xdx_90A_eus-gaap--OperatingLossCarryforwards_iI_pn5n6_c20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember__us-gaap--TaxPeriodAxis__us-gaap--TaxYear2017Member_zbAGLbmgHtjh" title="Net operating losses">60.3</span> million; these NOLs will expire in varying amounts from 2034 through 2039, if not utilized, and can offset 100% of future taxable income for regular tax purposes. Our NOLs arising in 2018, 2019 and 2020 can generally be carried back five years, carried forward indefinitely and can offset 100% of taxable income for tax years before January 1, 2021 and up to 80% of taxable income for tax years after December 31, 2020. Any NOLs arising on or after January 1, 2021, cannot be carried back, can generally be carried forward indefinitely and can offset up to 80% of future taxable income.</span> <span id="xdx_905_eus-gaap--OperatingLossCarryforwardsLimitationsOnUse_c20230101__20231231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--StateAndLocalJurisdictionMember_zvWUb934sFV4" title="NOL description">The state NOLs begin to expire in 2034</span>.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our ability to fully recognize the benefits from our NOLs is dependent upon our ability to generate sufficient income prior to their expiration. In addition, our NOL carryforwards may be limited if we experience an ownership change as defined by Section 382 of the Internal Revenue Code (“Section 382”). In general, an ownership change under Section 382 occurs if 5% shareholders increase their collective ownership of the aggregate amount of our outstanding shares by more than 50 percentage points over a relevant lookback period. The Company has completed a Section 382 analysis for the year ended December 31, 2022, and believes that no ownership change occurred during the relevant lookback period that would limit our ability to use our NOLs. The sale of additional equity securities in the future may trigger an ownership change under IRC Section 382, which could significantly limit our ability to utilize our tax benefits.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company will recognize a tax benefit in the consolidated financial statements for an uncertain tax position only if management’s assessment is that the position is “more likely than not” (i.e., a likelihood greater than 50%) to be allowed by the tax jurisdiction based solely on the technical merits of the position. The term “tax position” refers to a position in a previously filed tax return or a position expected to be taken in a future tax return that is reflected in measuring current or deferred income tax assets and liabilities for financial reporting purposes.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Assessing the realizability of deferred tax assets requires the determination of whether it is more likely than not that some portion or all the deferred tax assets will not be realized. In assessing the need for a valuation allowance, the Company considers all available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, loss carryback and tax-planning strategies. Generally, more weight is given to objectively verifiable evidence, such as a cumulative loss in recent years, as a significant piece of negative evidence to overcome. As of December 31, 2023, the Company achieved three years of consecutive book and taxable income, along with projections of profitability, for which management determined that there is sufficient positive evidence to conclude that it is more likely than not that a portion of the deferred tax assets will be realized. As such, $<span id="xdx_907_eus-gaap--ValuationAllowanceDeferredTaxAssetChangeInAmount_iN_pp0p0_di_c20230101__20231231_zSvsTTpCs4b3" title="Valuation allowance released">14,170,891</span> of the valuation allowance was released during the fourth quarter of fiscal 2023, leaving a balance in the valuation allowance of $<span id="xdx_90C_eus-gaap--DeferredTaxAssetsValuationAllowance_iI_pp0p0_c20231231_zKkXlLmXuXt3" title="Valuation allowance balance">569,143</span> as of December 31, 2023.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The income tax (benefit) for the year ended December 31, 2023 was $<span id="xdx_902_eus-gaap--IncomeTaxExpenseBenefit_pp0p0_c20230101__20231231_zADOZPFOy49a" title="Income tax benefit">(13,349,414)</span>, an effective tax (benefit) rate of <span id="xdx_90E_eus-gaap--EffectiveIncomeTaxRateContinuingOperations_pid_uPure_c20230101__20231231_z28mEPo9vVo9" title="Effective tax benefit rate">(346.6%)</span>. The tax (benefit) was mostly the result of the aforementioned reduction in the valuation allowance on deferred tax assets. Management makes these estimates quarterly in order to determine the appropriate level of valuation allowance to include in the Company’s financial statements at the balance sheet date.</span></p> <p id="xdx_892_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zsjHzkwEciZg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zdN9M1ozWjIl">The (benefit) for income taxes consists of the following:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="font-weight: bold">Year ended December 31,</td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49F_20230101__20231231_zdwpZ3h0tF5a" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49B_20220101__20221231_zpLJG6MdUFCg" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_407_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zMFt2FQLhTe3" style="vertical-align: bottom"> <td style="font-weight: bold; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Current:</b></span></td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_i01_maITEBzUsE_zWEUiXmonoJ1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: left; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">State</span></td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">14,248</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">21,332</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zw04SDi8HPFd" style="vertical-align: bottom; background-color: White"> <td style="font-weight: bold; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Deferred:</b></span></td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_i01_maITEBzUsE_zzyISIDQeXv1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">    Federal</span></td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(12,608,425</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(6,428,448</td><td style="text-align: left">)</td></tr> <tr id="xdx_40C_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_i01_maITEBzUsE_zSztX5XItQO" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">State</span></td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(755,237</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(146,015</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr> <tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_iT_mtITEBzUsE_zpCCh4KOr9Og" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total</span></td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(13,349,414</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(6,553,131</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr> </table> 14248 21332 -12608425 -6428448 -755237 -146015 -13349414 -6553131 <p id="xdx_89E_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zdDaNbRrS4Ph" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zd5pMKOquvD7">The difference between the income tax provision computed at the federal statutory rate and the actual tax benefit is accounted for as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr style="vertical-align: bottom"> <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: justify">December 31,</td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49A_20230101__20231231_z1thjgXj2k3l" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49E_20220101__20221231_zJ94dhytzBya" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_40C_eus-gaap--IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_maITEBzEBe_zkE52ka45qg" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: justify">Taxes computed at the federal statutory rate</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">808,876</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">550,850</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_409_eus-gaap--IncomeTaxReconciliationStateAndLocalIncomeTaxes_maITEBzOal_maITEBzEBe_zD2gmhaQSeY6" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">State income tax, net</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(585,381</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(98,499</td><td style="text-align: left">)</td></tr> <tr id="xdx_403_eus-gaap--IncomeTaxReconciliationTaxCreditsResearch_iN_di_msITEBzOal_msITEBzEBe_zPJatyGM9rP9" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify">Research and development tax credit</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(133,089</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(190,656</td><td style="text-align: left">)</td></tr> <tr id="xdx_401_eus-gaap--IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_maITEBzOal_maITEBzEBe_z6JUTsdbqeDh" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Change in valuation allowance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(13,531,626</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(6,616,952</td><td style="text-align: left">)</td></tr> <tr id="xdx_405_eus-gaap--IncomeTaxReconciliationOtherReconcilingItems_maITEBzEBe_zYWyPYen6w24" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify">Other</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">88,308</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">51,696</td><td style="text-align: left"> </td></tr> <tr id="xdx_40C_ecustom--IncomeTaxReconciliationLossReserveAdjustment_iN_di_msITEBzEBe_zwWlj5eMj366" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Accrued loss reserve adjustment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0858">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(253,738</td><td style="text-align: left">)</td></tr> <tr id="xdx_40D_eus-gaap--IncomeTaxReconciliationNondeductibleExpense_maITEBzEBe_zyABz1Cx2lqf" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1pt">Permanent differences</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">3,498</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">4,168</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_mtITEBzEBe_zqMZEm2OjGxa" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify; padding-bottom: 2.5pt; padding-left: 9pt">Benefit for income taxes</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(13,349,414</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(6,553,131</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr> </table> 808876 550850 -585381 -98499 133089 190656 -13531626 -6616952 88308 51696 253738 3498 4168 -13349414 -6553131 <p id="xdx_898_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zhR5WV8Z0d44" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zK55pmqMfOh">The components of deferred income tax assets and liabilities are as follows at December 31:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr id="xdx_409_eus-gaap--DeferredTaxAssetsNetAbstract_iB_zkEOaJStJRr2" style="vertical-align: bottom"> <td style="border-bottom: Black 1pt solid; font-weight: bold">Deferred Tax Assets:</td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_491_20231231_zy8ITfpKeN9c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_49B_20221231_z6hiC2VTqaM6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022 <br/> (As Restated)</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_401_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_maDTAGzf5c_z3EssUrL9NXd" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; text-align: left">Allowance for credit losses</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">20,632</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">60,100</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_403_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_maDTAGzf5c_z8BZODUuUOSj" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Capitalized R&amp;D</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,420,263</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">864,969</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsTaxCreditCarryforwards_i01I_maDTAGzf5c_zhg7JyCA6fPc" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Credit carryforwards</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,278,642</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,193,146</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsInventory_i01I_maDTAGzf5c_zBaWfsPufwwf" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Inventory reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">350,073</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">722,991</td><td style="text-align: left"> </td></tr> <tr id="xdx_406_ecustom--DeferredTaxAssetsAccruedPayroll_i01I_maDTAGzf5c_z91hkQLLFePg" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Accrued payroll</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">151,986</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">267,819</td><td style="text-align: left"> </td></tr> <tr id="xdx_403_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLossReserves_i01I_maDTAGzf5c_zEcztSCaHFGe" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Loss contracts reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">75,402</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">46,205</td><td style="text-align: left"> </td></tr> <tr id="xdx_40C_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_i01I_maDTAGzf5c_zbCJk1h1ZQc7" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Restricted stock</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">94,809</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">92,677</td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_ecustom--DeferredTaxAssetsAcquisitionCost_i01I_maDTAGzf5c_zyZLQDy6ruih" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Acquisition costs</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">74,136</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">77,762</td><td style="text-align: left"> </td></tr> <tr id="xdx_408_ecustom--DeferredTaxAssetsLeaseLiability_i01I_maDTAGzf5c_zOQv6TatmqK3" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Lease liability</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,139,836</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,469,551</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_ecustom--DeferredTaxAssetsAccruedLegal_i01I_maDTAGzf5c_z0fHNYU6KBm2" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued legal</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0897">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">159,849</td><td style="text-align: left"> </td></tr> <tr id="xdx_409_ecustom--DeferredTaxAssetsDisallowedInterestExpense_i01I_maDTAGzf5c_zOGeYRnwtk84" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Disallowed interest expense</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,067,063</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">943,089</td><td style="text-align: left"> </td></tr> <tr id="xdx_407_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_i01I_maDTAGzf5c_zCUgu3XrjEhf" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Net operating loss carryforward</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">16,356,545</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">17,513,901</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxAssetsOther_i01I_maDTAGzf5c_z30GGUOHFiZ3" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt">Other</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">45,057</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">20,659</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--DeferredTaxAssetsGross_i01TI_mtDTAGzf5c_maDTALNz2rW_zkXtuaAgzppi" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax assets</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">23,074,444</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">24,432,718</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxAssetsValuationAllowance_i01NI_di_msDTALNz2rW_z7q7kKSnxpGf" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Valuation allowance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(569,143</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(14,740,034</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesNetAbstract_iB_zqFAeKOTZDM6" style="vertical-align: bottom; background-color: White"> <td style="text-decoration: underline; font-weight: bold; text-align: left">Deferred Tax Liabilities:</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01I_maDITLzJyM_zW3Xhti3P9fc" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Prepaid expenses</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">143,126</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">207,980</td><td style="text-align: left"> </td></tr> <tr id="xdx_406_eus-gaap--DeferredTaxLiabilitiesTaxDeferredIncome_i01I_maDITLzJyM_z8uaC5WpBt3k" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Revenue recognition </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,224,106</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,341,105</td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01I_maDITLzJyM_zPBhRdVigzF5" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Property and equipment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">140,449</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">178,107</td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_maDITLzJyM_zqZ1GhRIuEYd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">ROU asset</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,059,496</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,391,029</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--DeferredIncomeTaxLiabilities_i01TI_mtDITLzJyM_msDTALNz2rW_zAWJ7bwaUoba" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax liabilities</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">2,567,177</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">3,118,221</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iTI_mtDTALNz2rW_zyu0JkCtUaKd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt">Net deferred tax assets</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19,938,124</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,574,463</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 20632 60100 1420263 864969 2278642 2193146 350073 722991 151986 267819 75402 46205 94809 92677 74136 77762 1139836 1469551 159849 1067063 943089 16356545 17513901 45057 20659 23074444 24432718 569143 14740034 143126 207980 1224106 1341105 140449 178107 1059496 1391029 2567177 3118221 19938124 6574463 <p id="xdx_89C_eus-gaap--ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock_z78yCmBw2OQ2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">During our review of the Company’s deferred income tax positions as of December 31, 2023, we determined that the following adjustments are needed to our previously reported December 31, 2022 deferred tax assets and liabilities balances, with no impact to our net deferred tax assets, due to the inadequate review, assessment of and reporting of the Company’s temporary differences between book and taxable income. More specifically, the adjustments are required due to computational errors and incomplete analyses. <span id="xdx_8B8_z2UZrhzZdZ47">Accordingly, we have restated the balances as previously reported, where needed, as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><b> </b></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"> <tr id="xdx_409_eus-gaap--DeferredTaxAssetsNetAbstract_iB_zf9TevkUSvwd" style="vertical-align: bottom"> <td style="border-bottom: Black 1pt solid; font-weight: bold">Deferred Tax Assets:</td><td style="padding-bottom: 1pt; font-weight: bold"> </td> <td colspan="2" id="xdx_49E_20221231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember_zVYwseBHkqp8" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold">2022 (as Previously Reported)</td><td style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold"> </td><td style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold"> </td> <td colspan="2" id="xdx_494_20221231__srt--RestatementAxis__srt--RestatementAdjustmentMember_zKd8tO3BJQT9" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Restatement Adjustments</td><td style="padding-bottom: 1pt; text-align: center; font-weight: bold"> </td><td style="padding-bottom: 1pt; text-align: center; font-weight: bold"> </td> <td colspan="2" id="xdx_49B_20221231_zdOv3dwYIcX5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022 (As Restated)</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_400_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_zPsWlK48TVV1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 55%; text-align: left">Allowance for credit losses</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">60,100</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0945">—</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">60,100</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_408_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_zvQJIe4FF6Ok" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Capitalized R&amp;D</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">864,969</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0949">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">864,969</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--DeferredTaxAssetsTaxCreditCarryforwards_i01I_zMAK1EWVr7Jd" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Credit carryforwards</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,193,146</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0953">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,193,146</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxAssetsInventory_i01I_zJhCTTqktAQ1" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Inventory reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,130,788</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(407,797</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">722,991</td><td style="text-align: left"> </td></tr> <tr id="xdx_401_ecustom--DeferredTaxAssetsAccruedPayroll_i01I_zy4mLxaat6Wb" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Accrued payroll</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">267,819</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0961">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">267,819</td><td style="text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLossReserves_i01I_zV4FfjKangK3" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Loss contracts reserve</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">46,205</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0965">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">46,205</td><td style="text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_i01I_zcnWNb1ndbrh" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Restricted stock</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">160,989</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(68,312</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">92,677</td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_ecustom--DeferredTaxAssetsAcquisitionCost_i01I_z8GrKmnKMDo4" style="vertical-align: bottom; background-color: White"> <td style="text-align: justify">Acquisition costs</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">77,762</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0973">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">77,762</td><td style="text-align: left"> </td></tr> <tr id="xdx_402_ecustom--DeferredTaxAssetsLeaseLiability_i01I_z2IfwQQD6Rz7" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Lease liability</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,469,551</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0977">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,469,551</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_ecustom--DeferredTaxAssetsAccruedLegal_i01I_z0ELLf1pMLNb" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued legal</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">159,849</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0981">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">159,849</td><td style="text-align: left"> </td></tr> <tr id="xdx_401_ecustom--DeferredTaxAssetsDisallowedInterestExpense_i01I_zi6iKQUziVh6" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Disallowed interest expense</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,268,226</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(325,137</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">943,089</td><td style="text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_i01I_zaMnIjO2WORe" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Net operating loss carryforward</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">19,493,530</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(1,979,629</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">17,513,901</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsOther_i01I_zsQkWt9DnYyl" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt">Other</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">20,659</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0993">—</span></td><td style="text-align: left"> </td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">20,659</td><td style="text-align: left"> </td></tr> <tr id="xdx_406_eus-gaap--DeferredTaxAssetsGross_i01I_zpwO7WPhnIb6" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax assets</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">27,213,593</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">(2,780,875</td><td style="text-align: left">)</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">24,432,718</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40A_eus-gaap--DeferredTaxAssetsValuationAllowance_i01NI_di_zBEnYrfUhtH8" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Valuation allowance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(14,916,923</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">176,889</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(14,740,034</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesNetAbstract_iB_zFjOtEHxdVEg" style="vertical-align: bottom; background-color: White"> <td style="text-decoration: underline; font-weight: bold; text-align: left">Deferred Tax Liabilities:</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_402_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01I_zlf5QmSutmk1" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Prepaid expenses</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">207,980</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1009">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">207,980</td><td style="text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--DeferredTaxLiabilitiesTaxDeferredIncome_i01I_zNOK7PXpztZc" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Revenue recognition</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,966,404</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(2,625,299</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,341,105</td><td style="text-align: left"> </td></tr> <tr id="xdx_40C_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01I_z84A2A9Teonj" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Property and equipment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">156,794</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">21,313</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">178,107</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_zyky4V9qTrog" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 1pt">ROU asset</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,391,029</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1021">—</span></td><td style="text-align: left"> </td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">1,391,029</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--DeferredIncomeTaxLiabilities_i01I_zgUCBGz3tXKe" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Deferred tax liabilities</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">5,722,207</td><td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,603,986</td><td style="text-align: left">)</td><td> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">3,118,221</td><td style="text-align: left"> </td></tr> <tr id="xdx_40E_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iI_zVfp5hYNJPJ3" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt">Net deferred tax assets</td><td> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,574,463</td><td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1029">—</span></td><td style="text-align: left"> </td><td> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,574,463</td><td style="text-align: left"> </td></tr> </table> 60100 60100 864969 864969 2193146 2193146 1130788 -407797 722991 267819 267819 46205 46205 160989 -68312 92677 77762 77762 1469551 1469551 159849 159849 1268226 -325137 943089 19493530 -1979629 17513901 20659 20659 27213593 -2780875 24432718 14916923 -176889 14740034 207980 207980 3966404 -2625299 1341105 156794 21313 178107 1391029 1391029 5722207 -2603986 3118221 6574463 6574463 74700000 17300000 14400000 0.80 1 As a result of the Tax Cuts and Jobs Act of 2017 and the Coronavirus Aid, Relief, and Economic Security Act of 2020, federal NOLs arising before January 1, 2018, and NOLs arising after January 1, 2018, are subject to different rules. Our pre-2018 NOLs totaled approximately $60.3 million; these NOLs will expire in varying amounts from 2034 through 2039, if not utilized, and can offset 100% of future taxable income for regular tax purposes. Our NOLs arising in 2018, 2019 and 2020 can generally be carried back five years, carried forward indefinitely and can offset 100% of taxable income for tax years before January 1, 2021 and up to 80% of taxable income for tax years after December 31, 2020. Any NOLs arising on or after January 1, 2021, cannot be carried back, can generally be carried forward indefinitely and can offset up to 80% of future taxable income. 60300000 The state NOLs begin to expire in 2034 -14170891 569143 -13349414 -3.466 <p id="xdx_807_eus-gaap--AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_zOD1fitEZvLf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>12.</b>       <b><span id="xdx_827_zj6o6mVxWGl">ACCRUED EXPENSES</span> </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_893_eus-gaap--ScheduleOfAccruedLiabilitiesTableTextBlock_zJm1HCGu4Z33" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"><span id="xdx_8B9_z4Yp0uFuCj8f">Accrued expenses consists of the following:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 57%"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_499_20231231_zmiGbgogeF9b" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <b>2023</b></span></p></td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_496_20221231_zcK9uFcaE9sd" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--AccountsPayableTradeCurrent_iI_maALCzwjX_zIiRVhMpCJLj" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 33%; text-align: left">Accrued purchases</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">7,132,847</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">4,153,237</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--AccruedSalariesCurrent_iI_maALCzwjX_zM5yrmGOtsKe" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued payroll</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,143,913</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,285,122</td><td style="text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--AccruedInsuranceCurrent_iI_maALCzwjX_zdh631duajqd" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Accrued insurance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">855,190</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">837,371</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--InterestPayableCurrent_iI_maALCzwjX_zztdTUDFcbOd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued interest</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">601,200</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">703,354</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--OtherAccruedLiabilitiesCurrent_iI_maALCzwjX_zrSIYISSNryi" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-indent: -9pt; padding-left: 9pt; padding-bottom: 1pt; text-align: left">Accrued professional fees and other <br/> accrued expenses</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">542,545</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">365,506</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--AccruedLiabilitiesCurrent_iTI_mtALCzwjX_zcVisGzS1F47" style="vertical-align: bottom; background-color: White"> <td style="padding-bottom: 2.5pt">   Total</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">10,275,695</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">7,344,590</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8A1_zYEnRaT5yeKl" style="margin-top: 0; margin-bottom: 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"></p> <p id="xdx_893_eus-gaap--ScheduleOfAccruedLiabilitiesTableTextBlock_zJm1HCGu4Z33" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"><span id="xdx_8B9_z4Yp0uFuCj8f">Accrued expenses consists of the following:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 57%"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_499_20231231_zmiGbgogeF9b" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> <b>2023</b></span></p></td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_496_20221231_zcK9uFcaE9sd" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_40D_eus-gaap--AccountsPayableTradeCurrent_iI_maALCzwjX_zIiRVhMpCJLj" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 33%; text-align: left">Accrued purchases</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">7,132,847</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">4,153,237</td><td style="width: 1%; text-align: left"> </td></tr> <tr id="xdx_404_eus-gaap--AccruedSalariesCurrent_iI_maALCzwjX_zM5yrmGOtsKe" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued payroll</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,143,913</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,285,122</td><td style="text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--AccruedInsuranceCurrent_iI_maALCzwjX_zdh631duajqd" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Accrued insurance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">855,190</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">837,371</td><td style="text-align: left"> </td></tr> <tr id="xdx_400_eus-gaap--InterestPayableCurrent_iI_maALCzwjX_zztdTUDFcbOd" style="vertical-align: bottom; background-color: White"> <td style="text-align: left">Accrued interest</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">601,200</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">703,354</td><td style="text-align: left"> </td></tr> <tr id="xdx_40F_eus-gaap--OtherAccruedLiabilitiesCurrent_iI_maALCzwjX_zrSIYISSNryi" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-indent: -9pt; padding-left: 9pt; padding-bottom: 1pt; text-align: left">Accrued professional fees and other <br/> accrued expenses</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">542,545</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">365,506</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_405_eus-gaap--AccruedLiabilitiesCurrent_iTI_mtALCzwjX_zcVisGzS1F47" style="vertical-align: bottom; background-color: White"> <td style="padding-bottom: 2.5pt">   Total</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">10,275,695</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">7,344,590</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 7132847 4153237 1143913 1285122 855190 837371 601200 703354 542545 365506 10275695 7344590 <p id="xdx_80E_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zxa5tbGrbJnk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>13.</b></span></td><td id="xdx_823_zWFj6r5OaiTa" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>STOCK-BASED COMPENSATION</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_895_eus-gaap--ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_zfmclCLeUgli" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"><span id="xdx_8B8_z3DNdWcqgRc9">Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 55%; margin-right: auto"> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_492_20230101__20231231_zZRbmuhFtRm6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_490_20220101__20221231_zpNskwZhs99d" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_40F_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--CostOfSalesMember_zBb9nks1ob8f" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 29%">Cost of sales</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">65,470</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">36,794</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--SellingGeneralAndAdministrativeExpensesMember_ztzC4WatuBl5" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Selling, general and administrative</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">705,156</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">319,084</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40A_eus-gaap--AllocatedShareBasedCompensationExpense_zrSjE0iPZJD1" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt">Total stock-based compensation expense</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">770,626</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">355,878</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8AC_z8AsDS4AGmAg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The Company grants restricted stock units (“RSUs”) to its board of directors as partial compensation. These RSUs vest quarterly on a straight-line basis over a one-year period.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_89D_eus-gaap--ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_zcC0HFeKV6c3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zAZLdTt6vowl">The following table summarizes activity related to outstanding RSUs</span> for the year ended December 31, 2023:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 69%"> <tr style="vertical-align: bottom"> <td style="text-align: left"> </td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">RSUs</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Weighted Average </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Grant Date </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value<br/> of RSUs </b></span></p></td><td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zbZi3gFsGsp4" style="text-align: right" title="Non vested January 1, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1093">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0GJqx6OATzl" style="text-align: right" title="Non vested January 1, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1095">—</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="width: 38%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0b038DM3jI8" style="width: 12%; text-align: right" title="Granted">173,718</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zNWiN1svDrNi" style="width: 12%; text-align: right" title="Granted">3.43</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zo9o3EZEIWzg" style="text-align: right" title="Vested">(139,969</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zmAXSsGK6e2" style="text-align: right" title="Vested">3.43</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zSvKrQvplx3l" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">(33,749</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEcrf3DbJCRh" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">3.42</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – December 31, 2023</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zfgExuq4o7vk" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1109">—</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zCHW0uB7vHyc" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1111">—</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8A7_zSBwiEpEDtS6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The Company grants shares of common stock (“Restricted Stock Awards”) to select employees. These shares have various vesting dates, ranging from vesting on the grant date to as late as four years from the date of grant. In the event that the employee’s employment is voluntarily terminated prior to certain vesting dates, portions of the shares may be forfeited. </span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At December 31, 2023, the weighted average remaining amortization period was <span id="xdx_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zy0qqrMpUoa1" title="Weighted average remaining amortization period">2.7</span> years.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_895_eus-gaap--ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock_zor3YKxT1ZHd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zj81V2IsoOK7">The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 65%"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Restricted Stock Awards</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Weighted Average</b> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Grant Date </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value of</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Restricted Stock</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Awards </b></span></p></td><td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 34%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zGEEA3pbQTN6" style="width: 12%; text-align: right" title="Non vested January 1, 2022">130,583</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zbQoNgS866kd" style="width: 12%; text-align: right" title="Non vested January 1, 2022">2.37</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zQGtwMhwf1D8" style="text-align: right" title="Granted">111,447</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zrVOW0mlFQFi" style="text-align: right" title="Granted">3.82</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98A_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zaprALb2E7D" style="text-align: right" title="Vested">(39,331</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zHY3utXWsEKa" style="text-align: right" title="Vested">3.07</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zioxWo5NkZBh" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">(35,628</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zQVSAsy3kbJ9" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">2.04</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – December 31, 2023</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td id="xdx_98C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zZTTZKZ4YBg1" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">167,071</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zW29ox2jRKTl" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">3.25</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8AB_zH9shHgjdVWa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company grants shares of common stock (“Performance Restricted Stock Awards” or “PRSAs”) to select officers as part of our long-term incentive program that will result in that number of PRSAs being paid out if the target performance metric is achieved. The award vesting is based on specific performance metrics related to accounts payable delinquency, debt, and net income during the performance period. The PRSAs vest at <span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember__us-gaap--VestingAxis__us-gaap--ShareBasedCompensationAwardTrancheOneMember_z771sxmJFdoj" title="Vesting percentage">0%</span> or <span id="xdx_904_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember__us-gaap--VestingAxis__us-gaap--ShareBasedCompensationAwardTrancheTwoMember_ziMCEQcHrxdf" title="Vesting percentage">100%</span> and all three metrics must be met to vest at <span id="xdx_90A_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember__us-gaap--VestingAxis__us-gaap--ShareBasedCompensationAwardTrancheTwoMember_zmkJ5i0vvar5" title="Vesting percentage">100%</span>. The PRSAs granted under this program will vest on the fourth anniversary of the grant date, subject to the aforementioned performance criteria. At December 31, 2023, the weighted average remaining amortization period was <span id="xdx_900_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zvlxZqHbceU8" title="Weighted average remaining amortization period">2.9</span> years.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p id="xdx_89F_eus-gaap--ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock_zEfteguMCz5b" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zkdiodLAqn1h">The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 65%"> <tr style="vertical-align: bottom"> <td style="text-align: left"> </td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">PRSAs</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Weighted Average</b> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Grant Date </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value<br/> of PRSAs </b></span></p></td><td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 34%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td id="xdx_984_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zvITtrok8re9" style="width: 12%; text-align: right" title="Non vested January 1, 2022">31,737</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zfedDtmaxqXc" style="width: 12%; text-align: right" title="Non vested January 1, 2022">2.65</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zoD0MHfQaLRi" style="text-align: right" title="Granted">48,050</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_za836qf7fuJf" style="text-align: right" title="Granted">3.27</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_z2qjXeqABIn9" style="text-align: right" title="Vested">(20,971</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zLUIkjeaqlRj" style="text-align: right" title="Vested">2.65</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_989_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zmc1z6swok4d" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">(10,766</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_981_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zPCeorMQLiM7" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">2.65</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – December 31, 2023</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td id="xdx_985_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zetQznxOBY47" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">48,050</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zO1690PAvU39" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">3.27</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8AC_zqk84giS1Hjg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The fair value of all RSUs, PRSAs and Restricted Stock Awards is based on the closing price of our common stock on the grant date. All RSUs, PRSAs, and Restricted Stock Awards vest and settle in common stock (on a one-for-one basis).</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">As of December 31, 2023, unamortized stock-based compensation costs related to restricted share arrangements was $<span id="xdx_908_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_c20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zK0WVZP4dxv5" title="Unamortized stock-based compensation costs">274,415</span>.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In addition, our income tax liabilities for 2023 and 2022 were reduced by $<span id="xdx_90D_eus-gaap--EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_iN_di_c20230101__20231231_zjefWMuDOez5" title="Recognized tax benefits on stock-based compensation">174,617</span> and $<span id="xdx_908_eus-gaap--EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_iN_di_c20220101__20221231_zQom0mJqpM4h" title="Recognized tax benefits on stock-based compensation">101,497</span>, respectively, due to recognized tax benefits on stock-based compensation arrangements.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In 2009, the Company adopted the Performance Equity Plan 2009 (the “2009 Plan”). The 2009 Plan reserved <span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_iI_c20091231__us-gaap--PlanNameAxis__custom--PerformanceEquityPlan2009Member_zcvecbx4SpZf" title="Shahes reserved for issuance">500,000</span> common shares for issuance. The 2009 Plan provides for the issuance of either incentive stock options or nonqualified stock options to employees, consultants or others who provide services to the Company. The Company has <span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20231231__us-gaap--PlanNameAxis__custom--PerformanceEquityPlan2009Member_ziAYQKNr0yDj" title="Shares available for grant">2,364</span> shares available for grant under the 2009 Plan as of December 31, 2023.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif">In 2016, the Company adopted the 2016 Long Term Incentive Plan (the “2016 Plan”). The 2016 Plan reserved <span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_iI_c20161231__us-gaap--PlanNameAxis__custom--LTIP2016Member_zFI61MuVizVc">600,000</span> common shares for issuance, provided that, no more than <span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_iI_c20231231__us-gaap--PlanNameAxis__custom--LTIP2016Member__us-gaap--AwardTypeAxis__us-gaap--EmployeeStockOptionMember_z4SfLpr7TMd6">200,000</span> common shares be granted as incentive stock options. Awards may be made or granted to employees, officers, directors and consultants in the form of incentive stock options, non-qualified stock options, stock appreciation rights, restricted stock, restricted stock units and other stock-based awards. Any shares of common stock granted in connection with awards other than stock options and stock appreciation rights are counted against the number of shares reserved for issuance under the 2016 Plan as one and one-half shares of common stock for every one share of common stock granted in connection with such award. Any shares of common stock granted in connection with stock options and stock appreciation rights are counted against the number of shares reserved for issuance under the 2016 Plan as one share for every one share of common stock issuable upon the exercise of such stock option or stock appreciation right awarded. In the fourth quarter of 2020, the Company added <span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_c20201001__20201231__us-gaap--PlanNameAxis__custom--LTIP2016Member_zirUDaD7Wnt8" title="Increase in number of shares reserved for issuance">800,000</span> shares to the 2016 Plan, which increased the number of shares reserved for issuance under the 2016 Plan to <span id="xdx_90B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_iI_c20201231__us-gaap--PlanNameAxis__custom--LTIP2016Member_zCbV16tOxlR">1,400,000</span> shares. In the second quarter of 2023, the Company added an additional <span id="xdx_908_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_c20230401__20230630__us-gaap--PlanNameAxis__custom--LTIP2016Member_zIHijg0OZeBd">800,000</span> shares to the 2016 Plan, which increased the number of shares for reserved for issuance under the 2016 Plan to <span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_iI_c20230630__us-gaap--PlanNameAxis__custom--LTIP2016Member_z4h8Y56SQAH8">2,200,000</span> shares. The Company has <span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20231231__us-gaap--PlanNameAxis__custom--LTIP2016Member_zb7uNS5KomE2">619,055</span> shares available for grant under the 2016 Plan as of December 31, 2023.</span></span></p> <p id="xdx_895_eus-gaap--ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_zfmclCLeUgli" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"><span id="xdx_8B8_z3DNdWcqgRc9">Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; border-collapse: collapse; width: 55%; margin-right: auto"> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_492_20230101__20231231_zZRbmuhFtRm6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2023</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" id="xdx_490_20220101__20221231_zpNskwZhs99d" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr id="xdx_40F_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--CostOfSalesMember_zBb9nks1ob8f" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 29%">Cost of sales</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">65,470</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">36,794</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--SellingGeneralAndAdministrativeExpensesMember_ztzC4WatuBl5" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1pt">Selling, general and administrative</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">705,156</td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td style="border-bottom: Black 1pt solid; text-align: right">319,084</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr id="xdx_40A_eus-gaap--AllocatedShareBasedCompensationExpense_zrSjE0iPZJD1" style="vertical-align: bottom; background-color: White"> <td style="text-align: left; padding-bottom: 2.5pt">Total stock-based compensation expense</td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">770,626</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">355,878</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 65470 36794 705156 319084 770626 355878 <p id="xdx_89D_eus-gaap--ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_zcC0HFeKV6c3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zAZLdTt6vowl">The following table summarizes activity related to outstanding RSUs</span> for the year ended December 31, 2023:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 69%"> <tr style="vertical-align: bottom"> <td style="text-align: left"> </td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">RSUs</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Weighted Average </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Grant Date </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value<br/> of RSUs </b></span></p></td><td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zbZi3gFsGsp4" style="text-align: right" title="Non vested January 1, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1093">—</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0GJqx6OATzl" style="text-align: right" title="Non vested January 1, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1095">—</span></td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="width: 38%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0b038DM3jI8" style="width: 12%; text-align: right" title="Granted">173,718</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zNWiN1svDrNi" style="width: 12%; text-align: right" title="Granted">3.43</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zo9o3EZEIWzg" style="text-align: right" title="Vested">(139,969</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zmAXSsGK6e2" style="text-align: right" title="Vested">3.43</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zSvKrQvplx3l" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">(33,749</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEcrf3DbJCRh" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">3.42</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – December 31, 2023</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zfgExuq4o7vk" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1109">—</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zCHW0uB7vHyc" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022"><span style="-sec-ix-hidden: xdx2ixbrl1111">—</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 173718 3.43 139969 3.43 33749 3.42 P2Y8M12D <p id="xdx_895_eus-gaap--ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock_zor3YKxT1ZHd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zj81V2IsoOK7">The following table summarizes activity related to outstanding Restricted Stock Awards for the year ended December 31, 2023:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 65%"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Restricted Stock Awards</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Weighted Average</b> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Grant Date </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value of</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Restricted Stock</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Awards </b></span></p></td><td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 34%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zGEEA3pbQTN6" style="width: 12%; text-align: right" title="Non vested January 1, 2022">130,583</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zbQoNgS866kd" style="width: 12%; text-align: right" title="Non vested January 1, 2022">2.37</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zQGtwMhwf1D8" style="text-align: right" title="Granted">111,447</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zrVOW0mlFQFi" style="text-align: right" title="Granted">3.82</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98A_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zaprALb2E7D" style="text-align: right" title="Vested">(39,331</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zHY3utXWsEKa" style="text-align: right" title="Vested">3.07</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zioxWo5NkZBh" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">(35,628</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zQVSAsy3kbJ9" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">2.04</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – December 31, 2023</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td id="xdx_98C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zZTTZKZ4YBg1" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">167,071</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zW29ox2jRKTl" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">3.25</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 130583 2.37 111447 3.82 39331 3.07 35628 2.04 167071 3.25 0 1 1 P2Y10M24D <p id="xdx_89F_eus-gaap--ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock_zEfteguMCz5b" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zkdiodLAqn1h">The following table summarizes activity related to outstanding PRSAs for the year ended December 31, 2023:</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 65%"> <tr style="vertical-align: bottom"> <td style="text-align: left"> </td><td style="padding-bottom: 1pt"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">PRSAs</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="padding-bottom: 1pt"> </td> <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Weighted Average</b> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Grant Date </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value<br/> of PRSAs </b></span></p></td><td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 34%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td id="xdx_984_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zvITtrok8re9" style="width: 12%; text-align: right" title="Non vested January 1, 2022">31,737</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zfedDtmaxqXc" style="width: 12%; text-align: right" title="Non vested January 1, 2022">2.65</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zoD0MHfQaLRi" style="text-align: right" title="Granted">48,050</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left">$</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_za836qf7fuJf" style="text-align: right" title="Granted">3.27</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_z2qjXeqABIn9" style="text-align: right" title="Vested">(20,971</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zLUIkjeaqlRj" style="text-align: right" title="Vested">2.65</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td><td style="padding-bottom: 1pt; text-align: left"> </td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_989_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zmc1z6swok4d" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">(10,766</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_981_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zPCeorMQLiM7" style="border-bottom: Black 1pt solid; text-align: right" title="Forfeited">2.65</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – December 31, 2023</span></td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left"> </td><td id="xdx_985_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zetQznxOBY47" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">48,050</td><td style="padding-bottom: 2.5pt; text-align: left"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20231231__us-gaap--AwardTypeAxis__us-gaap--PerformanceSharesMember_zO1690PAvU39" style="border-bottom: Black 2.5pt double; text-align: right" title="Non vested December 31, 2022">3.27</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 31737 2.65 48050 3.27 20971 2.65 10766 2.65 48050 3.27 274415 -174617 -101497 500000 2364 600000 200000 800000 1400000 800000 2200000 619055 <p id="xdx_80F_eus-gaap--PensionAndOtherPostretirementBenefitsDisclosureTextBlock_zwhIwEBTTAY" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>14.</b></span></td><td id="xdx_82C_zZbYWSM8KJF3" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>EMPLOYEE BENEFIT PLAN</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On September 11, 1996, the Company’s board of directors instituted a defined contribution plan under Section 401(k) of the Internal Revenue Code (the “Code”). On October 1, 1998, the Company amended and standardized its plan as required by the Code. Pursuant to the amended plan, qualified employees may contribute a percentage of their pretax eligible compensation to the Plan and the Company will match a percentage of each employee’s contribution. Additionally, the Company has a profit-sharing plan covering all eligible employees. Contributions by the Company are at the discretion of management. The amount of contributions recorded by the Company during the years ended December 31, 2023 and 2022 amounted to $<span id="xdx_906_eus-gaap--DefinedBenefitPlanContributionsByEmployer_c20230101__20231231_zpdKhYJFDAd5">300,600</span> and $<span id="xdx_90C_eus-gaap--DefinedBenefitPlanContributionsByEmployer_c20220101__20221231_ztoZ7ZHh5Tv3">343,077</span>, respectively.</span></p> 300600 343077 <p id="xdx_80D_eus-gaap--ConcentrationRiskDisclosureTextBlock_zoVgO91amFTe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>15.</b></span></td><td id="xdx_82C_zZ2r6preYAO3" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>MAJOR CUSTOMERS</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4.5pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For the year ended December 31, 2023, <span id="xdx_903_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zZHwSGaN2ZSd" title="Concentration risk, percentage">30</span>%, <span id="xdx_90A_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zWtE3exlzhfg" title="Concentration risk, percentage">26</span>%, <span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_zy3a8iSE9uD3" title="Concentration risk, percentage">13</span>%, and <span id="xdx_900_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_z4Ymd8uMTq96" title="Concentration risk, percentage">12</span>% of our revenue was generated from our four largest customers. For the year ended December 31, 2022, <span id="xdx_90B_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zUPxYLDN3caf">35</span>%, <span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zrPik34cIZvh">17</span>%, <span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_z8fPuIotsu3j">12</span>% and <span id="xdx_90D_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_zeDPNjxasG24">10</span>% of our revenue was generated from our four largest customers.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4.5pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4.5pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At December 31, 2023, <span id="xdx_905_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zqTelVoMTmc7" title="Concentration Risk, Percentage">30</span>%, <span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zdwJT1SMFaqi" title="Concentration Risk, Percentage">17</span>%, <span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_z1IYKboFntq9" title="Concentration Risk, Percentage">12</span>%, and <span id="xdx_90C_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_zKnYRtiIuOk8" title="Concentration Risk, Percentage">11</span>% of accounts receivable were due from our four largest customers. At December 31, 2022, <span id="xdx_90D_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zku7OUcgs9aa">38</span>%, <span id="xdx_900_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zZsG3f5AXQR8">21</span>%, <span id="xdx_909_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_z2jZLHDSyH0i">17</span>%, and <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_zUsbqQv0NHEc">13</span>% of accounts receivable were due from our four largest customers.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4.5pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4.5pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At December 31, 2023, <span id="xdx_90B_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_z9e3WC34ctB5">26</span>%, <span id="xdx_909_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_z0zjBcu7s0ha">23</span>%, <span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_ztgcdcAi78J">18</span>%, and <span id="xdx_900_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20231231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_zKnqXv4puGSl">15</span>% of our contract assets were related to our four largest customers. At December 31, 2022, <span id="xdx_903_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zCdK0rplIQJb">27</span>%, <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zXyQWQ0MtD4k">20</span>%, <span id="xdx_903_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_zByCU1hsESu">16</span>%, and <span id="xdx_900_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_zGiOOBUMJd5l">16</span>% of our contract assets were related to our four largest customers.</span></p> 0.30 0.26 0.13 0.12 0.35 0.17 0.12 0.10 0.30 0.17 0.12 0.11 0.38 0.21 0.17 0.13 0.26 0.23 0.18 0.15 0.27 0.20 0.16 0.16 <p id="xdx_804_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zvIRnK5xZG8j" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4.5pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"></td><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>16.</b></span></td><td id="xdx_829_zLpj8vLW5hYi" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>COMMITMENTS AND CONTINGENCIES</b></span></td> </tr></table> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The Company may be involved in various claims, suits, assessments, investigations, and legal proceedings that arise from time to time in the ordinary course of its business. The Company accrues a liability when it is both probable a liability has been incurred and the amount of the loss can be reasonably estimated. The Company reviews these accruals at least quarterly and adjusts them to reflect ongoing negotiations, settlements, rulings, advice of legal counsel, and other relevant information. To the extent new information is obtained and the Company’s views on the probable outcomes of claims, suits, assessments, investigations, or legal proceedings change, changes in the Company’s accrued liabilities would be recorded in the period such determination is made. For some matters, the amount of liability is not probable or the amount cannot be reasonably estimated and, therefore, accruals have not been made. </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Termination of <span style="background-color: white">Shareholder Derivative Actions and Class Action Lawsuit</span></b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"><i>Termination of Shareholder Derivative Actions</i></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">In 2020 and 2021, four shareholder derivative actions were filed against certain current and former members of our board of directors and certain of our current and former officers.</span> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">All four of the actions—each described in further detail below—were <span style="background-color: white">based on substantially the same allegations and claims – specifically, that the defendants allegedly breached their fiduciary duties and/or violated securities laws by permitting false and misleading statements to be included in the Company’s registration statement and prospectus supplements issued in connection with the Company’s October 16, 2018 securities offering and/or by permitting false and misleading statements to be made in the Company’s periodic reports filed between March 22, 2018 and February 14, 2020.</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The first action (captioned <i>Moulton v. McCrosson, et.al.</i>, No. 20-cv-02092) was filed on May 7, 2020, in the U.S. District Court for the Eastern District of New York. It purported to assert derivative claims against the individual defendants for violations of Section 10(b) and 21D of the Exchange Act, breach of fiduciary duty, and unjust enrichment and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct. The complaint also sought declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The second action (captioned <i>Woodyard v. McCrosson, et al.</i>, Index No. 613169/2020) was filed on September 17, 2020, in the Supreme Court of the State of New York (Suffolk County). It purported to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct, along with declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The third action (captioned <i>Berger v. McCrosson, et al.</i>, No. 1:20-cv-05454) was filed on November 10, 2020, in the U.S. District Court for the Eastern District of New York. The complaint, which was based on the shareholder’s inspection of certain corporate books and records, purported to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and sought to implement reforms to the Company’s corporate governance and internal procedures and to recover on behalf of the Company an unspecified amount of monetary damages. The complaint also sought equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">On March 19, 2021, the parties to the <i>Moulton and Berger</i> actions filed a joint stipulation consolidating the actions (under the caption <i>In re CPI Aerostructures Stockholder Derivative Litigation</i>, No. 20-cv-02092) and staying the consolidated action.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The fourth action (captioned <i>Wurst, et al. v. Bazaar, et al.</i>, Index No. 605244/2021) was filed on March 24, 2021, in the Supreme Court of the State of New York (Suffolk County). The complaint purported to assert derivative claims against the individual defendants for breach of fiduciary duty, unjust enrichment, and waste of corporate assets, and sought to recover on behalf of the Company for any liability the Company might incur as a result of the individual defendants’ alleged misconduct. The complaint also sought declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">On June 13, 2022, plaintiffs in the consolidated federal action informed the court that the Company and all defendants had reached an agreement in principle with all plaintiffs to settle the shareholder derivative lawsuits described above. On June 16, 2022, plaintiffs in the consolidated federal action filed an unopposed motion for preliminary approval of the settlement. On February 14, 2023, the magistrate judge recommended that the court grant the motion in its entirety. On March 6, 2023, the Court granted preliminary approval of the proposed settlement.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On May 17, 2023, plaintiffs in the consolidated federal action filed an unopposed motion for final approval of the settlement. <span style="background-color: white">The magistrate judge held a final approval hearing on June 7, 2023. On October 27, 2023, the magistrate judge recommended that the Court grant the final approval motion in its entirety. On December 11, 2023, the Court adopted that recommendation and entered orders granting final approval to the settlement and closing the case.</span></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Pursuant to the settlement agreement, after the federal court’s final approval of the settlement, the plaintiffs in the <i>Woodyard </i>and <i>Wurst</i> state-court actions voluntarily requested that those actions be dismissed. The parties to the <i>Woodyard </i>action filed a stipulation of dismissal on December 15, 2023, and the Court entered an order dismissing the action on December 19, 2023. The parties to the <i>Wurst</i> action filed a stipulation of dismissal on December 14, 2023, and the Court entered an order dismissing the action on December 18, 2023. </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">As part of the settlement, the Company agreed to undertake (or confirm that it has undertaken already) certain corporate governance reforms. In addition, the Company and/or its insurer have agreed to pay a total of $<span id="xdx_908_eus-gaap--LegalFees_c20230516__20230517_zeJz2xHmxJj7" title="Attorneys' fees">585,000</span> in attorneys’ fees to plaintiffs’ counsel. The Company’s insurer paid the full amount due of $<span id="xdx_903_eus-gaap--LegalFees_c20230516__20230517_zgRY8pkpmAp" title="Attorneys' fees">585,000</span>. Because the settlement amount was transferred to counsel for plaintiffs on May 5, 2023 from the escrow account established for this purpose, we relieved from our balance sheet, as of that date, the amounts previously owed from our directors’ and officers’ insurance carrier and to that plaintiff.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Termination of <span style="background-color: white">Class Action Lawsuit</span></i></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">A consolidated class action lawsuit (captioned <i>Rodriguez v. CPI Aerostructures, Inc., et al.</i>, No. 20-cv-01026) was filed in the U.S. District Court for the Eastern District of New York against the Company; Douglas McCrosson, the Company’s former Chief Executive Officer; Vincent Palazzolo, the Company’s former Chief Financial Officer; and the two underwriters of the Company’s October 16, 2018 offering of common stock, Canaccord Genuity LLC and B. Riley FBR. The Amended Complaint in the action asserted claims on behalf of two plaintiff classes: (i) purchasers of the Company’s common stock issued pursuant to and/or traceable to the Company’s offering conducted on or about October 16, 2018; and (ii) purchasers of the Company’s common stock between March 22, 2018 and February 14, 2020. The Amended Complaint alleged that the defendants violated Sections 11, 12(a)(2), and 15 of the Securities Act by negligently permitting false and misleading statements to be included in the registration statement and prospectus supplements issued in connection with its October 16, 2018 securities offering. The Amended Complaint also alleged that the defendants violated Sections 10(b) and 20(a) of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), and Rule 10b-5 promulgated by the SEC, by making false and misleading statements in the Company’s periodic reports filed between March 22, 2018 and February 14, 2020. Plaintiff sought unspecified compensatory damages, including interest; rescission or a rescissory measure of damages; unspecified equitable or injunctive relief; and costs and expenses, including attorney’s fees and expert fees. On February 19, 2021, the Company moved to dismiss the Amended Complaint. Plaintiff submitted a brief in opposition to the motion to dismiss on April 23, 2021. </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">On May 20, 2021, the parties reached a settlement in the amount of $<span id="xdx_900_eus-gaap--LitigationSettlementAmountAwardedToOtherParty_c20210519__20210520_zxxFmkGHvJpk" title="Settlement amount">3,600,000</span>, subject to court approval. On July 9, 2021, Plaintiff filed an unopposed motion for preliminary approval of the settlement. On November 10, 2021, a magistrate judge recommended that the court grant the motion for preliminary approval in its entirety. The Court adopted the recommendation on May 27, 2022, and entered an order granting preliminary approval of the settlement on June 7, 2022. On August 5, 2022, the Plaintiff filed an unopposed motion for final approval. The magistrate judge held a hearing on the final approval motion on September 9, 2022. On February 16, 2023, the magistrate judge recommended that the Court grant the final approval motion in its entirety. The Court adopted that recommendation in its entirety on March 10, 2023, and terminated the case on March 13, 2023. On May 5, 2023, the Settlement Amount was transferred to plaintiff’s counsel from the escrow account established for this purpose.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"><b>Litigation Settlement Obligation and Insurance Recovery Receivable Pertaining to the Class Action Lawsuit and Shareholder Derivative Action</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The attorneys’ fees for both the class action lawsuit and the shareholder derivative actions were covered and paid by our directors’ and officers’ insurance carrier, after satisfaction of our $<span id="xdx_908_ecustom--DirectorsAndOfficersInsuranceRetentionAmount_iI_c20231231_zTzcYxHyXgtd" title="Directors and officers insurance retention amount">750,000</span> retention. As of December 31, 2023, we had previously paid and accrued to our financial statements covered expenses totaling $<span id="xdx_903_eus-gaap--LitigationSettlementExpense_c20230101__20231231_zGKdLTgLpRF2" title="Covered settlement amount">750,000</span>, and had therefore met our insurance carrier’s directors’ and officers’ retention requirement, which capped the Company’s expenses pertaining to the class action suit at $<span id="xdx_908_ecustom--DirectorsAndOfficersInsuranceRetentionAmount_iI_c20231231_zlwzQliOCNoh" title="Directors and officers insurance retention amount">750,000</span>. Because the Settlement Amount was transferred to counsel for plaintiff in the class action lawsuit on May 5, 2023, from the escrow account established for this purpose, we have relieved from our balance sheet, as of that date, the amounts previously owed from our directors’ and officers’ insurance carrier and to that plaintiff.</span></p> 585000 585000 3600000 750000 750000 750000