0001387131-23-010026.txt : 20230821 0001387131-23-010026.hdr.sgml : 20230821 20230821172841 ACCESSION NUMBER: 0001387131-23-010026 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 64 CONFORMED PERIOD OF REPORT: 20230630 FILED AS OF DATE: 20230821 DATE AS OF CHANGE: 20230821 FILER: COMPANY DATA: COMPANY CONFORMED NAME: CPI AEROSTRUCTURES INC CENTRAL INDEX KEY: 0000889348 STANDARD INDUSTRIAL CLASSIFICATION: AIRCRAFT PART & AUXILIARY EQUIPMENT, NEC [3728] IRS NUMBER: 112520310 STATE OF INCORPORATION: NY FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-11398 FILM NUMBER: 231190195 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-Q 1 cpi-10q_063023.htm QUARTERLY REPORT
0000889348 false --12-31 2023 Q2 0000889348 2023-01-01 2023-06-30 0000889348 2023-08-17 0000889348 2023-06-30 0000889348 2022-12-31 0000889348 2023-04-01 2023-06-30 0000889348 2022-04-01 2022-06-30 0000889348 2022-01-01 2022-06-30 0000889348 cvu:UnrestrictedSharesMember 2023-04-01 2023-06-30 0000889348 cvu:UnrestrictedSharesMember 2022-04-01 2022-06-30 0000889348 cvu:UnrestrictedSharesMember 2023-01-01 2023-06-30 0000889348 cvu:UnrestrictedSharesMember 2022-01-01 2022-06-30 0000889348 cvu:RestrictedSharesMember 2023-04-01 2023-06-30 0000889348 cvu:RestrictedSharesMember 2022-04-01 2022-06-30 0000889348 cvu:RestrictedSharesMember 2023-01-01 2023-06-30 0000889348 cvu:RestrictedSharesMember 2022-01-01 2022-06-30 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-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-03-31 0000889348 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0000889348 2022-01-01 2022-03-31 0000889348 us-gaap:CommonStockMember 2022-04-01 2022-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-04-01 2022-06-30 0000889348 us-gaap:RetainedEarningsMember 2022-04-01 2022-06-30 0000889348 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0000889348 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0000889348 2023-01-01 2023-03-31 0000889348 us-gaap:CommonStockMember 2023-04-01 2023-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0000889348 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0000889348 us-gaap:CommonStockMember 2022-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-03-31 0000889348 us-gaap:RetainedEarningsMember 2022-03-31 0000889348 2022-03-31 0000889348 us-gaap:CommonStockMember 2022-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-06-30 0000889348 us-gaap:RetainedEarningsMember 2022-06-30 0000889348 2022-06-30 0000889348 us-gaap:CommonStockMember 2023-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0000889348 us-gaap:RetainedEarningsMember 2023-03-31 0000889348 2023-03-31 0000889348 us-gaap:CommonStockMember 2023-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0000889348 us-gaap:RetainedEarningsMember 2023-06-30 0000889348 cvu:AerostructureMember 2023-04-01 2023-06-30 0000889348 cvu:AerostructureMember 2022-04-01 2022-06-30 0000889348 cvu:AerostructureMember 2023-01-01 2023-06-30 0000889348 cvu:AerostructureMember 2022-01-01 2022-06-30 0000889348 cvu:AerosystemsMember 2023-04-01 2023-06-30 0000889348 cvu:AerosystemsMember 2022-04-01 2022-06-30 0000889348 cvu:AerosystemsMember 2023-01-01 2023-06-30 0000889348 cvu:AerosystemsMember 2022-01-01 2022-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2023-04-01 2023-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2022-04-01 2022-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2023-01-01 2023-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2022-01-01 2022-06-30 0000889348 us-gaap:TransferredOverTimeMember 2023-04-01 2023-06-30 0000889348 us-gaap:TransferredOverTimeMember 2022-04-01 2022-06-30 0000889348 us-gaap:TransferredOverTimeMember 2023-01-01 2023-06-30 0000889348 us-gaap:TransferredOverTimeMember 2022-01-01 2022-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2023-04-01 2023-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2022-04-01 2022-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-06-30 0000889348 2023-07-01 2023-06-30 0000889348 us-gaap:CostOfSalesMember 2023-04-01 2023-06-30 0000889348 us-gaap:CostOfSalesMember 2022-04-01 2022-06-30 0000889348 us-gaap:CostOfSalesMember 2023-01-01 2023-06-30 0000889348 us-gaap:CostOfSalesMember 2022-01-01 2022-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-04-01 2023-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-04-01 2022-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000889348 cvu:ForfeitedRestrictedStockMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000889348 us-gaap:RestrictedStockMember 2022-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2022-12-31 0000889348 us-gaap:RestrictedStockMember 2023-01-01 2023-06-30 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-06-30 0000889348 us-gaap:RestrictedStockMember 2023-06-30 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-06-30 0000889348 us-gaap:CarryingReportedAmountFairValueDisclosureMember 2023-06-30 0000889348 us-gaap:EstimateOfFairValueFairValueDisclosureMember 2023-06-30 0000889348 us-gaap:CarryingReportedAmountFairValueDisclosureMember 2022-12-31 0000889348 us-gaap:EstimateOfFairValueFairValueDisclosureMember 2022-12-31 0000889348 cvu:BankUnitedMember us-gaap:RevolvingCreditFacilityMember 2016-03-24 0000889348 cvu:BankUnitedMember cvu:TermLoanMember 2016-03-24 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 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 2023-06-30 0000889348 cvu:BankUnitedMember srt:MinimumMember 2023-01-01 2023-06-30 0000889348 cvu:BankUnitedMember 2023-01-01 2023-06-30 0000889348 cvu:BankUnitedMember cvu:RevolvingLoanAndTermLoanMember us-gaap:PrimeRateMember 2023-01-01 2023-06-30 0000889348 us-gaap:PrimeRateMember 2023-06-30 0000889348 cvu:BankUnitedMember cvu:RevolvingLoanAndTermLoanMember 2023-06-30 0000889348 cvu:BankUnitedMember us-gaap:RevolvingCreditFacilityMember 2023-06-30 0000889348 cvu:BankUnitedMember us-gaap:RevolvingCreditFacilityMember 2022-12-31 0000889348 cvu:TermLoanMember 2023-06-30 0000889348 cvu:TermLoanMember 2022-12-31 0000889348 cvu:BankUnitedMember 2016-03-25 2023-06-30 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2023-01-01 2023-06-30 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2023-01-01 2023-06-30 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2022-01-01 2022-06-30 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2022-01-01 2022-06-30 0000889348 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2022-01-01 2022-06-30 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2023-01-01 2023-06-30 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2023-01-01 2023-06-30 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2023-01-01 2023-06-30 0000889348 cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2023-01-01 2023-06-30 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 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerOneMember 2023-01-01 2023-06-30 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerTwoMember 2023-01-01 2023-06-30 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerThreeMember 2023-01-01 2023-06-30 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFourMember 2023-01-01 2023-06-30 0000889348 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember cvu:CustomerFiveMember 2023-01-01 2023-06-30 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 2021-05-19 2021-05-20 0000889348 2023-05-16 2023-05-17 iso4217:USD xbrli:shares iso4217:USD xbrli:shares xbrli:pure

 

 

 

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, DC 20549

 

FORM 10-Q

 

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

 

For the quarterly period ended June 30, 2023

 

OR

 

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

For the transition period from ___________ to __________

 

Commission File Number: 1-11398

 

 

CPI AEROSTRUCTURES, INC.

(Exact name of registrant as specified in its charter)

 

New York 11-2520310
(State or other jurisdiction (IRS Employer Identification Number)
of incorporation or organization)  

 

91 Heartland Blvd., Edgewood, NY 11717
(Address of principal executive offices) (Zip code)

 

(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, $0.001 par value per share CVU NYSE American

 

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 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, or a smaller reporting 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 is a shell company (as defined in Rule 12b-2 of the Exchange Act). Yes ☐ No

 

As of August 17, 2023, the registrant had 12,639,244 shares of common stock, $.001 par value, outstanding.

 

 

 

 

 

  INDEX
   
Part I - Financial Information  
   
Item 1 – Consolidated Financial Statements (Unaudited) 3
   
Condensed Consolidated Balance Sheets as of June 30, 2023 (Unaudited) and December 31, 2022 3
   
Condensed Consolidated Statements of Operations for the Three and Six Months ended June 30, 2023 and 2022 (Unaudited) 4
   
Condensed Consolidated Statements of Shareholders’ Equity (Deficit) for the Six Months ended June 30, 2023 and 2022 (Unaudited) 5
   
Condensed Consolidated Statements of Cash Flows for the Six Months ended June 30, 2023 and 2022 (Unaudited) 6
   
Notes to Condensed Consolidated Financial Statements (Unaudited) 7
   
Item 2 – Management’s Discussion and Analysis of Financial Condition and Results of Operations 21
   
Item 3 – Quantitative and Qualitative Disclosures About Market Risk 30
   
Item 4 – Controls and Procedures 30
   
Part II - Other Information  
   
Item 1 – Legal Proceedings 33
   
Item 1A – Risk Factors 33
   
Item 2 – Unregistered Sales of Equity Securities and Use of Proceeds 33
   
Item 3 – Defaults Upon Senior Securities 33
   
Item 4 – Mine Safety Disclosures 33
   
Item 5 – Other Information 33
   
Item 6 – Exhibits 34
   
Signatures 35
   
Exhibits  

 

 

 

 

Part I - Financial Information

 

Item 1 - Consolidated Financial Statements

 

 

CONDENSED CONSOLIDATED BALANCE SHEETS

 

   June 30,     
   2023
(Unaudited)
  

December 31,

2022

 
         
ASSETS          
Current Assets:          
Cash  $3,080,672   $3,847,225 
Accounts receivable, net   8,621,301    4,857,772 
Insurance recovery receivable       3,600,000 
Contract assets   30,962,061    27,384,540 
Inventory   1,918,906    2,493,069 
Refundable income taxes   40,000    40,000 
Prepaid expenses and other current assets   565,714    975,830 
Total Current Assets   45,188,654    43,198,436 
           
Operating lease right-of-use assets   5,646,483    6,526,627 
Property and equipment, net   950,732    1,124,556 
Deferred tax asset   6,279,101    6,574,463 
Goodwill   1,784,254    1,784,254 
Other assets   234,334    238,744 
Total Assets  $60,083,558   $59,447,080 
           
LIABILITIES AND SHAREHOLDERS’ EQUITY          
Current Liabilities:          
Accounts payable  $11,734,379   $8,029,996 
Accrued expenses   5,314,339    7,344,590 
Litigation settlement obligation       3,600,000 
Contract liabilities   8,605,354    6,001,726 
Loss reserve   250,516    576,549 
Current portion of line of credit   2,640,000    1,200,000 
Current portion of long-term debt   221,172    1,719,766 
Operating lease liabilities, current   1,921,803    1,817,811 
Income tax payable   16,874    11,396 
Total Current Liabilities   30,704,437    30,301,834 
           
Line of credit, net of current portion   18,360,000    19,800,000 
Long-term operating lease liabilities   4,121,087    5,077,235 
Long-term debt, net of current portion   41,484    70,981 
Total Liabilities   53,227,008    55,250,050 
           
Shareholders’ Equity:          
Common stock - $.001 par value; authorized 50,000,000 shares, 12,727,167 and 12,506,795 shares, respectively, issued and outstanding   12,727    12,507 
Additional paid-in capital   73,708,368    73,189,449 
Accumulated deficit   (66,864,545)   (69,004,926)
Total Shareholders’ Equity   6,856,550    4,197,030 
Total Liabilities and Shareholders’ Equity  $60,083,558   $59,447,080 

 

See Notes to Condensed Consolidated Financial Statements

 

3

 

 

CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED)

                 
  

For the Three Months Ended

June 30,

   For the Six Months Ended
June 30,
 
   2023   2022   2023   2022 
Revenue  $20,547,555   $18,925,406   $42,564,223   $39,060,503 
Cost of sales   15,943,555    15,265,716    33,297,707    31,966,204 
Gross profit   4,604,000    3,659,690    9,266,516    7,094,299 
                     
Selling, general and administrative expenses   2,806,480    2,697,392    5,675,538    5,835,049 
Income from operations   1,797,520    962,298    3,590,978    1,259,250 
                     
Interest expense   541,655    438,437    1,152,551    767,045 
Income before provision for income taxes   1,255,865    523,861    2,438,427    492,205 
                     
Provision for income taxes   98,789    6,225    298,046    7,500 
Net income  $1,157,076   $517,636   $2,140,381   $484,705 
                     
Income per common share, basic:                    
  Income per common share-unrestricted shares  $0.09   $0.04   $0.17   $0.04 
  Income per common share-restricted shares  $0.09   $0.04   $0.17   $0.04 
                     
Income per common share, diluted  $0.09   $0.04   $0.17   $0.04 
                     
Shares used in computing income per common share, basic:                    
  Unrestricted shares   12,429,894    12,305,939    12,412,068    12,275,306 
  Restricted shares   128,899    133,061    127,584    125,975 
    Total shares   12,558,793    12,439,000    12,539,652    12,401,281 
                     
Shares used in computing income per common share, diluted   12,625,241    12,534,058    12,606,100    12,496,339 

 

See Notes to Condensed Consolidated Financial Statements

 

4

 

 

CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY (DEFICIT) (UNAUDITED)

 

   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 Loss               (32,931)   (32,931)
Stock-based compensation expense   47,527    47    25,835        25,882 
Balance at March 31, 2022   12,383,210   $12,383   $72,859,577   $(78,214,082)  $(5,342,122)
Net Income               517,636    517,636 
Stock-based compensation expense   66,117    66    137,432        137,498 
Balance at June 30, 2022   12,449,327   $12,449   $72,997,009   $(77,696,446)  $(4,686,988)
                          
Balance at January 1, 2023   12,506,795   $12,507   $73,189,449   $(69,004,926)   4,197,030 
Net Income               983,305    983,305 
Stock-based compensation expense   19,247    19    338,904        338,923 
Balance at March 31, 2023   12,526,042   $12,526   $73,528,353   $(68,021,621)  $5,519,258 
Net Income               1,157,076    1,157,076 
Common stock forfeited   (41,073)   (41)   (7,406)       (7,447)
Stock-based compensation expense   242,198    242    187,421        187,663 
Balance at June 30, 2023   12,727,167   $12,727   $73,708,368   $(66,864,545)  $6,856,550 

 

See Notes to Condensed Consolidated Financial Statements

 

5

 

 

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)

 

         
   For the Six Months Ended
June 30,
 
   2023   2022 
Cash flows from operating activities:          
Net income  $2,140,381   $484,705 
Adjustments to reconcile net income to net cash provided by (used in) operating activities:          
Depreciation and amortization   233,090    343,750 
Amortization of debt issuance cost   58,743    46,888 
Stock-based compensation   519,139    163,380 
Deferred income taxes   295,362     
Bad debt expense       3,189 
Changes in operating assets and liabilities:          
(Increase) decrease in accounts receivable   (3,763,529)   117,972 
Decrease (increase) in insurance receivable   3,600,000    (650,693)
Increase in contract assets   (3,577,521)   (3,031,844)
Decrease in inventory   574,163    441,144 
Decrease in prepaid expenses and other assets   410,116    116,107 
Increase in refundable income taxes        (2,335) 
Decrease in operating right-of-use assets   880,144    858,812 
Increase (decrease) in accounts payable and accrued expenses   1,674,132    (126,884)
Increase (decrease) in contract liabilities   2,603,628    (94,934)
(Decrease) increase in settlement of litigation obligation   (3,600,000)   596,741 
Decrease in lease liabilities   (852,156)   (780,274)
Increase (decrease) in income taxes payable   5,478    (5,165)
Decrease in loss reserve   (326,033)   (577,166)
Net cash provided by (used in) operating activities   875,137    (2,096,607)
           
Cash flows from investing activities:          
Purchase of property and equipment   (59,265)   (25,317)
Net cash used in investing activities   (59,265)   (25,317)
           
Cash flows from financing activities:          
Payments on long-term debt   (1,528,091)   (1,560,881)
Debt issuance costs paid   (54,334)    
Net cash used in financing activities   (1,582,425)   (1,560,881)
           
Net decrease in cash   (766,553)   (3,682,805)
Cash at beginning of period   3,847,225    6,308,866 
Cash at end of period  $3,080,672   $2,626,061 
           
Supplemental disclosures of cash flow information:          
Cash paid during the period for:          
Interest  $1,193,411   $645,423 
Income taxes  $   $ 

 

See Notes to Condensed Consolidated Financial Statements

 

6

 

 

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

(UNAUDITED)

 

1. INTERIM FINANCIAL STATEMENTS

 

Basis of Presentation

 

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

 

The condensed consolidated interim financial statements of the Company as of June 30, 2023 and for the six months ended June 30, 2023 and 2022 have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). Certain information and notes normally included in financial statements prepared in accordance with generally accepted accounting principles in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations. The consolidated balance sheet at December 31, 2022 has been derived from audited consolidated financial statements, but does not include all of the information and notes required by U.S. GAAP. The Company believes that the disclosures are adequate to make the information presented not misleading.

 

All adjustments that, in the opinion of the management, are necessary for a fair presentation for the periods presented have been reflected. Such adjustments are of a normal, recurring nature. It is suggested that these consolidated financial statements be read in conjunction with the consolidated financial statements and notes thereto included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “Form 10-K”). The results of operations for interim periods are not necessarily indicative of the operating results to be expected for the full year or any other interim period.

 

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.

 

The Company maintains its cash in four financial institutions. The balances are insured by the Federal Deposit Insurance Corporation. From time to time, the Company’s balances may exceed insurance limits. As of June 30, 2023, the Company had $2,892,826 of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly creditworthy.

 

Recently Issued Accounting Standards - Adopted

 

In the first quarter of 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 significant impact on the Company’s financial statements.

 

 

7

 

 

2. REVENUE RECOGNITION

 

In accordance with Accounting Standards Codification Topic 606 (“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 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.

 

Contracts with Customers and Performance Obligations

 

The majority of the Company’s revenues are from long-term contracts with the U.S. government as well military 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 and military contractors typically are subject to the Federal Acquisition Regulation, 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 contracts is 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.

 

8

 

 

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; in most cases this will be based on shipping terms.

 

Contract Estimates

 

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

 

Capitalized Contract Acquisition Costs and Fulfillment Costs

 

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

 

9

 

 

Disaggregation of Revenue

 

The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method:

 

   Three months ended
June 30,
   Six months ended
June 30,
 
   2023   2022   2023   2022 
Aerostructures  $8,425,795   $9,819,902   $18,499,320   $19,006,695 
Aerosystems   7,567,883    5,984,045    17,120,134    12,670,873 
Kitting and Supply Chain Management   4,553,877    3,121,459    6,944,769    7,382,935 
   $20,547,555   $18,925,406   $42,564,223   $39,060,503 

 

   Three months ended
June 30,
   Six months ended
June 30,
 
   2023   2022   2023   2022 
Revenue recognized using over time revenue recognition model  $18,669,843   $16,565,696   $39,300,073   $35,060,893 
Revenue recognized using point in time revenue recognition model   1,877,712    2,359,710    3,264,150    3,999,610 
   $20,547,555   $18,925,406   $42,564,223   $39,060,503 

 

10

 

 

Transaction Price Allocated to Remaining Performance Obligations

 

As of June 30, 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 June 30, 2023. The majority of the Company’s performance obligations have an average duration up to approximately three years.

 

 

3. CONTRACT ASSETS AND LIABILITIES

 

Contract assets represent revenue recognized on contracts in excess of amounts invoiced to the customers 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 as well as military contractor 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 and military contractor 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.

    June 30,     December 31,  
    2023     2022  
Contract assets   $ 30,962,061     $ 27,384,540  
Contract liabilities     8,605,354       6,001,726  
Net Contract assets   $ 22,356,707     $ 21,382,814  

 

Revenue recognized for the six months ended June 30, 2023 and 2022 that was included in the contract liabilities balance as of January 1, 2023 and 2022, respectively, was approximately $1.9 million and $3.2 million, respectively.

 

 

4. INVENTORY

 

The components of inventory consisted of the following:

 

   

June 30,

2023

   

December 31,

2022

 
Raw materials   $ 1,822,930     $ 1,892,157  
Work in progress     216,908       685,438  
Finished goods     2,293,217       3,038,859  
Gross inventory     4,333,055       5,616,454  
Inventory reserves     (2,414,149 )     (3,123,386 )
Inventory, net   $ 1,918,906     $ 2,493,069  

 

 

 11

 

 

5. STOCK-BASED COMPENSATION

 

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

 

                                 
    Three months ended
June 30,
    Six months ended
June 30,
 
    2023     2022     2023     2022  
Cost of sales   $ 37,171     $ 6,471     $ 52,248     $ 20,006  
Selling, general and administrative     143,045       131,027       466,891       143,374  
Total stock-based compensation expense   $ 180,216     $ 137,498     $ 519,139     $ 163,380  

 

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 Company grants shares of common stock (“Restricted Stock Awards”) to select employees. In the event that the employee’s employment is voluntarily terminated prior to certain vesting dates, portions of the shares may be forfeited. In addition, if certain Company performance criteria are not achieved, portions of these shares may be forfeited. 85,748 shares were forfeited during the six months ended June 30, 2022, resulting in a reduction to stock-based compensation expense for the six months ended June 30, 2022 in selling, general and administrative expense of $263,148.

 

The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023:

 

      Restricted Stock Awards    

Weighted Average

Grant Date

Fair Value of Restricted Stock Awards

    RSUs    

Weighted Average

Grant Date

Fair Value of RSUs

 
Non-vested – January 1, 2023       239,184     $ 2.32           $  
Granted       212,902     $ 3.82       170,042     $ 3.44  
Vested       (82,769)     $ 2.83       (69,845 )   $ 3.42  
Forfeited           $       (33,749 )   $ 3.42  
Non-vested – June 30, 2023       369,317     $ 3.25       66,448     $ 3.47  

 

As of June 30, 2023, unamortized stock-based compensation costs related to restricted share arrangements was $514,880.

 

 12

 

 

6. FAIR VALUE
   

Fair Value

 

At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments.

 

    June 30, 2023  
   

Carrying

Amount

    Fair Value  
Debt            
Short-term borrowings and long-term debt   $ 21,262,656     $ 21,262,656  
                 
    December 31, 2022  
   

Carrying

Amount

    Fair Value  
Debt            
Short-term borrowings and long-term debt   $ 22,790,747     $ 22,790,747  
                 

 

We estimated the fair value of debt using market quotes and calculations based on market rates.

 

 13

 

 

7. INCOME PER COMMON SHARE
   

The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the two-class 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. During the three months and six months ended June 30, 2023 and 2022, respectively, and as of June 30, 2023 and 2022, respectively, the Company had restricted shares of common stock that were considered participating securities and unrestricted shares of common stock outstanding. Earnings and losses are shared pro rata.

 

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. Incremental shares of 66,448 were used in the calculation of diluted income per common share for both the three and six months ended June 30, 2023.

 

For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows:

 

                                 
    Three months ended
June 30,
    Six months ended
June 30,
 
    2023     2022     2023     2022  
Net income   $ 1,157,076     $ 517,636     $ 2,140,381     $ 484,705  
                                 
Income per common share, basic:                                
Income per common share-unrestricted shares   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
Income per common share-restricted shares   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
                                 
Income per common share, diluted   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
                                 
Shares used in computing income per common share, basic:                                
Unrestricted shares     12,429,894       12,305,939       12,412,068       12,275,306  
Restricted shares     128,899       133,061       127,584       125,975  
Total shares     12,558,793       12,439,000       12,539,652       12,401,281  
                                 
Shares used in computing income per common share, diluted     12,625,241       12,534,058       12,606,100       12,496,339  

 

 

 

8. DEBT
   

On March 24, 2016, the Company entered into the Amended and Restated Credit Agreement with the lenders named therein and BankUnited N.A. as Sole Arranger, Agent and Collateral Agent (as amended from time to time, 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 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 was 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 June 30, 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, which the Company entered into on October 28, 2021 in two installments, the first installment paid on June 1, 2023 in the amount of $116,667 and the second installment 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 installments and interest accrued were paid on such dates).

 

 14

 

 

The Credit Agreement, as amended, requires us to maintain the following financial covenants: (a) minimum debt service coverage ratio of no less than 1.5 to 1.0 for trailing four fiscal quarter periods; (b) maximum leverage ratio of no less than 4.0 to 1.0 for trailing four fiscal quarter periods; (c) minimum net income after taxes as of the end of each fiscal quarter being no less than $1.00; and (d) a minimum adjusted EBITDA at the end of each fiscal quarter of no less than $1.0 million. The additional principal payments, increase in interest and the Amendment Fee provided for in the Eight Amendment and Ninth Amendment to the Credit Agreement, which the Company entered into on April 12, 2022 are excluded for purposes of calculating compliance with each of the financial covenants.

 

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.25% as of June 30, 2023 and as such, the Company’s interest rate on the Revolving Loan and Term Loan was 11.75% as of June 30, 2023.

 

As of June 30, 2023 and December 31, 2022, the Company had $21,000,000 million outstanding under the Revolving Loan. $2,640,000 of the Revolving Loan is payable by June 30, 2024 and the remaining balance of $18,360,000 of the revolving line of credit matures and is payable by November 30, 2024.

 

The Term Loan had an aggregate principal amount of $133,333, payable in monthly installments, as defined in the Credit Agreement, as of June 30, 2023 as compared to an aggregate principal amount outstanding as of December 31, 2022 of $1,583,333.

 

The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows:

 

For the Year Ending December 31,        
Remainder of 2023     $ 181,827  
2024       51,801  
2025       29,028  
Total                        $ 262,656  

 

Included in long-term debt are financing leases and other notes payable of $129,323 and $207,414 at June 30, 2023 and December 31, 2022, respectively, including a current portion of $87,838 and $136,433, respectively.

 

 15

 

 

The Company has cumulatively paid approximately $962,000 of total debt issuance costs in connection with the BankUnited Facility, of which approximately $126,000 is included in other assets at June 30, 2023.

 

 16

 

 

9. MAJOR CUSTOMERS
   

During the six months ended June 30, 2023, our two largest customers accounted for 32% and 29% of revenue. During the six months ended June 30, 2022, our three largest customers accounted for 36%, 14% and 11% of revenue.

 

At June 30, 2023, 22%, 19%, 17% and 15% of our contract assets were from four of our largest customers. At December 31, 2022, 27%, 20%, 16%, and 16% of our contract assets were related to our four largest customers.

 

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

 

 

10. LEASES
   

The Company leases manufacturing and office space under an agreement classified as an operating lease. On November 10, 2021, 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 six months ended June 30, 2023 and 2022, the Company’s operating lease expense was $1,084,968 and $1,051,911, respectively. For the three months ended June 30, 2023 and 2022, the Company’s operating lease expense was $550,942 and $516,920, respectively.

 

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

 

For the Year Ending December 31,        
Remainder of 2023     $ 1,096,220  
2024       2,228,784  
2025       2,283,354  
2026       850,276  
2027       111,065  
Thereafter       9,228  
Total undiscounted operating lease payments       6,578,927  
Less imputed interest       (536,037 )
Present value of operating lease payments     $ 6,042,890  

 

 17

 

 

The following table sets forth the ROU assets and operating lease liabilities as of:

 

    June 30,
2023
    December 31,
2022
 
Assets            
ROU assets, net   $ 5,646,483     $ 6,526,627  
                 
Liabilities                
Current operating lease liabilities   $ 1,921,803     $ 1,817,811  
Long-term operating lease liabilities     4,121,087       5,077,235  
Total lease liabilities   $ 6,042,890     $ 6,895,046  

 

The Company’s weighted average remaining lease term for its operating leases is 2.9 years as of June 30, 2023. The Company’s weighted average discount rate for its operating leases is 5.4% as of June 30, 2023.

 

 

11. 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’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.

 

The provision for income tax for the six months ended June 30, 2023 and 2022 was $298,046 and $7,500, respectively. The provision for income tax for the three months ended June 30, 2023 and 2022 was $98,789 and $6,225, respectively. The increase in the year-over-year provision for income tax is the result of the Company’s valuation allowance on its deferred tax asset being partially released at December 31, 2022, resulting in the periodic change in the deferred asset for the periods subsequent to December 31, 2022 being recorded through the Company’s statement of operations during such periods. For the three and six months ending June 30, 2022 the company’s deferred tax assets were fully offset by the valuation allowance, therefore there was only minimum state tax income expense recorded to the Company’s statement of operations during those periods.

 

The effective income tax rate for the six months ended June 30, 2023 is 12.2%. The difference between the effective income tax rate for the six months ended June 30, 2023 and the statutory income tax rate of 21% for the six months ended June 30, 2023 is due to the estimated R&D credit, the partial release of approximately $121,000 of the Company’s valuation allowance on its deferred tax asset recorded during the three months ending June 30, 2023, state income taxes and permanent tax differences.

 

 

12. COMMITMENTS AND CONTINGENCIES
   

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 Company’s registration statement and prospectus supplements issued in connection with the Company’s 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.

 

 18

 

 

On May 20, 2021, the parties reached a settlement in the amount of $3,600,000 (the “Settlement Amount”), 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, 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.

 

Shareholder Derivative Action

 

Four shareholder derivative actions, each based on substantially the same facts as those alleged in the class action discussed above, have been filed against certain current and former members of our board of directors and certain of our current and former officers.

 

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 purports 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 seeks 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 seeks declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. On October 26, 2020, plaintiff filed an amended complaint. On January 27, 2021, the court stayed the action pursuant to a joint stipulation filed by the parties.

 

 19

 

 

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 purports to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and seeks 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. On December 22, 2020, the parties filed a joint stipulation staying the action pending further developments in the class action.

 

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 is based on the shareholder’s inspection of certain corporate books and records, purports to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and seeks 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 seeks 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 pending further developments in the class 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 purports to assert derivative claims against the individual defendants for breach of fiduciary duty, unjust enrichment, and waste of corporate assets, and seeks 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 seeks declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. On April 12, 2021, the parties filed a joint stipulation staying the action pending further developments in the class action.

 

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 July 22, 2022, the court referred the motion to the magistrate judge. The magistrate judge held a conference on September 9, 2022 in the consolidated federal action. 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. The final approval motion remains pending.

 

The terms of the proposed settlement are set forth in the stipulation of settlement agreed to by the Company and plaintiffs. Should the proposed settlement receive final approval from the Court, it will result in the dismissal of the shareholder derivative lawsuits. As part of the proposed settlement, the Company has 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.

 

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

 

 20

 

 

Item 2 – Management’s Discussion and Analysis of Financial Condition and Results of Operations

 

 

The following discussion should be read in conjunction with the Company’s consolidated financial statements and notes thereto contained in this report.

 

Forward Looking Statements

 

When used in this Form 10-Q and in future filings by us with the Securities and Exchange Commission (the “SEC”), the words or phrases “will likely result,” “management expects” or “we expect,” “will continue,” “is anticipated,” “estimated” or similar expressions are intended to identify “forward-looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995. Readers are cautioned not to place undue reliance on any such forward-looking statements, each of which speaks only as of the date made. 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. The risks are included in Part I, Item 1A – Risk Factors of our Annual Report on Form 10-K for the year ended December 31, 2022 (the “Form 10-K”). We have no obligation to publicly release the result of any revisions which may be made to any forward-looking statements to reflect anticipated or unanticipated events or circumstances occurring after the date of such statements.

 

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 original equipment manufacturers (“OEMs”) or a Tier 2 subcontractor to major Tier 1 manufacturers. We also are a prime contractor to the United States Department of Defense (“DOD”), primarily the United States Air Force (“USAF”). In conjunction with our assembly operations, we provide engineering, program management, supply chain management and kitting, and maintenance, repair and overhaul (“MRO”) services.

 

Impact of COVID-19

 

Our business and operations and the industries in which we operate have been impacted by public and private sector policies and initiatives in the U.S. to address the transmission of COVID-19, such as the imposition of travel restrictions and the adoption of remote work. The COVID-19 pandemic has contributed to a general slowdown in the global economy, has adversely impacted the businesses of certain of our customers and suppliers, and could adversely impact our results of operations and financial condition. In response to the COVID-19 impact on our business, we have been taking actions to preserve capital and protect the long-term needs of our businesses, including negotiating progress payments with our customers and reducing discretionary spending. For more information on the current and potential impact of the COVID-19 pandemic on our business, see Risk Factors included in Part I, Item 1A of our Form 10-K.

 

Recent Developments

 

On May 5, 2023, a settlement amount of $3,600,000, after approval by the Court, of which the Company had paid amounts totaling $750,000 as its retention limit under its directors’ and officers’ insurance policy, was transferred to counsel for plaintiff in the consolidated class action lawsuit (captioned Rodriguez v. CPI Aerostructures, Inc., et al., No. 20-cv-01026) 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. Accordingly, 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.

 

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 programs. Substantially all of our 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.

 

 21

 

 

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

 

Backlog
(Total)
  June 30,
2023
    December 31,
2022
 
Funded   $ 118,208,000     $ 122,148,000  
Unfunded     392,020,000       392,352,000  
Total   $ 510,228,000     $ 514,500,000  

 

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

 

Backlog
(Government/Military Contractors)
  June 30,
2023
    December 31,
2022
 
Funded   $ 116,729,000     $ 119,133,000  
Unfunded     382,634,000       384,652,000  
Total   $ 499,363,000     $ 503,785,000  

 

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

 

Backlog
(Commercial)
  June 30,
2023
    December 31,
2022
 
Funded   $ 1,479,000     $ 3,015,000  
Unfunded     9,386,000       7,700,000  
Total   $ 10,865,000     $ 10,715,000  

 

The total backlog at June 30, 2023 is primarily comprised of long-term programs with Raytheon (Next Generation Jammer (“NGJ”) – Mid Band Pods), Raytheon (Advanced Tactical Pods), USAF (T-38 Classic Structural Modification Kits), Collins Aerospace (Pods), Lockheed Martin (F-16 RI/DCC’s), Raytheon (B-52 Radar Racks), Sikorsky (CH-53K Welded Tubes, Sikorsky (UH-60 BLACKHAWK Gunner Windows), Embraer (Phenom 300 Engine Inlets), Northrop Grumman (E-2D Advanced Hawkeye), Boeing (A-10 Main Landing Gear Pods) and Sikorsky (UH-60 BLACKHAWK Stabilator MRO).

 

The funded backlog is primarily from purchase orders under long-term contracts with Raytheon NGJ – Mid Band Pods, USAF (T-38 Classic Structural Modification Kits), Collins Aerospace (Pods), Boeing (A-10 Main Landing Gear Pods), Lockheed Martin F-16 RI/DCC’s, Raytheon (Advanced Tactical Pods) and Northrop Grumman (E-2D Advanced Hawkeye).

 

Critical Accounting Policies

 

We make a number of significant estimates, assumptions and judgments in the preparation of our financial statements. See Management’s Discussion and Analysis of Financial Condition and Results of Operations in the Form 10-K, for a discussion of our critical accounting policies. There have been no significant changes to the application of our critical accounting policies during the quarter ended June 30, 2023.

 

Results of Operations

 

Revenue

 

Total Revenue for the three months ended June 30, 2023 was $20,547,555 compared to $18,925,406 for the same period last year, an increase of $1,622,149 or 8.6%. The increase was primarily related to increases in Raytheon NGJ Pods and Raytheon B-52 Radar Racks, partly offset by decreases in Sikorsky UH-60 BLACKHAWK Hover Infrared Suppression System (“HIRSS”) Module Assemblies.

 

Total Revenue for the six months ended June 30, 2023 was $42,564,223 compared to $39,060,503 for the same period last year, an increase of $3,503,720 or 9.0%. The increase was primarily related to increases in Raytheon NGJ Pods and Raytheon B-52 Radar Racks, partly offset by decreases in Sikorsky UH-60 BLACKHAWK HIRSS Module Assemblies.

 

 22

 

 

Revenue from military subcontracts was $16,502,026 for the three months ended June 30, 2023 compared to $15,520,336 for the three months ended June 30, 2022, an increase of $981,690 or 6.3%. The increase was primarily related to increases in Raytheon NGJ Pods and Raytheon B-52 Radar Racks, partly offset by decreases in Sikorsky UH-60 BLACKHAWK HIRSS Module Assemblies and GKN UH-60 BLACKHAWK Inlet Ducts.

 

Revenue from military subcontracts was $35,174,919 for the six months ended June 30, 2023 compared to $32,716,830 for the six months ended June 30, 2022, an increase of $2,458,089 or 7.5%. The increase was primarily related to increases in Raytheon NGJ Pods and Raytheon B-52 Radar Racks, partly offset by decreases in Sikorsky UH-60 BLACKHAWK HIRSS Module Assemblies, Northrop Grumman E-2D Advanced Hawkeye Wet Outer Wing Panels (“WOWP”) and Sikorsky UH-60 BLACKHAWK Gunner Windows.

 

Revenue from government military contracts was $2,710,925 for the three months ended June 30, 2023 compared to $1,887,074 for the three months ended June 30, 2022, an increase of $823,851 or 43.7%. The increase was primarily related to increases in USAF T-38 Pacer Classic Structural Modification Kits and DLA F-16 Structural Wing Components and MRO Services.

 

Revenue from government military contracts was $4,118,959 for the six months ended June 30, 2023 compared to $3,416,546 for the six months ended June 30, 2022, an increase of $702,413 or 20.6%. The increase was primarily related to increases in USAF T-38 Pacer Classic Structural Modification Kits and Defense Logistics Agency (“DLA”) F-16 Structural Wing Components and MRO Services.

 

Revenue from commercial subcontracts was $1,334,604 for the three months ended June 30, 2023 compared to $1,517,996 for the three months ended June 30, 2022, a decrease of $183,392 or 12.1%. The decrease was primarily the result of lower revenue recognized on the Gulfstream G650 Wing Fixed Leading Edges.

 

Revenue from commercial subcontracts was $3,270,345 for the six months ended June 30, 2023 compared to $2,927,126 for the six months ended June 30, 2022, an increase of $343,219 or 11.7%. The increase was primarily the result of higher revenue recognized on Embraer Phenom 300 Engine Inlet Assemblies, partly offset by lower revenue recognized on the Gulfstream G650 Wing Fixed Leading Edges.

 

Cost of Sales

 

Total Cost of Sales for the three months ended June 30, 2023 and 2022 was $15,943,555 and $15,265,716, respectively, an increase of $677,839 or 4.4%.

 

Total Cost of Sales for the six months ended June 30, 2023 and 2022 was $33,297,707 and $31,966,204, respectively, an increase of $1,331,503 or 4.2%.

 

The components of the cost of sales were as follows:

 

    Three months ended     Six months ended  
    June 30,
2023
    June 30,
2022
    June 30,
2023
    June 31,
2022
 
Procurement   $ 9,655,932     $ 10,416,731     $ 21,730,533     $ 21,588,456  
Labor     1,867,283       1,707,066       3,722,146       3,693,335  
Factory overhead     4,266,566       3,754,557       8,046,445       8,045,129  
Other cost of sales     153,774       (612,638 )     (201,417 )     (1,360,716 )
Cost of sales   $ 15,943,555     $ 15,265,716     $ 33,297,707     $ 31,966,204  

 

 23

 

 

Procurement for the three months ended June 30, 2023 was $9,655,932 compared to $10,416,731 for the three months ended June 30, 2022, a decrease of $760,799 or 7.3%. The decrease was primarily related to a lower amount of material procurement and favorable material adjustments, primarily in Lockheed Martin F-16 RI/DCC’s, Sikorsky UH-60 BLACKHAWK Gunner Windows, and Sikorsky UH-60 BLACKHAWK HIRSS Module Assemblies, partly offset by a higher amount of material procurement and favorable material adjustments in Raytheon NGJ Pods and USAF T-38 Pacer Classic Structural Modification Kits.

 

 24

 

 

Procurement for the six months ended June 30, 2023 was $21,730,533 compared to $21,588,456 for the six months ended June 30, 2022, an increase of $142,077 or 0.7%. The increase, which was partly offset by favorable material adjustments, was primarily related to a higher amount of material procurement in Sikorsky UH-60 BLACKHAWK HIRSS Module Assemblies, Northrop Grumman E-2D Advanced Hawkeye WOWP’s and Sikorsky UH-60 BLACKHAWK Gunner Windows, partly offset by a lower amount of material procurement and favorable material adjustments in Raytheon NGJ Pods, USAF T-38 Pacer Classic Structural Modification Kits, Lockheed Martin F-16 RI/DCC’s and Raytheon B-52 Radar Racks.

 

Labor costs for the three months ended June 30, 2023 were $1,867,283 compared to $1,707,066 for the three months ended June 30, 2022, an increase of $160,217 or 9.4%. The increase was primarily related to increases in Raytheon NGJ Pods and Boeing A-10 Main Landing Gear Pods.

 

Labor costs for the six months ended June 30, 2023 were $3,722,146 compared to $3,693,335 for the six months ended June 30, 2022, an increase of $28,811 or 0.8%. The increase was primarily related to increases in Raytheon NGJ Pods and Boeing A-10 Main Landing Gear Pods.

 

Factory overhead for the three months ended June 30, 2023 was $4,266,566 compared to $3,754,557 for the three months ended June 30, 2022, an increase of $512,009 or 13.6%. This increase was primarily the result of higher salary and benefit costs.

 

Factory overhead for the six months ended June 30, 2023 was $8,046,445 compared to $8,045,129 (which included a $134,628 severance charge recorded in factory overhead during the six months ended June 30, 2022) for the six months ended June 30, 2022, an increase of $1,316. Excluding the $134,628 severance charge recorded during the six months ended June 30, 2022, the factory overhead for the six months ended June 30, 2023 increased $135,944 or 1.7% from the factory overhead for the six months ended June 30, 2022. This increase was primarily the result of higher salary and benefit costs, partly offset by lower delivery service and building maintenance.

 

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, absorption variances and direct charges to cost of sales. For the three months ended June 30, 2023, there was $153,774 compared to a reduction of these costs in the amount of $612,638 for the three months ended June 30, 2022, an increase of $766,412 or 125.1%. The increase is primarily the result of a changes in inventory levels, and a lower level of inventory and loss contract reserves reduction for the three months ended June 30, 2023 as compared to the three months ended June 30, 2022.

 

Other cost of sales for the six months ended June 30, 2023 was a reduction of these costs in the amount of $201,417 compared to a reduction of these costs in the amount of $1,360,716 for the six months ended June 30, 2022, an increase of $1,159,299 or 85.2%. The increase is primarily the result of changes in inventory levels, and a lower level of inventory and loss contract reserves reduction for the six months ended June 30, 2023 as compared to the six months ended June 30, 2022.

 

Gross Profit

 

Gross profit and gross profit percentage (“gross margin”) for the three months ended June 30, 2023 was $4,604,000 and 22.4%, respectively, compared to $3,659,690 and 19.3%, respectively, for the three months ended June 30, 2022, an increase of $944,310 and 310 basis points, respectively, for the reasons noted above.

 

Gross profit and gross profit percentage (“gross margin”) for the six months ended June 30, 2023 was $9,266,516 and 21.8%, respectively, compared to $7,094,299 and 18.2%, respectively, for the six months ended June 30, 2022, an increase of $2,172,217 and 360 basis points, respectively, for the reasons noted above.

 

Favorable/Unfavorable Adjustments to Gross Profit

 

During the six months ended June 30, 2023 and 2022, circumstances required that we make changes in estimates to various contracts. Such changes in estimates resulted in changes in total gross profit as follows:

 

    Six months ended  
    June 30,
2023
    June 30,
2022
 
Favorable adjustments   $ 1,913,135     $ 2,725,554  
Unfavorable adjustments     (2,189,848 )     (2,186,363 )
Net adjustments   $ (276,713 )   $ 539,191  

 

 25

 

 

For the six months ended June 30, 2023, we evaluated all contractual data and revised estimated gross profit percentages accordingly. We had 24 contracts with favorable adjustments and 32 contracts with unfavorable adjustments, all due to changes in estimates.

 

Selling, General and Administrative Expenses

 

Selling, general and administrative expenses for the three months ended June 30, 2023 were $2,806,480 compared to $2,697,392 for the three months ended June 30, 2022, an increase of $109,088 or 4.0 %. The increase was primarily the result of higher salary and benefit expenses, partly offset by lower insurance and legal expenses.

 

Selling, general and administrative expenses for the six months ended June 30, 2023 were $5,675,538 compared to $5,835,049 (which included a $637,206 severance charge recorded in selling, general and administrative expenses during the six months ended June 30, 2022) for the six months ended June 30, 2022, a decrease of $159,511 or 2.7%. The decrease was primarily the result of lower salary and benefit expenses as well as lower insurance expenses. Excluding the aforementioned $637,206 severance charge as well as $263,148 of restricted stock forfeitures recorded during the six months ended June 30, 2022, the selling, general and administrative expenses for the six months ended June 30, 2023 increased $740,843 or 15.0% from the selling, general and administrative expenses for the six months ended June 30, 2022. This increase was primarily the result of increased salary and benefits partly offset by lower insurance expenses.

 

Interest expense

 

Interest expense for the three months ended June 30, 2023 was $541,655, compared to $438,437 for the three months ended June 30, 2022, an increase of $103,218 or 23.5%. The increase was 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.

 

Interest expense for the six months ended June 30, 2023 was $1,152,551, compared to $767,045 for the six months ended June 30, 2022, an increase of $385,506 or 50.3%. The increase was 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 three months ended June 30, 2023 was $1,255,865 compared to $523,861 for the three months ended June 30, 2022, an increase of $732,004 or 139.7% for the reasons noted above.

 

Income before provision for income taxes for the six months ended June 30, 2023 was $2,438,427 compared to $492,205 for the six months ended June 30, 2022, an increase of $1,946,222 or 395.4% for the reasons noted above.

 

Provision for Income Taxes

 

Provision for income taxes for the three months ended June 30, 2023 was $98,789 compared to $6,225 for the three months ended June 30, 2022, an increase of $92,564. The increase in the provision for income tax is the result of the Company’s valuation allowance on its deferred tax asset being partially released at December 31, 2022, resulting in the change in the deferred tax asset for the three months ending June 30, 2023 being recorded through the Company’s statement of operations for the three months ending June 30, 2023. For the three months ending June 30, 2022, the company’s deferred tax assets were fully offset by the valuation allowance, therefore there was only minimum state tax income expense recorded to the Company’s statement of operations during the three months ending June 30, 2022.

  

The effective income tax rate for the three months ended June 30, 2023 is 7.9%. The difference between the effective income tax rate for the three months ended June 30, 2023 and the statutory income tax rate of 21% for the three months ended June 30, 2023 is primarily due to the estimated R&D credit, the partial release of approximately $121,000 of the Company’s valuation allowance on its deferred tax asset, state income taxes and permanent tax differences.

  

Provision for income taxes for the six months ended June 30, 2023 was $298,046 compared to $7,500 for the six months ended June 30, 2022, an increase of $290,546. The increase in the provision for income tax is the result of the Company’s valuation allowance on its deferred tax asset being partially released at December 31, 2022, resulting in the change in the deferred asset for the six months ending June 30, 2023 being recorded through the Company’s statement of operations for the six months ending June 30, 2023. For the six months ending June 30, 2022, the company’s deferred tax assets were fully offset by the valuation allowance, therefore there was only minimum state tax income expense recorded to the Company’s statement of operations during the six months ending June 30, 2022.

 

 26

 

 

The effective income tax rate for the six months ended June 30, 2023 is 12.2%. The difference between the effective income tax rate for the six months ended June 30, 2023 and the statutory income tax rate of 21% for the six months ended June 30, 2023 is primarily due to the estimated R&D credit, the partial release of approximately $121,000 of the Company’s valuation allowance on its deferred tax asset, state income taxes and permanent tax differences.

 

 27

 

 

Net Income and Earnings per Share

 

Net income for the three months ended June 30, 2023 of $1,157,076 or $0.09 per basic and diluted share, compared to $517,636 or $0.04 per basic and diluted share for the three months ended June 30, 2022, an increase of $639,440 or 123.5% for the reasons noted above. Basic and diluted income per share for the three months ended June 30, 2023 was calculated using 12,558,793 and 12,625,241 weighted average basic and diluted shares outstanding, respectively. Basic and diluted income per share for the three months ended June 30, 2022 was calculated using 12,439,000 and 12,534,058 weighted average basic and diluted shares outstanding, respectively.

 

Net income for the six months ended June 30, 2023 of $2,140,381 or $0.17 per basic and diluted share, compared to $484,705 or $0.04 per basic and diluted share for the six months ended June 30, 2022, an increase of $1,655,676 or 341.6% for the reasons noted above. Basic and diluted income per share for the six months ended June 30, 2023 was calculated using 12,539,652 and 12,606,100 weighted average basic and diluted shares outstanding, respectively. Basic and diluted income per share for the six months ended June 30, 2022 was calculated using 12,401,281 and 12,496,339 weighted average basic and diluted shares outstanding, respectively.

 

Excluding the $771,834 severance charge recorded in the first quarter of 2022 as referred to above under Cost of Sales and Selling, General and Administrative Expenses, net income for the six months ended June 30, 2023 increased $883,842 or 70.3% from net income for the six months ended June 30, 2022.

 

Excluding the aforementioned severance charge, basic and diluted earnings per share for the six months ended June 30, 2023 increased $0.07 or 58.8% from basic and diluted earnings per share for the six months ended June 30, 2022.

 

 28

 

 

Liquidity and Capital Resources

 

General

 

At June 30, 2023, we had working capital of $14,484,217 compared to $12,896,602 at December 31, 2022, an increase of $1,587,615 or 12.3%. This increase was primarily the result of an increase in contract assets and accounts receivable and a decrease in accrued expenses, partly offset by an increase in accounts payable and contract liabilities.

 

Cash Flow

 

A large portion of our cash flow 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 and related earnings for which we do not bill on a progress basis, and which, as a result, we bill upon shipment of products, are components of contract assets on our consolidated balance sheets 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 revenue, 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.

 

Some 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 continuously work to improve our payment terms from our customers, including accelerated progress payment arrangements, as well as exploring alternate funding sources.

 

At June 30, 2023, we had cash of $3,080,672 compared to $3,847,225 at December 31, 2022, a decrease of $766,553 or 19.9%. This decrease was primarily the result of repayment of long-term debt and debt issuance costs, partly offset by cash flow from operations.

 

Bank Credit Facilities

 

On March 24, 2016, the Company entered into an Amended and Restated Credit Agreement with the lenders named therein and BankUnited N.A. as Sole Arranger, Agent and Collateral Agent (as amended from time to time, the “Credit Agreement” or the “BankUnited Facility”). The Credit Agreement 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 as defined in the Credit Agreement.

 

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 was 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 June 30, 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, which the Company entered into on October 28, 2021 in two installments, the first installment paid on June 1, 2023 in the amount of $116,667 and the second installment 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 installments and interest accrued were paid on such dates).

 

 

29 

 

 

The Credit Agreement, as amended, requires us to maintain the following financial covenants: (a) minimum debt service coverage ratio of no less than 1.5 to 1.0 for trailing four fiscal quarter periods; (b) maximum leverage ratio of no less than 4.0 to 1.0 for trailing four fiscal quarter periods; (c) minimum net income after taxes as of the end of each fiscal quarter being no less than $1.00; and (d) a minimum adjusted EBITDA at the end of each fiscal quarter of no less than $1.0 million. The additional principal payments, increase in interest and the Amendment Fee provided for in the Eight Amendment and Ninth Amendment to the Credit Agreement, which the Company entered into on April 12, 2022 are excluded for purposes of calculating compliance with each of the financial covenants.

 

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.25% as of June 30, 2023 and as such, the Company’s interest rate on both the Revolving Loan and Term Loan was 11.75% as of June 30, 2023.

 

As of June 30, 2023 and December 31, 2022, the Company had $21,000,000 outstanding under the Revolving Loan.

 

As of June 30, 2023, the Term Loan, as amended by the Twelfth Amendment, had an aggregate principal amount of $133,333, payable in monthly installments, as defined in the Twelfth Amendment, as compared to an aggregate principal amount outstanding as of December 31, 2022 of $1,583,333.

 

There is currently no availability for borrowings under the Revolving Loan and the Company finances its operations from internally generated cash flow.

 

Liquidity

 

We believe that our existing resources as of June 30, 2023 will be sufficient to meet our current working capital needs for at least the next 12 months from the date of issuance of our consolidated financial statements. However, 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 borrowing arrangement 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.

 

Contractual Obligations

 

For information concerning our contractual obligations, see Contractual Obligations under Item 7 of Management’s Discussion and Analysis of Financial Condition and Results of Operations of our Annual Report on Form 10-K for the year ended December 31, 2022.

 

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 3 – Quantitative and Qualitative Disclosures About Market Risk

 

 

Not applicable.

 

Item 4 – Controls and Procedures

 

 

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;

 

30 

 

 

  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.
     

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 for the twelve months ended December 31, 2022 based on criteria established in Internal Control- Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (“COSO”). In connection with this evaluation, management identified deficiencies that constituted material weaknesses in our internal control over financial reporting as of December 31, 2022. For more information on these deficiencies, see Item 9A. Controls and Procedures, included in our Annual Report on Form 10-K. In addition, during the quarter ended June 30, 2023, management identified a deficiency that constituted another material weakness in our internal control over financial reporting as of June 30, 2023 (see Section below entitled “Changes in Internal Control over Financial Reporting”. Based on management’s evaluation of internal control over financial reporting for the twelve months ended December 31, 2022, and as of June 30, 2023, our disclosure controls and procedures were not effective as of June 30, 2023 due to the materials weaknesses described above.

 

 

31 

 

 

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.

 

During 2023, the Company intends to implement new controls designed to remediate the aforementioned 2022 material weaknesses.

 

Changes in Internal Control Over Financial Reporting

 

During the quarter ended June 30, 2023, we identified a material weakness in our internal control over financial reporting with respect to the process around accounting for the quarterly accrual of goods in transit to the Company including the effect on revenue and cost of sales. During the quarter ended June 20, 2023, we began to design additional internal controls to address this material weakness but did not complete remediation of this material weakness. During the quarter ended June 30, 2023, we implemented additional internal controls related to the processing and accrual of vendor invoices.

 

32 

 

 

Part II - Other Information

 

Item 1 – Legal Proceedings

 

 

Reference is made to Note 12 entitled “Commitments and Contingencies” to our unaudited condensed consolidated financial statements included in this Quarterly Report for a discussion of current legal proceedings, which discussion is incorporated herein by reference.

 

Item 1A – Risk Factors

 

 

“Item 1A. Risk Factors” of our Annual Report on Form 10-K for the year ended December 31, 2022, includes a discussion of significant factors known to us that could materially adversely affect our business, financial condition, or results of operations. There have been no material changes from the risk factors disclosed in the Annual Report.

 

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

 

 

None.

 

Item 3 – Defaults Upon Senior Securities

 

 

None.

 

Item 4 – Mine Safety Disclosures

 

 

Not applicable.

 

Item 5 – Other Information

 

 

None.

 

33 

 

 

Item 6 – Exhibits

 

 

Exhibit No. Description
   
10.1 CPI Aerostructures, Inc. 2016 Long Term Incentive Plan, as amended (incorporated by reference from Exhibit 99.1 to the Company’s Registration Statement on Form 8-K filed on June 28, 2023).
31.1* Section 302 Certification by Chief Executive Officer and President
31.2* Section 302 Certification by Chief Financial Officer (Principal Accounting Officer)
32.1** Section 906 Certification by Chief Executive Officer and Chief Financial Officer
101.INS** Inline XBRL Instance Document. The instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.
101.SCH* Inline XBRL Taxonomy Extension Schema Document.
101.CAL* Inline XBRL Taxonomy Extension Calculation Linkbase Document.
101.DEF* Inline XBRL Taxonomy Extension Definition Linkbase Document.
101.LAB* Inline XBRL Taxonomy Extension Label Linkbase Document.
101.PRE* Inline XBRL Taxonomy Extension Presentation Linkbase Document.
104** Cover Page Interactive Data File. The cover page XBRL tags are embedded within the Inline XBRL document.

 

* Filed herewith

** Furnished herewith

 

Attached as Exhibit 101 to this report are the following formatted in Inline XBRL (Extensible Business Reporting Language): (i) Condensed Consolidated Statement of Operations for the three months ended June 30, 2023 and 2022, (ii) Condensed Consolidated Balance Sheet as of June 30, 2023 and December 31, 2022, (iii) Condensed Consolidated Statement of Cash Flows for the three months ended June 30, 2023 and 2022, (iv) Condensed Consolidated Statement of Changes in Equity for the three months ended June 30, 2023 and 2022 and (v) Notes to Condensed Consolidated Financial Statements.

 

34 

 

 

SIGNATURES

 

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

 

  CPI AEROSTRUCTURES, INC.
     
Dated: August 21, 2023 By. /s/ Dorith Hakim
    Dorith Hakim
   

Chief Executive Officer and President

(Principal Executive Officer)

     
Dated: August 21, 2023 By. /s/ Andrew L. Davis
    Andrew L. Davis
   

Chief Financial Officer

(Principal Financial and Accounting Officer)

     

35 

EX-31.1 2 ex31-1.htm SECTION 302 CERTIFICATION BY CHIEF EXECUTIVE OFFICER AND PRESIDENT

 

 

CPI Aerostructures, Inc. 10-Q

 

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 Quarterly Report on Form 10-Q 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: August 21, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Dorith Hakim
    Dorith Hakim
   

Chief Executive Officer, President and Director

(Principal Executive Officer)

 

36 

EX-31.2 3 ex31-2.htm SECTION 302 CERTIFICATION BY CHIEF FINANCIAL OFFICER (PRINCIPAL ACCOUNTING OFFICER)

 

 

CPI Aerostructures, Inc. 10-Q

 

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 Quarterly Report on Form 10-Q 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: August 21, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Andrew L. Davis
    Andrew L. Davis
   

Chief Financial Officer and Secretary

(Principal financial and accounting officer)

 

37 

EX-32.1 4 ex32-1.htm SECTION 906 CERTIFICATION BY CHIEF EXECUTIVE OFFICER AND CHIEF FINANCIAL OFFICER

 

 

CPI Aerostructures, Inc. 10-Q

 

EXHIBIT 32.1

 

CERTIFICATION PURSUANT TO
18 U.S.C. SECTION 1350
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

 

In connection with the Quarterly Report of CPI Aerostructures, Inc. (the “Company”) on Form 10-Q for the quarter ended June 30, 2023 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: August 21, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Dorith Hakim
    Dorith Hakim
    Chief Executive Officer, President and Director
    (Principal executive officer)
     
Dated: August 21, 2023 CPI AEROSTRUCTURES, INC.
  (Registrant)
     
  By: /s/ Andrew L. Davis
    Andrew L. Davis
    Chief Financial Officer and Secretary
    (Principal financial and accounting officer)

 

38 

EX-101.SCH 5 cvu-20230630.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 00000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 00000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) link:presentationLink link:calculationLink link:definitionLink 00000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 00000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 00000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 00000007 - Disclosure - INTERIM FINANCIAL STATEMENTS link:presentationLink link:calculationLink link:definitionLink 00000008 - Disclosure - REVENUE RECOGNITION link:presentationLink link:calculationLink link:definitionLink 00000009 - Disclosure - CONTRACT ASSETS AND LIABILITIES link:presentationLink link:calculationLink link:definitionLink 00000010 - Disclosure - INVENTORY link:presentationLink link:calculationLink link:definitionLink 00000011 - Disclosure - STOCK-BASED COMPENSATION link:presentationLink link:calculationLink link:definitionLink 00000012 - Disclosure - FAIR VALUE link:presentationLink link:calculationLink link:definitionLink 00000013 - Disclosure - INCOME PER COMMON SHARE link:presentationLink link:calculationLink link:definitionLink 00000014 - Disclosure - DEBT link:presentationLink link:calculationLink link:definitionLink 00000015 - Disclosure - MAJOR CUSTOMERS 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 - COMMITMENTS AND CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 00000019 - Disclosure - INTERIM FINANCIAL STATEMENTS (Policies) link:presentationLink link:calculationLink link:definitionLink 00000020 - Disclosure - REVENUE RECOGNITION (Tables) link:presentationLink link:calculationLink link:definitionLink 00000021 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Tables) link:presentationLink link:calculationLink link:definitionLink 00000022 - Disclosure - INVENTORY (Tables) link:presentationLink link:calculationLink link:definitionLink 00000023 - Disclosure - STOCK-BASED COMPENSATION (Tables) link:presentationLink link:calculationLink link:definitionLink 00000024 - Disclosure - FAIR VALUE (Tables) link:presentationLink link:calculationLink link:definitionLink 00000025 - Disclosure - INCOME PER COMMON SHARE (Tables) link:presentationLink link:calculationLink link:definitionLink 00000026 - Disclosure - DEBT (Tables) link:presentationLink link:calculationLink link:definitionLink 00000027 - Disclosure - LEASES (Tables) link:presentationLink link:calculationLink link:definitionLink 00000028 - Disclosure - INTERIM FINANCIAL STATEMENTS (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000029 - Disclosure - The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method: (Details) link:presentationLink link:calculationLink link:definitionLink 00000030 - Disclosure - REVENUE RECOGNITION (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000031 - Disclosure - Schedule of contract assets and liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 00000032 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000033 - Disclosure - The components of inventory consisted of the following: (Details) link:presentationLink link:calculationLink link:definitionLink 00000034 - 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 00000035 - Disclosure - The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023: (Details) link:presentationLink link:calculationLink link:definitionLink 00000036 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000037 - Disclosure - At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments. (Details) link:presentationLink link:calculationLink link:definitionLink 00000038 - Disclosure - For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000039 - Disclosure - INCOME PER COMMON SHARE (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000040 - Disclosure - The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000041 - Disclosure - DEBT (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000042 - Disclosure - MAJOR CUSTOMERS (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000043 - Disclosure - Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows: (Details) link:presentationLink link:calculationLink link:definitionLink 00000044 - Disclosure - The following table sets forth the ROU assets and operating lease liabilities as of: (Details) link:presentationLink link:calculationLink link:definitionLink 00000045 - Disclosure - LEASES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000046 - Disclosure - INCOME TAXES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink 00000047 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details Narrative) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 6 cvu-20230630_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 7 cvu-20230630_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 8 cvu-20230630_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Class of Stock [Axis] Unrestricted Shares [Member] Restricted Shares [Member] Equity Components [Axis] Common Stock [Member] Additional Paid-in Capital [Member] Retained Earnings [Member] Product and Service [Axis] Aerostructure [Member] Aerosystems [Member] Kitting and Supply Chain Management [Member] Timing of Transfer of Good or Service [Axis] Transferred over Time [Member] Transferred at Point in Time [Member] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Income Statement Location [Axis] Cost of Sales [Member] Selling, General and Administrative Expenses [Member] Award Type [Axis] Forfeited Restricted Stock [Member] Restricted Stock [Member] Restricted Stock Units (RSUs) [Member] Measurement Basis [Axis] Reported Value Measurement [Member] Estimate of Fair Value Measurement [Member] Lender Name [Axis] Bank United [Member] Credit Facility [Axis] Revolving Credit Facility [Member] Term loan [Member] Revolving Loan and Term Loan [Member] Debt Instrument [Axis] Period One [Member] Period Two [Member] Period Three [Member] First Installment [Member] Second Installment [Member] Statistical Measurement [Axis] Minimum [Member] Variable Rate [Axis] Prime Rate [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] Contract Assets [Member] Customer Four [Member] Accounts Receivable [Member] Customer Five [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] Statement of Financial Position [Abstract] ASSETS Current Assets: Cash Accounts receivable, net Insurance recovery receivable Contract assets 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, current Income tax 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 Shareholders’ Equity: Common stock - $.001 par value; authorized 50,000,000 shares, 12,727,167 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 Statement [Table] Statement [Line Items] Revenue Cost of sales Gross profit Selling, general and administrative expenses Income from operations Interest expense Income before provision for income taxes Provision for income taxes Net income Income per common share, basic: Income per common share, basic Income per common share, diluted Income per common share, diluted Shares used in computing income per common share, basic:     Total shares Shares used in computing income per common share, diluted Beginning balance, value Beginning balance (in shares) Net Income (Loss) Common stock forfeited Common stock forfeited (in shares) Stock-based compensation expense Stock-based compensation expense (in shares) Ending balance, value Beginning balance (in shares) Statement of Cash Flows [Abstract] Cash flows from operating activities: Net income Adjustments to reconcile net income to net cash provided by (used in) operating activities: Depreciation and amortization Amortization of debt issuance cost Stock-based compensation Deferred income taxes Bad debt expense Changes in operating assets and liabilities: (Increase) decrease in accounts receivable Decrease (increase) in insurance receivable Increase in contract assets Decrease in inventory Decrease in prepaid expenses and other assets Increase in refundable income taxes Decrease in operating right-of-use assets Increase (decrease) in accounts payable and accrued expenses Increase (decrease) in contract liabilities (Decrease) increase in settlement of litigation obligation Decrease in lease liabilities Increase (decrease) in income taxes payable Decrease in loss reserve Net cash provided by (used in) operating activities Cash flows from investing activities: Purchase of property and equipment Net cash used in investing activities Cash flows from financing activities: Payments on long-term debt Debt issuance costs paid Net cash used in financing activities Net decrease in cash Cash at beginning of period Cash at end of period Supplemental disclosures of cash flow information: Cash paid during the period for: Interest Income taxes Accounting Policies [Abstract] INTERIM FINANCIAL STATEMENTS Revenue from Contract with Customer [Abstract] REVENUE RECOGNITION Contract Assets And Liabilities CONTRACT ASSETS AND LIABILITIES Inventory Disclosure [Abstract] INVENTORY Share-Based Payment Arrangement [Abstract] STOCK-BASED COMPENSATION Fair Value Disclosures [Abstract] FAIR VALUE Earnings Per Share [Abstract] INCOME PER COMMON SHARE Debt Disclosure [Abstract] DEBT Risks and Uncertainties [Abstract] MAJOR CUSTOMERS Leases LEASES Income Tax Disclosure [Abstract] INCOME TAXES Commitments and Contingencies Disclosure [Abstract] COMMITMENTS AND CONTINGENCIES Basis of Presentation Recently Issued Accounting Standards - Adopted The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method: Schedule of contract assets and liabilities The components of inventory consisted 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 and Restricted Stock Awards for the six months ended June 30, 2023: At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments. For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows: The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows: Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows: The following table sets forth the ROU assets and operating lease liabilities as of: Uninsured balance Disaggregation of Revenue [Table] Disaggregation of Revenue [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Remaining performance obligations Performance obligations duration Schedule Of Contract Assets And Liabilities Contract assets Contract liabilities Net Contract assets Revenue recognized that was included in contract liabilities Raw materials Work in progress Finished goods Gross inventory Inventory reserves Inventory, net 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 Shares forfeited Stock-based compensation Unamortized stock-based compensation costs Fair Value, by Balance Sheet Grouping [Table] Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items] Short-term borrowings and long-term debt Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table] Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items] Income (loss) per common share, basic Income (loss) per common share, diluted Total shares Incremental shares used in calculation of diluted income per common share Remainder of 2023 2024 2025 Total                    Line of Credit Facility [Table] Line of Credit Facility [Line Items] Line of credit facility, maximum borrowing capacity Debt instrument, face amount Expiration date Amendment fee Minimum debt service coverage ratio Maximum leverage ratio Net income required under agreement Minimum adjusted EBITDA Prime rate Plus Debt Instrument, Interest Rate, Stated Percentage Interest rate Outstanding loans Line of credit Aggregate principal balance Financing leases and notes payable Financing leases and notes payable current Payments of debt issuance costs Debt issuance costs Concentration Risk [Table] Concentration Risk [Line Items] Concentration Risk, Percentage Future Minimum Lease Payments Under Non-cancellable Operating Leases As Of June 30 2023 Were As Follows Remainder of 2023 2024 2025 2026 2027 Thereafter 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 Assets ROU assets, net Liabilities Current operating lease liabilities Total lease liabilities Expiration date Operating lease expense Weighted average remaining lease term operating leases Weighted average discount rate for its operating leases Effective income tax rate Statutory income tax rate Valuation allowance released Settlement amount Attorneys' fees Covered settlement amount Directors and officers insurance retention amount Common shares not subject to any contractual restrictions between the Company and the shareholder. Common shares that are subject to contractual restrictions between the Company and the shareholder, The amount of increase (decrease) in loss reserve. The increase (decrease) during the reporting period in litigation settlement obligation. Aerostructure [Member] Aerosystems [Member] Kitting and Supply Chain Management [Member] The entire disclosure of contract assets and contract liabilities from contract with customer. The element represents net contract assets. Forfeited Restricted Stock. 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. Minimum adjusted EBITDA at the end of each fiscal quarter. Customer One. Customer Two. Customer Three. Contract Assets [Member] Customer Four. Customer Five. Tabular disclosure of lessee operating leases. The element represents directors and officers insurance retention amount. Maximum leverage ratio for trailing four fiscal quarter periods. Minimum debt service coverage ratio for trailing four fiscal quarter periods. Assets, Current Assets Liabilities, Current Liabilities [Default Label] Equity, Attributable to Parent Liabilities and Equity Gross Profit Operating Income (Loss) Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Shares Issued, Value, Share-Based Payment Arrangement, Forfeited Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited 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 Income Taxes Receivable 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 Long-Term Debt 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 Contract with Customer, Asset, after Allowance for Credit Loss Contract with Customer, Liability Net Contract Assets Inventory, Gross Inventory Valuation Reserves 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 Long-Term Debt Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year 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 Lease Expiration Date Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount EX-101.PRE 9 cvu-20230630_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT GRAPHIC 10 cpiaerologo.jpg GRAPHIC begin 644 cpiaerologo.jpg M_]C_X 02D9)1@ ! @ 9 !D #_[ 11'5C:WD 0 $ / _^X #D%D M;V)E &3 ?_; (0 !@0$! 4$!@4%!@D&!08)"P@&!@@+# H*"PH*#! , M# P,# P0# X/$ \.#!,3%!03$QP;&QL<'Q\?'Q\?'Q\?'P$'!P<-# T8$! 8 M&A41%1H?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\?'Q\? M'Q\?'Q\?'Q\?_\ $0@ , "6 P$1 (1 0,1 ?_$ *8 (" P$ M &!0 Y9%6? M(YZ(\J%QB2I*PD.LJ.H05J/%39X>QI73SL-\W-!;&8\;(5*29:2,JQA<=R2B M[PU1V@%.NI?;*4 D)',0KAJ2!QKG>5.M*,U\\>)6F2^L)&MM]E6JW69R>(CB MF''RYR<[B#HKD0$K) ([:Z%KVYRBI-TJ99Y='1*I'?W'W+^%G/E5_FJG\8O$ M0ZM^$RCUC+HH\,4>5XPEQ9.GR5/C8^,=8_"/\;<6-,P*9ED>$Z@PVW%.P)&K M:PXUVH)T[/$K2L3QFKB@WOU-*O5AS4*\;]96:[^3QHN:=O(^I6GLZ-FMS]K2 M_P!&;K7P/?\ (=6_"98]9=*)*47#'W&&-?C5(>U<2/& M$*0C7W:/VO9LD>K-V[4/&X.Y:,4L5MN\:'](,W%:4MI*^EHA3?42KT5>"LF- MB^9)Q;I0OO7N1)[ZDEMWF2LNQM%Y5$[F5/.L]$+ZGY-6FO-HGMJO)L>5/EK4 ME9N<\:C15!:% +>1[AX=CAZ=VN;3,@#7NR=7'?\ (CF(]NKK6-.?=17.[&.] MBTBGJXZ)LVV-S,XN 'T;@4[E5V M.2WD1T_?)J+Q+<=]Q?@]5Z;W19*Q9^[4HZKM=IMJ/]:0](6/::2D?5JIJRM9 M/\$T[CT2)./;LR< ,R\QVCKQ1$BJMRAHO[)*,M61NX&WSF766- M5='HKL5:G0\D#XPE!3RK">0U>W3.19?-MM[:6 MF):4K[ZRDE!+P7TTME0XZ<":[&7DN$$X[Y&"Q9YI-/0Z(;P7#V[*Y9&[1&1; M'P$O1DH "^504"I0\XD* .I.M.J9 [!I0"ON=_3Z_P#S)WWJT8OJQ^Y5>[C^ MQ16R>SMKKY^/.Y3ET,.+=C"M2U_P"? M>VGZ6]^KN?6KG?'W>!KZJ'$IK>C,L?RF^19=FYBS'BEEYY:.F5K*RH \3RC MQUT\&Q*W%J7$Q9-R,WL';?$*1MOBB5 I4DLA23P((B]AK)@>K+^:E^5W$-7J M]_TZ:^=R?PZH]R]7\(LQ.X676 U%/9IN+D%^R#]S,!6%2M2FXW=/HM <%PD"L;DWO-"2 M1L5X>A0!0!0$3:\TU]'>@YV:1U2.1;DHW M*OB7Q_._;']L#Y%_\2N1T%[@;^JM\3RK?';(#7Z7U\@9?_$IT%W@.JM\3QE& M567)MKLAN%G?,B(F.\R7"A2//2D%0 6 >&M>6K4K=Z*EOJ>SFI6VT57L+B.. M9')O"+U ;G)C(8+'4*ARE15S:' V;?M?M_;WTR(MCBH>00I"U)+A!'81SE51EE79*CDSU6( M+V.W ML/#;$E@A+MTD:+N$D#M5X&TG[!'@]VL^5DN[*NFA;8LJ"^HO[D[X6?'[FG%[ M'(ARV1W)N[UKSJYYAD"+K Q^6 B MXH2A#'12A14ID)"?-61Y@]B@$VQYUNSFE^Z,O*LADN-LQ;/%LP:"W%D ZO+3HE*?'I0#ECN0;J;A78V M"U9)]&6[&8Z&+]DT6.TX9MT/IM,I4.3D;XC5/;IKX10$9F36Z]IS*R898=Q) MMWR*ZJZLII46.VW#B)]*0Z4A?ET3X?;% =%="1]']W[R>\]'I][Y4\W4Y=.I MR^CKKYVG90"I?MH,"OD]RX3;=RS'CS/.LN+:YU?9*"3H3Y=*U6\RY!43V%,\ M>$G5HCOY!;;?H;_ZPY]>I_(7>)'I8<#*=A-M@H'N3QT\!D.Z'ZM/D+O$=+#@ M-?[HV 8XYCC,1,>T.M*95'9)1YJO2\X<=3X^VLWG2YN:O[%OEKEY=#2Q';W& M<37)';4KV3.Y3FT/+=J,-PSU26!0"_F&'8[D\ M)IB^-J7&BK+Z"EPM"NC&S7_K>[#)*Y3]+8];9;60<1CF9*4)F021 M_P!J:=2$?%MEXG)N$V.ST4)*FP>FR/,X-(YM0GR"@/<7U> M&HX9;1G&2B*SR!,9,WD;Z:-/BP$I&B=!IPH!FL>U=LM^>73-)TMVZW6>VF/$ M$A" W#C)X!ID#7P J/'W30$9B^R-MQJ^Y!-M%VE1K9D2'D2;0A+8;:4\" M MAS3G0IOF5RT! 6SU8;1:8QBVK+\@@1BHK+,:2EI)4>U1"$#4^6@'/ -I,>PR M9-N3$F9=+S< E$JZ7)WKOEM'8A*M!HF@'B@(R5DECBK4V_,;0M!T4GB2#[0- M35N3T(N:1'N;@X@V2%3^([>5E]7X*#4UCSX$?-CQ-1[=/#&CIWF0O[2'+5[S M526)<>G]H\=^)IO;Q8@V"0W<7/(B!)/OH%36%/Z=J(O(C]>PUE[W8LD>;;[N ML^2 Z/?TJ70SXQ[3SJ8\'V&HYOQ9$D].PWI?B/="G7W55)>WR\4>TCU2X,C9 M._=PA>= G4/"I7B\21P% XML 11 R1.htm IDEA: XBRL DOCUMENT v3.23.2
Cover - shares
6 Months Ended
Jun. 30, 2023
Aug. 17, 2023
Cover [Abstract]    
Document Type 10-Q  
Amendment Flag false  
Document Quarterly Report true  
Document Transition Report false  
Document Period End Date Jun. 30, 2023  
Document Fiscal Period Focus Q2  
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, $0.001 par value per share  
Trading Symbol CVU  
Security Exchange Name NYSEAMER  
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 Common Stock, Shares Outstanding   12,639,244
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.23.2
CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) - USD ($)
Jun. 30, 2023
Dec. 31, 2022
Current Assets:    
Cash $ 3,080,672 $ 3,847,225
Accounts receivable, net 8,621,301 4,857,772
Insurance recovery receivable 3,600,000
Contract assets 30,962,061 27,384,540
Inventory 1,918,906 2,493,069
Refundable income taxes 40,000 40,000
Prepaid expenses and other current assets 565,714 975,830
Total Current Assets 45,188,654 43,198,436
Operating lease right-of-use assets 5,646,483 6,526,627
Property and equipment, net 950,732 1,124,556
Deferred tax asset 6,279,101 6,574,463
Goodwill 1,784,254 1,784,254
Other assets 234,334 238,744
Total Assets 60,083,558 59,447,080
Current Liabilities:    
Accounts payable 11,734,379 8,029,996
Accrued expenses 5,314,339 7,344,590
Litigation settlement obligation 3,600,000
Contract liabilities 8,605,354 6,001,726
Loss reserve 250,516 576,549
Current portion of line of credit 2,640,000 1,200,000
Current portion of long-term debt 221,172 1,719,766
Operating lease liabilities, current 1,921,803 1,817,811
Income tax payable 16,874 11,396
Total Current Liabilities 30,704,437 30,301,834
Line of credit, net of current portion 18,360,000 19,800,000
Long-term operating lease liabilities 4,121,087 5,077,235
Long-term debt, net of current portion 41,484 70,981
Total Liabilities 53,227,008 55,250,050
Shareholders’ Equity:    
Common stock - $.001 par value; authorized 50,000,000 shares, 12,727,167 and 12,506,795 shares, respectively, issued and outstanding 12,727 12,507
Additional paid-in capital 73,708,368 73,189,449
Accumulated deficit (66,864,545) (69,004,926)
Total Shareholders’ Equity 6,856,550 4,197,030
Total Liabilities and Shareholders’ Equity $ 60,083,558 $ 59,447,080
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.23.2
CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) - $ / shares
Jun. 30, 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,727,167 12,506,795
Common stock, outstanding 12,727,167 12,506,795
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.23.2
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Revenue $ 20,547,555 $ 18,925,406 $ 42,564,223 $ 39,060,503
Cost of sales 15,943,555 15,265,716 33,297,707 31,966,204
Gross profit 4,604,000 3,659,690 9,266,516 7,094,299
Selling, general and administrative expenses 2,806,480 2,697,392 5,675,538 5,835,049
Income from operations 1,797,520 962,298 3,590,978 1,259,250
Interest expense 541,655 438,437 1,152,551 767,045
Income before provision for income taxes 1,255,865 523,861 2,438,427 492,205
Provision for income taxes 98,789 6,225 298,046 7,500
Net income $ 1,157,076 $ 517,636 $ 2,140,381 $ 484,705
Income per common share, diluted        
Income per common share, diluted $ 0.09 $ 0.04 $ 0.17 $ 0.04
Shares used in computing income per common share, basic:        
    Total shares 12,558,793 12,439,000 12,539,652 12,401,281
Shares used in computing income per common share, diluted 12,625,241 12,534,058 12,606,100 12,496,339
Unrestricted Shares [Member]        
Income per common share, basic:        
Income per common share, basic $ 0.09 $ 0.04 $ 0.17 $ 0.04
Shares used in computing income per common share, basic:        
    Total shares 12,429,894 12,305,939 12,412,068 12,275,306
Restricted Shares [Member]        
Income per common share, basic:        
Income per common share, basic $ 0.09 $ 0.04 $ 0.17 $ 0.04
Shares used in computing income per common share, basic:        
    Total shares 128,899 133,061 127,584 125,975
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.23.2
CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) (UNAUDITED) - 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 (Loss) (32,931) (32,931)
Stock-based compensation expense $ 47 25,835 25,882
Stock-based compensation expense (in shares) 47,527      
Ending balance, value at Mar. 31, 2022 $ 12,383 72,859,577 (78,214,082) (5,342,122)
Beginning balance (in shares) at Mar. 31, 2022 12,383,210      
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 (Loss)       484,705
Ending balance, value at Jun. 30, 2022 $ 12,449 72,997,009 (77,696,446) (4,686,988)
Beginning balance (in shares) at Jun. 30, 2022 12,449,327      
Beginning balance, value at Mar. 31, 2022 $ 12,383 72,859,577 (78,214,082) (5,342,122)
Beginning balance (in shares) at Mar. 31, 2022 12,383,210      
Net Income (Loss) 517,636 517,636
Stock-based compensation expense $ 66 137,432 137,498
Stock-based compensation expense (in shares) 66,117      
Ending balance, value at Jun. 30, 2022 $ 12,449 72,997,009 (77,696,446) (4,686,988)
Beginning balance (in shares) at Jun. 30, 2022 12,449,327      
Beginning balance, value at Dec. 31, 2022 $ 12,507 73,189,449 (69,004,926) $ 4,197,030
Beginning balance (in shares) at Dec. 31, 2022 12,506,795     12,506,795
Net Income (Loss) 983,305 $ 983,305
Stock-based compensation expense $ 19 338,904 338,923
Stock-based compensation expense (in shares) 19,247      
Ending balance, value at Mar. 31, 2023 $ 12,526 73,528,353 (68,021,621) 5,519,258
Beginning balance (in shares) at Mar. 31, 2023 12,526,042      
Beginning balance, value at Dec. 31, 2022 $ 12,507 73,189,449 (69,004,926) $ 4,197,030
Beginning balance (in shares) at Dec. 31, 2022 12,506,795     12,506,795
Net Income (Loss)       $ 2,140,381
Ending balance, value at Jun. 30, 2023 $ 12,727 73,708,368 (66,864,545) $ 6,856,550
Beginning balance (in shares) at Jun. 30, 2023 12,727,167     12,727,167
Beginning balance, value at Mar. 31, 2023 $ 12,526 73,528,353 (68,021,621) $ 5,519,258
Beginning balance (in shares) at Mar. 31, 2023 12,526,042      
Net Income (Loss) 1,157,076 1,157,076
Common stock forfeited $ (41) (7,406) (7,447)
Common stock forfeited (in shares) (41,073)      
Stock-based compensation expense $ 242 187,421 187,663
Stock-based compensation expense (in shares) 242,198      
Ending balance, value at Jun. 30, 2023 $ 12,727 $ 73,708,368 $ (66,864,545) $ 6,856,550
Beginning balance (in shares) at Jun. 30, 2023 12,727,167     12,727,167
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.23.2
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) - USD ($)
6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Cash flows from operating activities:    
Net income $ 2,140,381 $ 484,705
Adjustments to reconcile net income to net cash provided by (used in) operating activities:    
Depreciation and amortization 233,090 343,750
Amortization of debt issuance cost 58,743 46,888
Stock-based compensation 519,139 163,380
Deferred income taxes 295,362
Bad debt expense 3,189
Changes in operating assets and liabilities:    
(Increase) decrease in accounts receivable (3,763,529) 117,972
Decrease (increase) in insurance receivable 3,600,000 (650,693)
Increase in contract assets (3,577,521) (3,031,844)
Decrease in inventory 574,163 441,144
Decrease in prepaid expenses and other assets 410,116 116,107
Increase in refundable income taxes   (2,335)
Decrease in operating right-of-use assets 880,144 858,812
Increase (decrease) in accounts payable and accrued expenses 1,674,132 (126,884)
Increase (decrease) in contract liabilities 2,603,628 (94,934)
(Decrease) increase in settlement of litigation obligation (3,600,000) 596,741
Decrease in lease liabilities (852,156) (780,274)
Increase (decrease) in income taxes payable 5,478 (5,165)
Decrease in loss reserve (326,033) (577,166)
Net cash provided by (used in) operating activities 875,137 (2,096,607)
Cash flows from investing activities:    
Purchase of property and equipment (59,265) (25,317)
Net cash used in investing activities (59,265) (25,317)
Cash flows from financing activities:    
Payments on long-term debt (1,528,091) (1,560,881)
Debt issuance costs paid (54,334)
Net cash used in financing activities (1,582,425) (1,560,881)
Net decrease in cash (766,553) (3,682,805)
Cash at beginning of period 3,847,225 6,308,866
Cash at end of period 3,080,672 2,626,061
Cash paid during the period for:    
Interest 1,193,411 645,423
Income taxes
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.23.2
INTERIM FINANCIAL STATEMENTS
6 Months Ended
Jun. 30, 2023
Accounting Policies [Abstract]  
INTERIM FINANCIAL STATEMENTS

 

1. INTERIM FINANCIAL STATEMENTS

 

Basis of Presentation

 

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

 

The condensed consolidated interim financial statements of the Company as of June 30, 2023 and for the six months ended June 30, 2023 and 2022 have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). Certain information and notes normally included in financial statements prepared in accordance with generally accepted accounting principles in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations. The consolidated balance sheet at December 31, 2022 has been derived from audited consolidated financial statements, but does not include all of the information and notes required by U.S. GAAP. The Company believes that the disclosures are adequate to make the information presented not misleading.

 

All adjustments that, in the opinion of the management, are necessary for a fair presentation for the periods presented have been reflected. Such adjustments are of a normal, recurring nature. It is suggested that these consolidated financial statements be read in conjunction with the consolidated financial statements and notes thereto included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “Form 10-K”). The results of operations for interim periods are not necessarily indicative of the operating results to be expected for the full year or any other interim period.

 

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.

 

The Company maintains its cash in four financial institutions. The balances are insured by the Federal Deposit Insurance Corporation. From time to time, the Company’s balances may exceed insurance limits. As of June 30, 2023, the Company had $2,892,826 of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly creditworthy.

 

Recently Issued Accounting Standards - Adopted

 

In the first quarter of 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 significant impact on the Company’s financial statements.

 

XML 18 R8.htm IDEA: XBRL DOCUMENT v3.23.2
REVENUE RECOGNITION
6 Months Ended
Jun. 30, 2023
Revenue from Contract with Customer [Abstract]  
REVENUE RECOGNITION

 

2. REVENUE RECOGNITION

 

In accordance with Accounting Standards Codification Topic 606 (“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 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.

 

Contracts with Customers and Performance Obligations

 

The majority of the Company’s revenues are from long-term contracts with the U.S. government as well military 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 and military contractors typically are subject to the Federal Acquisition Regulation, 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 contracts is 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; in most cases this will be based on shipping terms.

 

Contract Estimates

 

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

 

Capitalized Contract Acquisition Costs and Fulfillment Costs

 

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

 

 

Disaggregation of Revenue

 

The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method:

 

   Three months ended
June 30,
   Six months ended
June 30,
 
   2023   2022   2023   2022 
Aerostructures  $8,425,795   $9,819,902   $18,499,320   $19,006,695 
Aerosystems   7,567,883    5,984,045    17,120,134    12,670,873 
Kitting and Supply Chain Management   4,553,877    3,121,459    6,944,769    7,382,935 
   $20,547,555   $18,925,406   $42,564,223   $39,060,503 

 

   Three months ended
June 30,
   Six months ended
June 30,
 
   2023   2022   2023   2022 
Revenue recognized using over time revenue recognition model  $18,669,843   $16,565,696   $39,300,073   $35,060,893 
Revenue recognized using point in time revenue recognition model   1,877,712    2,359,710    3,264,150    3,999,610 
   $20,547,555   $18,925,406   $42,564,223   $39,060,503 

 

 

Transaction Price Allocated to Remaining Performance Obligations

 

As of June 30, 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 June 30, 2023. The majority of the Company’s performance obligations have an average duration up to approximately three years.

XML 19 R9.htm IDEA: XBRL DOCUMENT v3.23.2
CONTRACT ASSETS AND LIABILITIES
6 Months Ended
Jun. 30, 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 customers 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 as well as military contractor 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 and military contractor 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.

    June 30,     December 31,  
    2023     2022  
Contract assets   $ 30,962,061     $ 27,384,540  
Contract liabilities     8,605,354       6,001,726  
Net Contract assets   $ 22,356,707     $ 21,382,814  

 

Revenue recognized for the six months ended June 30, 2023 and 2022 that was included in the contract liabilities balance as of January 1, 2023 and 2022, respectively, was approximately $1.9 million and $3.2 million, respectively.

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.23.2
INVENTORY
6 Months Ended
Jun. 30, 2023
Inventory Disclosure [Abstract]  
INVENTORY

 

4. INVENTORY

 

The components of inventory consisted of the following:

 

   

June 30,

2023

   

December 31,

2022

 
Raw materials   $ 1,822,930     $ 1,892,157  
Work in progress     216,908       685,438  
Finished goods     2,293,217       3,038,859  
Gross inventory     4,333,055       5,616,454  
Inventory reserves     (2,414,149 )     (3,123,386 )
Inventory, net   $ 1,918,906     $ 2,493,069  

 

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.23.2
STOCK-BASED COMPENSATION
6 Months Ended
Jun. 30, 2023
Share-Based Payment Arrangement [Abstract]  
STOCK-BASED COMPENSATION

 

5. STOCK-BASED COMPENSATION

 

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

 

                                 
    Three months ended
June 30,
    Six months ended
June 30,
 
    2023     2022     2023     2022  
Cost of sales   $ 37,171     $ 6,471     $ 52,248     $ 20,006  
Selling, general and administrative     143,045       131,027       466,891       143,374  
Total stock-based compensation expense   $ 180,216     $ 137,498     $ 519,139     $ 163,380  

 

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 Company grants shares of common stock (“Restricted Stock Awards”) to select employees. In the event that the employee’s employment is voluntarily terminated prior to certain vesting dates, portions of the shares may be forfeited. In addition, if certain Company performance criteria are not achieved, portions of these shares may be forfeited. 85,748 shares were forfeited during the six months ended June 30, 2022, resulting in a reduction to stock-based compensation expense for the six months ended June 30, 2022 in selling, general and administrative expense of $263,148.

 

The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023:

 

      Restricted Stock Awards    

Weighted Average

Grant Date

Fair Value of Restricted Stock Awards

    RSUs    

Weighted Average

Grant Date

Fair Value of RSUs

 
Non-vested – January 1, 2023       239,184     $ 2.32           $  
Granted       212,902     $ 3.82       170,042     $ 3.44  
Vested       (82,769)     $ 2.83       (69,845 )   $ 3.42  
Forfeited           $       (33,749 )   $ 3.42  
Non-vested – June 30, 2023       369,317     $ 3.25       66,448     $ 3.47  

 

As of June 30, 2023, unamortized stock-based compensation costs related to restricted share arrangements was $514,880.

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.23.2
FAIR VALUE
6 Months Ended
Jun. 30, 2023
Fair Value Disclosures [Abstract]  
FAIR VALUE

 

6. FAIR VALUE
   

Fair Value

 

At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments.

 

    June 30, 2023  
   

Carrying

Amount

    Fair Value  
Debt            
Short-term borrowings and long-term debt   $ 21,262,656     $ 21,262,656  
                 
    December 31, 2022  
   

Carrying

Amount

    Fair Value  
Debt            
Short-term borrowings and long-term debt   $ 22,790,747     $ 22,790,747  
                 

 

We estimated the fair value of debt using market quotes and calculations based on market rates.

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.23.2
INCOME PER COMMON SHARE
6 Months Ended
Jun. 30, 2023
Earnings Per Share [Abstract]  
INCOME PER COMMON SHARE

 

7. INCOME PER COMMON SHARE
   

The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the two-class 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. During the three months and six months ended June 30, 2023 and 2022, respectively, and as of June 30, 2023 and 2022, respectively, the Company had restricted shares of common stock that were considered participating securities and unrestricted shares of common stock outstanding. Earnings and losses are shared pro rata.

 

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. Incremental shares of 66,448 were used in the calculation of diluted income per common share for both the three and six months ended June 30, 2023.

 

For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows:

 

                                 
    Three months ended
June 30,
    Six months ended
June 30,
 
    2023     2022     2023     2022  
Net income   $ 1,157,076     $ 517,636     $ 2,140,381     $ 484,705  
                                 
Income per common share, basic:                                
Income per common share-unrestricted shares   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
Income per common share-restricted shares   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
                                 
Income per common share, diluted   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
                                 
Shares used in computing income per common share, basic:                                
Unrestricted shares     12,429,894       12,305,939       12,412,068       12,275,306  
Restricted shares     128,899       133,061       127,584       125,975  
Total shares     12,558,793       12,439,000       12,539,652       12,401,281  
                                 
Shares used in computing income per common share, diluted     12,625,241       12,534,058       12,606,100       12,496,339  

 

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.23.2
DEBT
6 Months Ended
Jun. 30, 2023
Debt Disclosure [Abstract]  
DEBT

 

8. DEBT
   

On March 24, 2016, the Company entered into the Amended and Restated Credit Agreement with the lenders named therein and BankUnited N.A. as Sole Arranger, Agent and Collateral Agent (as amended from time to time, 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 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 was 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 June 30, 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, which the Company entered into on October 28, 2021 in two installments, the first installment paid on June 1, 2023 in the amount of $116,667 and the second installment 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 installments and interest accrued were paid on such dates).

 

 

The Credit Agreement, as amended, requires us to maintain the following financial covenants: (a) minimum debt service coverage ratio of no less than 1.5 to 1.0 for trailing four fiscal quarter periods; (b) maximum leverage ratio of no less than 4.0 to 1.0 for trailing four fiscal quarter periods; (c) minimum net income after taxes as of the end of each fiscal quarter being no less than $1.00; and (d) a minimum adjusted EBITDA at the end of each fiscal quarter of no less than $1.0 million. The additional principal payments, increase in interest and the Amendment Fee provided for in the Eight Amendment and Ninth Amendment to the Credit Agreement, which the Company entered into on April 12, 2022 are excluded for purposes of calculating compliance with each of the financial covenants.

 

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.25% as of June 30, 2023 and as such, the Company’s interest rate on the Revolving Loan and Term Loan was 11.75% as of June 30, 2023.

 

As of June 30, 2023 and December 31, 2022, the Company had $21,000,000 million outstanding under the Revolving Loan. $2,640,000 of the Revolving Loan is payable by June 30, 2024 and the remaining balance of $18,360,000 of the revolving line of credit matures and is payable by November 30, 2024.

 

The Term Loan had an aggregate principal amount of $133,333, payable in monthly installments, as defined in the Credit Agreement, as of June 30, 2023 as compared to an aggregate principal amount outstanding as of December 31, 2022 of $1,583,333.

 

The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows:

 

For the Year Ending December 31,        
Remainder of 2023     $ 181,827  
2024       51,801  
2025       29,028  
Total                        $ 262,656  

 

Included in long-term debt are financing leases and other notes payable of $129,323 and $207,414 at June 30, 2023 and December 31, 2022, respectively, including a current portion of $87,838 and $136,433, respectively.

 

 

The Company has cumulatively paid approximately $962,000 of total debt issuance costs in connection with the BankUnited Facility, of which approximately $126,000 is included in other assets at June 30, 2023.

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.23.2
MAJOR CUSTOMERS
6 Months Ended
Jun. 30, 2023
Risks and Uncertainties [Abstract]  
MAJOR CUSTOMERS

 

9. MAJOR CUSTOMERS
   

During the six months ended June 30, 2023, our two largest customers accounted for 32% and 29% of revenue. During the six months ended June 30, 2022, our three largest customers accounted for 36%, 14% and 11% of revenue.

 

At June 30, 2023, 22%, 19%, 17% and 15% of our contract assets were from four of our largest customers. At December 31, 2022, 27%, 20%, 16%, and 16% of our contract assets were related to our four largest customers.

 

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

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.23.2
LEASES
6 Months Ended
Jun. 30, 2023
Leases  
LEASES

 

10. LEASES
   

The Company leases manufacturing and office space under an agreement classified as an operating lease. On November 10, 2021, 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 six months ended June 30, 2023 and 2022, the Company’s operating lease expense was $1,084,968 and $1,051,911, respectively. For the three months ended June 30, 2023 and 2022, the Company’s operating lease expense was $550,942 and $516,920, respectively.

 

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

 

For the Year Ending December 31,        
Remainder of 2023     $ 1,096,220  
2024       2,228,784  
2025       2,283,354  
2026       850,276  
2027       111,065  
Thereafter       9,228  
Total undiscounted operating lease payments       6,578,927  
Less imputed interest       (536,037 )
Present value of operating lease payments     $ 6,042,890  

 

 

The following table sets forth the ROU assets and operating lease liabilities as of:

 

    June 30,
2023
    December 31,
2022
 
Assets            
ROU assets, net   $ 5,646,483     $ 6,526,627  
                 
Liabilities                
Current operating lease liabilities   $ 1,921,803     $ 1,817,811  
Long-term operating lease liabilities     4,121,087       5,077,235  
Total lease liabilities   $ 6,042,890     $ 6,895,046  

 

The Company’s weighted average remaining lease term for its operating leases is 2.9 years as of June 30, 2023. The Company’s weighted average discount rate for its operating leases is 5.4% as of June 30, 2023.

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.23.2
INCOME TAXES
6 Months Ended
Jun. 30, 2023
Income Tax Disclosure [Abstract]  
INCOME TAXES

 

11. 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’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.

 

The provision for income tax for the six months ended June 30, 2023 and 2022 was $298,046 and $7,500, respectively. The provision for income tax for the three months ended June 30, 2023 and 2022 was $98,789 and $6,225, respectively. The increase in the year-over-year provision for income tax is the result of the Company’s valuation allowance on its deferred tax asset being partially released at December 31, 2022, resulting in the periodic change in the deferred asset for the periods subsequent to December 31, 2022 being recorded through the Company’s statement of operations during such periods. For the three and six months ending June 30, 2022 the company’s deferred tax assets were fully offset by the valuation allowance, therefore there was only minimum state tax income expense recorded to the Company’s statement of operations during those periods.

 

The effective income tax rate for the six months ended June 30, 2023 is 12.2%. The difference between the effective income tax rate for the six months ended June 30, 2023 and the statutory income tax rate of 21% for the six months ended June 30, 2023 is due to the estimated R&D credit, the partial release of approximately $121,000 of the Company’s valuation allowance on its deferred tax asset recorded during the three months ending June 30, 2023, state income taxes and permanent tax differences.

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.23.2
COMMITMENTS AND CONTINGENCIES
6 Months Ended
Jun. 30, 2023
Commitments and Contingencies Disclosure [Abstract]  
COMMITMENTS AND CONTINGENCIES

 

12. COMMITMENTS AND CONTINGENCIES
   

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 Company’s registration statement and prospectus supplements issued in connection with the Company’s 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 (the “Settlement Amount”), 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, 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.

 

Shareholder Derivative Action

 

Four shareholder derivative actions, each based on substantially the same facts as those alleged in the class action discussed above, have been filed against certain current and former members of our board of directors and certain of our current and former officers.

 

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 purports 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 seeks 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 seeks declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. On October 26, 2020, plaintiff filed an amended complaint. On January 27, 2021, the court stayed the action pursuant to a joint stipulation filed by the parties.

 

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 purports to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and seeks 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. On December 22, 2020, the parties filed a joint stipulation staying the action pending further developments in the class action.

 

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 is based on the shareholder’s inspection of certain corporate books and records, purports to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and seeks 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 seeks 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 pending further developments in the class 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 purports to assert derivative claims against the individual defendants for breach of fiduciary duty, unjust enrichment, and waste of corporate assets, and seeks 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 seeks declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. On April 12, 2021, the parties filed a joint stipulation staying the action pending further developments in the class action.

 

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 July 22, 2022, the court referred the motion to the magistrate judge. The magistrate judge held a conference on September 9, 2022 in the consolidated federal action. 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. The final approval motion remains pending.

 

The terms of the proposed settlement are set forth in the stipulation of settlement agreed to by the Company and plaintiffs. Should the proposed settlement receive final approval from the Court, it will result in the dismissal of the shareholder derivative lawsuits. As part of the proposed settlement, the Company has 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.

 

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 June 30, 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 29 R19.htm IDEA: XBRL DOCUMENT v3.23.2
INTERIM FINANCIAL STATEMENTS (Policies)
6 Months Ended
Jun. 30, 2023
Accounting Policies [Abstract]  
Basis of Presentation

Basis of Presentation

 

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

 

The condensed consolidated interim financial statements of the Company as of June 30, 2023 and for the six months ended June 30, 2023 and 2022 have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). Certain information and notes normally included in financial statements prepared in accordance with generally accepted accounting principles in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations. The consolidated balance sheet at December 31, 2022 has been derived from audited consolidated financial statements, but does not include all of the information and notes required by U.S. GAAP. The Company believes that the disclosures are adequate to make the information presented not misleading.

 

All adjustments that, in the opinion of the management, are necessary for a fair presentation for the periods presented have been reflected. Such adjustments are of a normal, recurring nature. It is suggested that these consolidated financial statements be read in conjunction with the consolidated financial statements and notes thereto included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “Form 10-K”). The results of operations for interim periods are not necessarily indicative of the operating results to be expected for the full year or any other interim period.

 

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.

 

The Company maintains its cash in four financial institutions. The balances are insured by the Federal Deposit Insurance Corporation. From time to time, the Company’s balances may exceed insurance limits. As of June 30, 2023, the Company had $2,892,826 of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly creditworthy.

Recently Issued Accounting Standards - Adopted

Recently Issued Accounting Standards - Adopted

 

In the first quarter of 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 significant impact on the Company’s financial statements.

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.23.2
REVENUE RECOGNITION (Tables)
6 Months Ended
Jun. 30, 2023
Revenue from Contract with Customer [Abstract]  
The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method:

The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method:

 

   Three months ended
June 30,
   Six months ended
June 30,
 
   2023   2022   2023   2022 
Aerostructures  $8,425,795   $9,819,902   $18,499,320   $19,006,695 
Aerosystems   7,567,883    5,984,045    17,120,134    12,670,873 
Kitting and Supply Chain Management   4,553,877    3,121,459    6,944,769    7,382,935 
   $20,547,555   $18,925,406   $42,564,223   $39,060,503 

 

   Three months ended
June 30,
   Six months ended
June 30,
 
   2023   2022   2023   2022 
Revenue recognized using over time revenue recognition model  $18,669,843   $16,565,696   $39,300,073   $35,060,893 
Revenue recognized using point in time revenue recognition model   1,877,712    2,359,710    3,264,150    3,999,610 
   $20,547,555   $18,925,406   $42,564,223   $39,060,503 
XML 31 R21.htm IDEA: XBRL DOCUMENT v3.23.2
CONTRACT ASSETS AND LIABILITIES (Tables)
6 Months Ended
Jun. 30, 2023
Contract Assets And Liabilities  
Schedule of contract assets and liabilities

    June 30,     December 31,  
    2023     2022  
Contract assets   $ 30,962,061     $ 27,384,540  
Contract liabilities     8,605,354       6,001,726  
Net Contract assets   $ 22,356,707     $ 21,382,814  
XML 32 R22.htm IDEA: XBRL DOCUMENT v3.23.2
INVENTORY (Tables)
6 Months Ended
Jun. 30, 2023
Inventory Disclosure [Abstract]  
The components of inventory consisted of the following:

The components of inventory consisted of the following:

 

   

June 30,

2023

   

December 31,

2022

 
Raw materials   $ 1,822,930     $ 1,892,157  
Work in progress     216,908       685,438  
Finished goods     2,293,217       3,038,859  
Gross inventory     4,333,055       5,616,454  
Inventory reserves     (2,414,149 )     (3,123,386 )
Inventory, net   $ 1,918,906     $ 2,493,069  
XML 33 R23.htm IDEA: XBRL DOCUMENT v3.23.2
STOCK-BASED COMPENSATION (Tables)
6 Months Ended
Jun. 30, 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:

 

                                 
    Three months ended
June 30,
    Six months ended
June 30,
 
    2023     2022     2023     2022  
Cost of sales   $ 37,171     $ 6,471     $ 52,248     $ 20,006  
Selling, general and administrative     143,045       131,027       466,891       143,374  
Total stock-based compensation expense   $ 180,216     $ 137,498     $ 519,139     $ 163,380  
The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023:

The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023:

 

      Restricted Stock Awards    

Weighted Average

Grant Date

Fair Value of Restricted Stock Awards

    RSUs    

Weighted Average

Grant Date

Fair Value of RSUs

 
Non-vested – January 1, 2023       239,184     $ 2.32           $  
Granted       212,902     $ 3.82       170,042     $ 3.44  
Vested       (82,769)     $ 2.83       (69,845 )   $ 3.42  
Forfeited           $       (33,749 )   $ 3.42  
Non-vested – June 30, 2023       369,317     $ 3.25       66,448     $ 3.47  
XML 34 R24.htm IDEA: XBRL DOCUMENT v3.23.2
FAIR VALUE (Tables)
6 Months Ended
Jun. 30, 2023
Fair Value Disclosures [Abstract]  
At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments.

At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments.

 

    June 30, 2023  
   

Carrying

Amount

    Fair Value  
Debt            
Short-term borrowings and long-term debt   $ 21,262,656     $ 21,262,656  
                 
    December 31, 2022  
   

Carrying

Amount

    Fair Value  
Debt            
Short-term borrowings and long-term debt   $ 22,790,747     $ 22,790,747  
                 
XML 35 R25.htm IDEA: XBRL DOCUMENT v3.23.2
INCOME PER COMMON SHARE (Tables)
6 Months Ended
Jun. 30, 2023
Earnings Per Share [Abstract]  
For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows:

For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows:

 

                                 
    Three months ended
June 30,
    Six months ended
June 30,
 
    2023     2022     2023     2022  
Net income   $ 1,157,076     $ 517,636     $ 2,140,381     $ 484,705  
                                 
Income per common share, basic:                                
Income per common share-unrestricted shares   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
Income per common share-restricted shares   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
                                 
Income per common share, diluted   $ 0.09     $ 0.04     $ 0.17     $ 0.04  
                                 
Shares used in computing income per common share, basic:                                
Unrestricted shares     12,429,894       12,305,939       12,412,068       12,275,306  
Restricted shares     128,899       133,061       127,584       125,975  
Total shares     12,558,793       12,439,000       12,539,652       12,401,281  
                                 
Shares used in computing income per common share, diluted     12,625,241       12,534,058       12,606,100       12,496,339  
XML 36 R26.htm IDEA: XBRL DOCUMENT v3.23.2
DEBT (Tables)
6 Months Ended
Jun. 30, 2023
Debt Disclosure [Abstract]  
The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows:

The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows:

 

For the Year Ending December 31,        
Remainder of 2023     $ 181,827  
2024       51,801  
2025       29,028  
Total                        $ 262,656  
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.23.2
LEASES (Tables)
6 Months Ended
Jun. 30, 2023
Leases  
Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows:

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

 

For the Year Ending December 31,        
Remainder of 2023     $ 1,096,220  
2024       2,228,784  
2025       2,283,354  
2026       850,276  
2027       111,065  
Thereafter       9,228  
Total undiscounted operating lease payments       6,578,927  
Less imputed interest       (536,037 )
Present value of operating lease payments     $ 6,042,890  
The following table sets forth the ROU assets and operating lease liabilities as of:

The following table sets forth the ROU assets and operating lease liabilities as of:

 

    June 30,
2023
    December 31,
2022
 
Assets            
ROU assets, net   $ 5,646,483     $ 6,526,627  
                 
Liabilities                
Current operating lease liabilities   $ 1,921,803     $ 1,817,811  
Long-term operating lease liabilities     4,121,087       5,077,235  
Total lease liabilities   $ 6,042,890     $ 6,895,046  
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.23.2
INTERIM FINANCIAL STATEMENTS (Details Narrative)
Jun. 30, 2023
USD ($)
Accounting Policies [Abstract]  
Uninsured balance $ 2,892,826
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.23.2
The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method: (Details) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Disaggregation of Revenue [Line Items]        
Revenue $ 20,547,555 $ 18,925,406 $ 42,564,223 $ 39,060,503
Transferred over Time [Member]        
Disaggregation of Revenue [Line Items]        
Revenue 18,669,843 16,565,696 39,300,073 35,060,893
Transferred at Point in Time [Member]        
Disaggregation of Revenue [Line Items]        
Revenue 1,877,712 2,359,710 3,264,150 3,999,610
Aerostructure [Member]        
Disaggregation of Revenue [Line Items]        
Revenue 8,425,795 9,819,902 18,499,320 19,006,695
Aerosystems [Member]        
Disaggregation of Revenue [Line Items]        
Revenue 7,567,883 5,984,045 17,120,134 12,670,873
Kitting and Supply Chain Management [Member]        
Disaggregation of Revenue [Line Items]        
Revenue $ 4,553,877 $ 3,121,459 $ 6,944,769 $ 7,382,935
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.2
REVENUE RECOGNITION (Details Narrative) - Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-07-01
$ in Millions
Jun. 30, 2023
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligations $ 118.2
Performance obligations duration 3 years
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.23.2
Schedule of contract assets and liabilities (Details) - USD ($)
Jun. 30, 2023
Dec. 31, 2022
Contract Assets And Liabilities    
Contract assets $ 30,962,061 $ 27,384,540
Contract liabilities 8,605,354 6,001,726
Net Contract assets $ 22,356,707 $ 21,382,814
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.23.2
CONTRACT ASSETS AND LIABILITIES (Details Narrative) - USD ($)
$ in Millions
6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Contract Assets And Liabilities    
Revenue recognized that was included in contract liabilities $ 1.9 $ 3.2
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.23.2
The components of inventory consisted of the following: (Details) - USD ($)
Jun. 30, 2023
Dec. 31, 2022
Inventory Disclosure [Abstract]    
Raw materials $ 1,822,930 $ 1,892,157
Work in progress 216,908 685,438
Finished goods 2,293,217 3,038,859
Gross inventory 4,333,055 5,616,454
Inventory reserves (2,414,149) (3,123,386)
Inventory, net $ 1,918,906 $ 2,493,069
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Total stock-based compensation expense $ 180,216 $ 137,498 $ 519,139 $ 163,380
Cost of Sales [Member]        
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Total stock-based compensation expense 37,171 6,471 52,248 20,006
Selling, General and Administrative Expenses [Member]        
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]        
Total stock-based compensation expense $ 143,045 $ 131,027 $ 466,891 $ 143,374
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.23.2
The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023: (Details)
6 Months Ended
Jun. 30, 2023
$ / shares
shares
Restricted Stock [Member]  
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]  
Non vested January 1, 2022 | shares 239,184
Non vested January 1, 2022 | $ / shares $ 2.32
Granted | shares 212,902
Granted | $ / shares $ 3.82
Vested | shares (82,769)
Vested | $ / shares $ 2.83
Forfeited | shares
Forfeited | $ / shares
Non vested December 31, 2022 | shares 369,317
Non vested December 31, 2022 | $ / shares $ 3.25
Restricted Stock Units (RSUs) [Member]  
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 170,042
Granted | $ / shares $ 3.44
Vested | shares (69,845)
Vested | $ / shares $ 3.42
Forfeited | shares (33,749)
Forfeited | $ / shares $ 3.42
Non vested December 31, 2022 | shares 66,448
Non vested December 31, 2022 | $ / shares $ 3.47
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.23.2
STOCK-BASED COMPENSATION (Details Narrative) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Shares forfeited     85,748  
Stock-based compensation $ (180,216) $ (137,498) $ (519,139) $ (163,380)
Unamortized stock-based compensation costs 514,880   514,880  
Selling, General and Administrative Expenses [Member]        
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation $ (143,045) $ (131,027) $ (466,891) (143,374)
Forfeited Restricted Stock [Member] | Selling, General and Administrative Expenses [Member]        
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]        
Stock-based compensation       $ 263,148
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.23.2
At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments. (Details) - USD ($)
Jun. 30, 2023
Dec. 31, 2022
Reported Value Measurement [Member]    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term borrowings and long-term debt $ 21,262,656 $ 22,790,747
Estimate of Fair Value Measurement [Member]    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term borrowings and long-term debt $ 21,262,656 $ 22,790,747
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.23.2
For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows: (Details) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Mar. 31, 2023
Jun. 30, 2022
Mar. 31, 2022
Jun. 30, 2023
Jun. 30, 2022
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]            
Net income $ 1,157,076 $ 983,305 $ 517,636 $ (32,931) $ 2,140,381 $ 484,705
Income per common share, diluted            
Income (loss) per common share, diluted $ 0.09   $ 0.04   $ 0.17 $ 0.04
Shares used in computing income per common share, basic:            
Total shares 12,558,793   12,439,000   12,539,652 12,401,281
Shares used in computing income per common share, diluted 12,625,241   12,534,058   12,606,100 12,496,339
Unrestricted Shares [Member]            
Income per common share, basic:            
Income (loss) per common share, basic $ 0.09   $ 0.04   $ 0.17 $ 0.04
Shares used in computing income per common share, basic:            
Total shares 12,429,894   12,305,939   12,412,068 12,275,306
Restricted Shares [Member]            
Income per common share, basic:            
Income (loss) per common share, basic $ 0.09   $ 0.04   $ 0.17 $ 0.04
Shares used in computing income per common share, basic:            
Total shares 128,899   133,061   127,584 125,975
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.23.2
INCOME PER COMMON SHARE (Details Narrative) - shares
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2023
Earnings Per Share [Abstract]    
Incremental shares used in calculation of diluted income per common share 66,448 66,448
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.23.2
The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows: (Details)
Jun. 30, 2023
USD ($)
Debt Disclosure [Abstract]  
Remainder of 2023 $ 181,827
2024 51,801
2025 29,028
Total                    $ 262,656
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.23.2
DEBT (Details Narrative)
6 Months Ended 87 Months Ended
Mar. 23, 2023
USD ($)
Jun. 30, 2023
USD ($)
Jun. 30, 2022
USD ($)
Jun. 30, 2023
USD ($)
Dec. 31, 2022
USD ($)
Mar. 24, 2016
USD ($)
Line of Credit Facility [Line Items]            
Current portion of line of credit   $ 2,640,000   $ 2,640,000 $ 1,200,000  
Line of credit   18,360,000   18,360,000 19,800,000  
Financing leases and notes payable   129,323   129,323 207,414  
Financing leases and notes payable current   87,838   $ 87,838 136,433  
Payments of debt issuance costs   $ 54,334      
Prime Rate [Member]            
Line of Credit Facility [Line Items]            
Debt Instrument, Interest Rate, Stated Percentage   8.25%   8.25%    
Term loan [Member]            
Line of Credit Facility [Line Items]            
Aggregate principal balance   $ 133,333   $ 133,333 1,583,333  
Bank United [Member]            
Line of Credit Facility [Line Items]            
Minimum debt service coverage ratio   1.5   1.5    
Maximum leverage ratio   4.0   4.0    
Minimum adjusted EBITDA   $ 1,000,000        
Payments of debt issuance costs       $ 962,000    
Debt issuance costs   126,000   126,000    
Bank United [Member] | Minimum [Member]            
Line of Credit Facility [Line Items]            
Net income required under agreement   1.00        
Bank United [Member] | Revolving Credit Facility [Member]            
Line of Credit Facility [Line Items]            
Line of credit facility, maximum borrowing capacity           $ 30,000,000
Amendment fee $ 250,000          
Outstanding loans   21,000,000   21,000,000 $ 21,000,000  
Current portion of line of credit   2,640,000   2,640,000    
Line of credit   $ 18,360,000   $ 18,360,000    
Bank United [Member] | Revolving Credit Facility [Member] | Period One [Member]            
Line of Credit Facility [Line Items]            
Line of credit facility, maximum borrowing capacity 20,520,000          
Bank United [Member] | Revolving Credit Facility [Member] | Period Two [Member]            
Line of Credit Facility [Line Items]            
Line of credit facility, maximum borrowing capacity 19,800,000          
Bank United [Member] | Revolving Credit Facility [Member] | Period Three [Member]            
Line of Credit Facility [Line Items]            
Line of credit facility, maximum borrowing capacity 17,640,000          
Bank United [Member] | Revolving Credit Facility [Member] | First Installment [Member]            
Line of Credit Facility [Line Items]            
Amendment fee 116,667          
Bank United [Member] | Revolving Credit Facility [Member] | Second Installment [Member]            
Line of Credit Facility [Line Items]            
Amendment fee $ 133,333          
Bank United [Member] | Term loan [Member]            
Line of Credit Facility [Line Items]            
Debt instrument, face amount           $ 10,000,000
Bank United [Member] | Revolving Loan and Term Loan [Member]            
Line of Credit Facility [Line Items]            
Expiration date Nov. 30, 2024          
Interest rate   11.75%   11.75%    
Bank United [Member] | Revolving Loan and Term Loan [Member] | Prime Rate [Member]            
Line of Credit Facility [Line Items]            
Prime rate Plus   3.50%        
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.23.2
MAJOR CUSTOMERS (Details Narrative) - Customer Concentration Risk [Member]
6 Months Ended 12 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Dec. 31, 2022
Revenue Benchmark [Member] | Customer One [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 32.00% 36.00%  
Revenue Benchmark [Member] | Customer Two [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 29.00% 14.00%  
Revenue Benchmark [Member] | Customer Three [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage   11.00%  
Contract Assets [Member] | Customer One [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 22.00%   27.00%
Contract Assets [Member] | Customer Two [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 19.00%   20.00%
Contract Assets [Member] | Customer Three [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 17.00%   16.00%
Contract Assets [Member] | Customer Four [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 15.00%   16.00%
Accounts Receivable [Member] | Customer One [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 22.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 13.00%   17.00%
Accounts Receivable [Member] | Customer Four [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 11.00%   13.00%
Accounts Receivable [Member] | Customer Five [Member]      
Concentration Risk [Line Items]      
Concentration Risk, Percentage 10.00%    
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.23.2
Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows: (Details) - USD ($)
Jun. 30, 2023
Dec. 31, 2022
Leases    
Remainder of 2023 $ 1,096,220  
2024 2,228,784  
2025 2,283,354  
2026 850,276  
2027 111,065  
Thereafter 9,228  
Total undiscounted operating lease payments 6,578,927  
Less imputed interest (536,037)  
Present value of operating lease payments $ 6,042,890 $ 6,895,046
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.23.2
The following table sets forth the ROU assets and operating lease liabilities as of: (Details) - USD ($)
Jun. 30, 2023
Dec. 31, 2022
Assets    
ROU assets, net $ 5,646,483 $ 6,526,627
Liabilities    
Current operating lease liabilities 1,921,803 1,817,811
Long-term operating lease liabilities 4,121,087 5,077,235
Total lease liabilities $ 6,042,890 $ 6,895,046
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.23.2
LEASES (Details Narrative) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Leases        
Expiration date     Apr. 30, 2026  
Operating lease expense $ 550,942 $ 516,920 $ 1,084,968 $ 1,051,911
Weighted average remaining lease term operating leases 2 years 10 months 24 days   2 years 10 months 24 days  
Weighted average discount rate for its operating leases 5.40%   5.40%  
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.23.2
INCOME TAXES (Details Narrative) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Income Tax Disclosure [Abstract]        
Provision for income taxes $ 98,789 $ 6,225 $ 298,046 $ 7,500
Effective income tax rate     12.20%  
Statutory income tax rate     21.00%  
Valuation allowance released     $ 121,000  
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.23.2
COMMITMENTS AND CONTINGENCIES (Details Narrative) - USD ($)
6 Months Ended
May 17, 2023
May 20, 2021
Jun. 30, 2023
Commitments and Contingencies Disclosure [Abstract]      
Settlement amount   $ 3,600,000  
Attorneys' fees $ 585,000    
Covered settlement amount     $ 750,000
Directors and officers insurance retention amount     $ 750,000
XML 58 cpi-10q_063023_htm.xml IDEA: XBRL DOCUMENT 0000889348 2023-01-01 2023-06-30 0000889348 2023-08-17 0000889348 2023-06-30 0000889348 2022-12-31 0000889348 2023-04-01 2023-06-30 0000889348 2022-04-01 2022-06-30 0000889348 2022-01-01 2022-06-30 0000889348 cvu:UnrestrictedSharesMember 2023-04-01 2023-06-30 0000889348 cvu:UnrestrictedSharesMember 2022-04-01 2022-06-30 0000889348 cvu:UnrestrictedSharesMember 2023-01-01 2023-06-30 0000889348 cvu:UnrestrictedSharesMember 2022-01-01 2022-06-30 0000889348 cvu:RestrictedSharesMember 2023-04-01 2023-06-30 0000889348 cvu:RestrictedSharesMember 2022-04-01 2022-06-30 0000889348 cvu:RestrictedSharesMember 2023-01-01 2023-06-30 0000889348 cvu:RestrictedSharesMember 2022-01-01 2022-06-30 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-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-03-31 0000889348 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0000889348 2022-01-01 2022-03-31 0000889348 us-gaap:CommonStockMember 2022-04-01 2022-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-04-01 2022-06-30 0000889348 us-gaap:RetainedEarningsMember 2022-04-01 2022-06-30 0000889348 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0000889348 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0000889348 2023-01-01 2023-03-31 0000889348 us-gaap:CommonStockMember 2023-04-01 2023-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0000889348 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0000889348 us-gaap:CommonStockMember 2022-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-03-31 0000889348 us-gaap:RetainedEarningsMember 2022-03-31 0000889348 2022-03-31 0000889348 us-gaap:CommonStockMember 2022-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2022-06-30 0000889348 us-gaap:RetainedEarningsMember 2022-06-30 0000889348 2022-06-30 0000889348 us-gaap:CommonStockMember 2023-03-31 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0000889348 us-gaap:RetainedEarningsMember 2023-03-31 0000889348 2023-03-31 0000889348 us-gaap:CommonStockMember 2023-06-30 0000889348 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0000889348 us-gaap:RetainedEarningsMember 2023-06-30 0000889348 cvu:AerostructureMember 2023-04-01 2023-06-30 0000889348 cvu:AerostructureMember 2022-04-01 2022-06-30 0000889348 cvu:AerostructureMember 2023-01-01 2023-06-30 0000889348 cvu:AerostructureMember 2022-01-01 2022-06-30 0000889348 cvu:AerosystemsMember 2023-04-01 2023-06-30 0000889348 cvu:AerosystemsMember 2022-04-01 2022-06-30 0000889348 cvu:AerosystemsMember 2023-01-01 2023-06-30 0000889348 cvu:AerosystemsMember 2022-01-01 2022-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2023-04-01 2023-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2022-04-01 2022-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2023-01-01 2023-06-30 0000889348 cvu:KittingAndSupplyChainManagementMember 2022-01-01 2022-06-30 0000889348 us-gaap:TransferredOverTimeMember 2023-04-01 2023-06-30 0000889348 us-gaap:TransferredOverTimeMember 2022-04-01 2022-06-30 0000889348 us-gaap:TransferredOverTimeMember 2023-01-01 2023-06-30 0000889348 us-gaap:TransferredOverTimeMember 2022-01-01 2022-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2023-04-01 2023-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2022-04-01 2022-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-06-30 0000889348 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-06-30 0000889348 2023-07-01 2023-06-30 0000889348 us-gaap:CostOfSalesMember 2023-04-01 2023-06-30 0000889348 us-gaap:CostOfSalesMember 2022-04-01 2022-06-30 0000889348 us-gaap:CostOfSalesMember 2023-01-01 2023-06-30 0000889348 us-gaap:CostOfSalesMember 2022-01-01 2022-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-04-01 2023-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-04-01 2022-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-06-30 0000889348 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000889348 cvu:ForfeitedRestrictedStockMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000889348 us-gaap:RestrictedStockMember 2022-12-31 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2022-12-31 0000889348 us-gaap:RestrictedStockMember 2023-01-01 2023-06-30 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-06-30 0000889348 us-gaap:RestrictedStockMember 2023-06-30 0000889348 us-gaap:RestrictedStockUnitsRSUMember 2023-06-30 0000889348 us-gaap:CarryingReportedAmountFairValueDisclosureMember 2023-06-30 0000889348 us-gaap:EstimateOfFairValueFairValueDisclosureMember 2023-06-30 0000889348 us-gaap:CarryingReportedAmountFairValueDisclosureMember 2022-12-31 0000889348 us-gaap:EstimateOfFairValueFairValueDisclosureMember 2022-12-31 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2016-03-24 0000889348 cvu:TermLoanMember cvu:BankUnitedMember 2016-03-24 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: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 cvu:BankUnitedMember 2023-06-30 0000889348 srt:MinimumMember cvu:BankUnitedMember 2023-01-01 2023-06-30 0000889348 cvu:BankUnitedMember 2023-01-01 2023-06-30 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember us-gaap:PrimeRateMember 2023-01-01 2023-06-30 0000889348 us-gaap:PrimeRateMember 2023-06-30 0000889348 cvu:RevolvingLoanAndTermLoanMember cvu:BankUnitedMember 2023-06-30 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2023-06-30 0000889348 us-gaap:RevolvingCreditFacilityMember cvu:BankUnitedMember 2022-12-31 0000889348 cvu:TermLoanMember 2023-06-30 0000889348 cvu:TermLoanMember 2022-12-31 0000889348 cvu:BankUnitedMember 2016-03-25 2023-06-30 0000889348 cvu:CustomerOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerOneMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-06-30 0000889348 cvu:CustomerTwoMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-06-30 0000889348 cvu:CustomerThreeMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-06-30 0000889348 cvu:CustomerOneMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerTwoMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerThreeMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerFourMember cvu:ContractAssetsMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 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 cvu:CustomerOneMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerTwoMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerThreeMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerFourMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000889348 cvu:CustomerFiveMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 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 2021-05-19 2021-05-20 0000889348 2023-05-16 2023-05-17 iso4217:USD shares iso4217:USD shares pure 0000889348 false --12-31 2023 Q2 10-Q true 2023-06-30 false 1-11398 CPI AEROSTRUCTURES, INC. NY 11-2520310 91 Heartland Blvd. Edgewood NY 11717 (631) 586-5200 Common stock, $0.001 par value per share CVU NYSEAMER Yes Yes Non-accelerated Filer true false false 12639244 3080672 3847225 8621301 4857772 3600000 30962061 27384540 1918906 2493069 40000 40000 565714 975830 45188654 43198436 5646483 6526627 950732 1124556 6279101 6574463 1784254 1784254 234334 238744 60083558 59447080 11734379 8029996 5314339 7344590 3600000 8605354 6001726 250516 576549 2640000 1200000 221172 1719766 1921803 1817811 16874 11396 30704437 30301834 18360000 19800000 4121087 5077235 41484 70981 53227008 55250050 0.001 0.001 50000000 50000000 12727167 12727167 12506795 12506795 12727 12507 73708368 73189449 -66864545 -69004926 6856550 4197030 60083558 59447080 20547555 18925406 42564223 39060503 15943555 15265716 33297707 31966204 4604000 3659690 9266516 7094299 2806480 2697392 5675538 5835049 1797520 962298 3590978 1259250 541655 438437 1152551 767045 1255865 523861 2438427 492205 98789 6225 298046 7500 1157076 517636 2140381 484705 0.09 0.04 0.17 0.04 0.09 0.04 0.17 0.04 0.09 0.04 0.17 0.04 12429894 12305939 12412068 12275306 128899 133061 127584 125975 12558793 12439000 12539652 12401281 12625241 12534058 12606100 12496339 12335683 12336 72833742 -78181151 -5335073 -32931 -32931 47527 47 25835 25882 12383210 12383 72859577 -78214082 -5342122 517636 517636 66117 66 137432 137498 12449327 12449 72997009 -77696446 -4686988 12506795 12507 73189449 -69004926 4197030 983305 983305 19247 19 338904 338923 12526042 12526 73528353 -68021621 5519258 1157076 1157076 1157076 41073 41 7406 7447 242198 242 187421 187663 12727167 12727 73708368 -66864545 6856550 2140381 484705 233090 343750 58743 46888 519139 163380 -295362 3189 3763529 -117972 -3600000 650693 3577521 3031844 -574163 -441144 -410116 -116107 2335 -880144 -858812 1674132 -126884 2603628 -94934 -3600000 596741 -852156 -780274 5478 -5165 -326033 -577166 875137 -2096607 59265 25317 -59265 -25317 1528091 1560881 54334 -1582425 -1560881 -766553 -3682805 3847225 6308866 3080672 2626061 1193411 645423 <p id="xdx_80B_eus-gaap--OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock_zuBQn4OQsF52" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: right"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>1.</b></span></td> <td id="xdx_826_zajrJoGyRtB" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>INTERIM FINANCIAL STATEMENTS</b></span></td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"> </p> <p id="xdx_84F_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zPRVJHqjSxj9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><b><span id="xdx_86B_zQZlOxwL4pw6">Basis of Presentation</span></b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company consists of CPI Aerostructures, Inc. (“CPI Aero”), Welding Metallurgy, Inc. (“WMI”), a wholly owned subsidiary of CPI Aero, and Compac Development Corporation, a wholly owned subsidiary of WMI (collectively, the “Company”, “we”, “us”, or “our”).</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The condensed consolidated interim financial statements of the Company as of June 30, 2023 and for the six months ended June 30, 2023 and 2022 have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). Certain information and notes normally included in financial statements prepared in accordance with generally accepted accounting principles in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations. The consolidated balance sheet at December 31, 2022 has been derived from audited consolidated financial statements, but does not include all of the information and notes required by U.S. GAAP. The Company believes that the disclosures are adequate to make the information presented not misleading.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">All adjustments that, in the opinion of the management, are necessary for a fair presentation for the periods presented have been reflected. Such adjustments are of a normal, recurring nature. It is suggested that these consolidated financial statements be read in conjunction with the consolidated financial statements and notes thereto included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “Form 10-K”). The results of operations for interim periods are not necessarily indicative of the operating results to be expected for the full year or any other interim period.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company maintains its cash in four financial institutions. The balances are insured by the Federal Deposit Insurance Corporation. From time to time, the Company’s balances may exceed insurance limits. As of June 30, 2023, the Company had $<span id="xdx_903_eus-gaap--CashUninsuredAmount_iI_c20230630_zNrgpAtDs0F9" title="Uninsured balance">2,892,826</span> of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly creditworthy.</p> <p id="xdx_850_zvcAMtrGdDug" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_848_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_zBbHUu2NS7c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b><span id="xdx_867_zyudyDM69nmj">Recently Issued Accounting Standards - Adopted</span></b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In the first quarter of 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 significant impact on the Company’s financial statements.</p> <p id="xdx_850_zarnKmqmfos5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_84F_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zPRVJHqjSxj9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><b><span id="xdx_86B_zQZlOxwL4pw6">Basis of Presentation</span></b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company consists of CPI Aerostructures, Inc. (“CPI Aero”), Welding Metallurgy, Inc. (“WMI”), a wholly owned subsidiary of CPI Aero, and Compac Development Corporation, a wholly owned subsidiary of WMI (collectively, the “Company”, “we”, “us”, or “our”).</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The condensed consolidated interim financial statements of the Company as of June 30, 2023 and for the six months ended June 30, 2023 and 2022 have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). Certain information and notes normally included in financial statements prepared in accordance with generally accepted accounting principles in the United States of America (“U.S. GAAP”) have been condensed or omitted pursuant to those rules and regulations. The consolidated balance sheet at December 31, 2022 has been derived from audited consolidated financial statements, but does not include all of the information and notes required by U.S. GAAP. The Company believes that the disclosures are adequate to make the information presented not misleading.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">All adjustments that, in the opinion of the management, are necessary for a fair presentation for the periods presented have been reflected. Such adjustments are of a normal, recurring nature. It is suggested that these consolidated financial statements be read in conjunction with the consolidated financial statements and notes thereto included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “Form 10-K”). The results of operations for interim periods are not necessarily indicative of the operating results to be expected for the full year or any other interim period.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company maintains its cash in four financial institutions. The balances are insured by the Federal Deposit Insurance Corporation. From time to time, the Company’s balances may exceed insurance limits. As of June 30, 2023, the Company had $<span id="xdx_903_eus-gaap--CashUninsuredAmount_iI_c20230630_zNrgpAtDs0F9" title="Uninsured balance">2,892,826</span> of uninsured balances. The Company limits its credit risk by selecting financial institutions considered to be highly creditworthy.</p> 2892826 <p id="xdx_848_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_zBbHUu2NS7c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b><span id="xdx_867_zyudyDM69nmj">Recently Issued Accounting Standards - Adopted</span></b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In the first quarter of 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 significant impact on the Company’s financial statements.</p> <p id="xdx_803_eus-gaap--RevenueFromContractWithCustomerTextBlock_znUr8DVyDQi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2.</b></span></td> <td id="xdx_827_zQHNryyb3R7g" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>REVENUE RECOGNITION</b></span></td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In accordance with Accounting Standards Codification Topic 606 (“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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Contracts with Customers and Performance Obligations</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The majority of the Company’s revenues are from long-term contracts with the U.S. government as well military 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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The contracts with the U.S. government and military contractors typically are subject to the Federal Acquisition Regulation, 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 contracts is 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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Contract Estimates</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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 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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Capitalized Contract Acquisition Costs and Fulfillment Costs</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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.”</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Disaggregation of Revenue</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_89B_eus-gaap--DisaggregationOfRevenueTableTextBlock_zItC4dXryWqg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B3_zkes6t9fFWtk">The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </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> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%">Aerostructures</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__srt--ProductOrServiceAxis__custom--AerostructureMember_zcq0PIDWEwYc" style="width: 12%; text-align: right" title="Revenue">8,425,795</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__srt--ProductOrServiceAxis__custom--AerostructureMember_zutXV2Ys2e7l" style="width: 12%; text-align: right" title="Revenue">9,819,902</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__srt--ProductOrServiceAxis__custom--AerostructureMember_zVjrf0Q4CB0g" style="width: 12%; text-align: right" title="Revenue">18,499,320</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__20220630__srt--ProductOrServiceAxis__custom--AerostructureMember_zJldrCNKZBQk" style="width: 12%; text-align: right" title="Revenue">19,006,695</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td>Aerosystems</td><td> </td> <td style="text-align: left"> </td><td id="xdx_984_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__srt--ProductOrServiceAxis__custom--AerosystemsMember_z8pBJsFq9r29" style="text-align: right">7,567,883</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__srt--ProductOrServiceAxis__custom--AerosystemsMember_z3SNbGVbixqd" style="text-align: right">5,984,045</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__srt--ProductOrServiceAxis__custom--AerosystemsMember_ze3fXeN0SRbf" style="text-align: right">17,120,134</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__srt--ProductOrServiceAxis__custom--AerosystemsMember_zJD1LOpEqrV5" style="text-align: right">12,670,873</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">Kitting and Supply Chain Management</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_985_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zohBCNn8rim" style="border-bottom: Black 1pt solid; text-align: right">4,553,877</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zhW3Wwm70Rc8" style="border-bottom: Black 1pt solid; text-align: right">3,121,459</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_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zhaYSBeKNrFk" style="border-bottom: Black 1pt solid; text-align: right">6,944,769</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zsGy6odbQ4M" style="border-bottom: Black 1pt solid; text-align: right">7,382,935</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="padding-bottom: 2.5pt"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630_z6lCJJ5igopf" style="border-bottom: Black 2.5pt double; text-align: right">20,547,555</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_98A_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630_z1lOtfS6iHji" style="border-bottom: Black 2.5pt double; text-align: right">18,925,406</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630_zP0zIs89Dr94" style="border-bottom: Black 2.5pt double; text-align: right">42,564,223</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630_zMLdlvewiyT9" style="border-bottom: Black 2.5pt double; text-align: right">39,060,503</td><td style="padding-bottom: 2.5pt; 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: 100%"> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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_986_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_z9Grj0QhLFL1" style="width: 12%; text-align: right">18,669,843</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_98F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zGsqCXSAv2li" style="width: 12%; text-align: right">16,565,696</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_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zta9WbToFS8j" style="width: 12%; text-align: right">39,300,073</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zofe1IZfLFgd" style="width: 12%; text-align: right">35,060,893</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_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zFDRvsmz8Fxc" style="border-bottom: Black 1pt solid; text-align: right">1,877,712</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_c20220401__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zXnp6pcH0job" style="border-bottom: Black 1pt solid; text-align: right">2,359,710</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_z8bvt9zYIyW1" style="border-bottom: Black 1pt solid; text-align: right">3,264,150</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_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zilJg56KQdjh" style="border-bottom: Black 1pt solid; text-align: right">3,999,610</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt"> </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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630_zdMkWP7BanVh" style="border-bottom: Black 2.5pt double; text-align: right">20,547,555</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630_zzijgyX7tVG3" style="border-bottom: Black 2.5pt double; text-align: right">18,925,406</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_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630_zhugV1K7xKK9" style="border-bottom: Black 2.5pt double; text-align: right">42,564,223</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630_zQd4Aoe5ibu1" style="border-bottom: Black 2.5pt double; text-align: right">39,060,503</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> <p id="xdx_8A4_zVcatqHMxYZ2" style="margin-top: 0; margin-bottom: 0"> </p> <p style="margin-top: 0; margin-bottom: 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Transaction Price Allocated to Remaining Performance Obligations</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of June 30, 2023, the aggregate amount of transaction price allocated to the remaining performance obligations was approximately $<span id="xdx_900_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20230630__us-gaap--RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis__2023-07-01_zmSxLMGL0we8" 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 June 30, 2023. The majority of the Company’s performance obligations have an average duration up to approximately <span id="xdx_908_eus-gaap--RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_iI_dt_c20230630__us-gaap--RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis__2023-07-01_zJqt2GrgLi8k" title="Performance obligations duration">three years</span>.</p> <p id="xdx_89B_eus-gaap--DisaggregationOfRevenueTableTextBlock_zItC4dXryWqg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B3_zkes6t9fFWtk">The following tables present the Company’s revenue disaggregated by contract type and revenue recognition method:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </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> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%">Aerostructures</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__srt--ProductOrServiceAxis__custom--AerostructureMember_zcq0PIDWEwYc" style="width: 12%; text-align: right" title="Revenue">8,425,795</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__srt--ProductOrServiceAxis__custom--AerostructureMember_zutXV2Ys2e7l" style="width: 12%; text-align: right" title="Revenue">9,819,902</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__srt--ProductOrServiceAxis__custom--AerostructureMember_zVjrf0Q4CB0g" style="width: 12%; text-align: right" title="Revenue">18,499,320</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__20220630__srt--ProductOrServiceAxis__custom--AerostructureMember_zJldrCNKZBQk" style="width: 12%; text-align: right" title="Revenue">19,006,695</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td>Aerosystems</td><td> </td> <td style="text-align: left"> </td><td id="xdx_984_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__srt--ProductOrServiceAxis__custom--AerosystemsMember_z8pBJsFq9r29" style="text-align: right">7,567,883</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__srt--ProductOrServiceAxis__custom--AerosystemsMember_z3SNbGVbixqd" style="text-align: right">5,984,045</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__srt--ProductOrServiceAxis__custom--AerosystemsMember_ze3fXeN0SRbf" style="text-align: right">17,120,134</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td id="xdx_98B_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__srt--ProductOrServiceAxis__custom--AerosystemsMember_zJD1LOpEqrV5" style="text-align: right">12,670,873</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">Kitting and Supply Chain Management</td><td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; text-align: left"> </td><td id="xdx_985_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zohBCNn8rim" style="border-bottom: Black 1pt solid; text-align: right">4,553,877</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zhW3Wwm70Rc8" style="border-bottom: Black 1pt solid; text-align: right">3,121,459</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_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zhaYSBeKNrFk" style="border-bottom: Black 1pt solid; text-align: right">6,944,769</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__srt--ProductOrServiceAxis__custom--KittingAndSupplyChainManagementMember_zsGy6odbQ4M" style="border-bottom: Black 1pt solid; text-align: right">7,382,935</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td style="padding-bottom: 2.5pt"> </td><td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_989_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630_z6lCJJ5igopf" style="border-bottom: Black 2.5pt double; text-align: right">20,547,555</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_98A_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630_z1lOtfS6iHji" style="border-bottom: Black 2.5pt double; text-align: right">18,925,406</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630_zP0zIs89Dr94" style="border-bottom: Black 2.5pt double; text-align: right">42,564,223</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630_zMLdlvewiyT9" style="border-bottom: Black 2.5pt double; text-align: right">39,060,503</td><td style="padding-bottom: 2.5pt; 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: 100%"> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1pt"> </td> <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended<br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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="padding-bottom: 1pt; font-weight: bold"> </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_986_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_z9Grj0QhLFL1" style="width: 12%; text-align: right">18,669,843</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_98F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zGsqCXSAv2li" style="width: 12%; text-align: right">16,565,696</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_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zta9WbToFS8j" style="width: 12%; text-align: right">39,300,073</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredOverTimeMember_zofe1IZfLFgd" style="width: 12%; text-align: right">35,060,893</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_987_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zFDRvsmz8Fxc" style="border-bottom: Black 1pt solid; text-align: right">1,877,712</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_c20220401__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zXnp6pcH0job" style="border-bottom: Black 1pt solid; text-align: right">2,359,710</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_z8bvt9zYIyW1" style="border-bottom: Black 1pt solid; text-align: right">3,264,150</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_980_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630__us-gaap--TimingOfTransferOfGoodOrServiceAxis__us-gaap--TransferredAtPointInTimeMember_zilJg56KQdjh" style="border-bottom: Black 1pt solid; text-align: right">3,999,610</td><td style="padding-bottom: 1pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 2.5pt"> </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--RevenueFromContractWithCustomerExcludingAssessedTax_c20230401__20230630_zdMkWP7BanVh" style="border-bottom: Black 2.5pt double; text-align: right">20,547,555</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220401__20220630_zzijgyX7tVG3" style="border-bottom: Black 2.5pt double; text-align: right">18,925,406</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_98E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_c20230101__20230630_zhugV1K7xKK9" style="border-bottom: Black 2.5pt double; text-align: right">42,564,223</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--RevenueFromContractWithCustomerExcludingAssessedTax_c20220101__20220630_zQd4Aoe5ibu1" style="border-bottom: Black 2.5pt double; text-align: right">39,060,503</td><td style="padding-bottom: 2.5pt; text-align: left"> </td></tr> </table> 8425795 9819902 18499320 19006695 7567883 5984045 17120134 12670873 4553877 3121459 6944769 7382935 20547555 18925406 42564223 39060503 18669843 16565696 39300073 35060893 1877712 2359710 3264150 3999610 20547555 18925406 42564223 39060503 118200000 P3Y <p id="xdx_801_ecustom--ContractWithCustomerAssetAndLiabilityTextBlock_zbNn7rMdn0ii" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>3.</b></span></td> <td id="xdx_822_zWPO9mDDZj5j" style="text-align: justify; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>CONTRACT ASSETS AND LIABILITIES</b></span></td></tr> </table> <p style="margin-top: 0; margin-bottom: 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Contract assets represent revenue recognized on contracts in excess of amounts invoiced to the customers 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 as well as military contractor 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 and military contractor 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.</p> <p id="xdx_891_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zwjC4UujYJMj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8BF_z5KzVJQfDan1" style="display: none; visibility: hidden">Schedule of contract assets and liabilities</span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 70%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" id="xdx_496_20230630_zQ9HjT39jDtk" style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_497_20221231_zndGjjupU4B4" style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerAssetNet_iI_maNCAz5zf_zF1lgIW2Dtf4" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; width: 40%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract assets</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">30,962,061</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">27,384,540</span></td> <td style="vertical-align: bottom; width: 1%"> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerLiability_iI_msNCAz5zf_z21NM7soBdl2" style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">8,605,354</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,001,726</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_400_ecustom--NetContractAssets_iTI_mtNCAz5zf_zf0QpYpqG9u7" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net Contract assets</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">22,356,707</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21,382,814</span></td> <td style="vertical-align: bottom"> </td></tr> </table> <p id="xdx_8AE_zZkFRCcOgDug" style="margin-top: 0; margin-bottom: 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Revenue recognized for the six months ended June 30, 2023 and 2022 that was included in the contract liabilities balance as of January 1, 2023 and 2022, respectively, was approximately $<span id="xdx_904_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn5n6_c20230101__20230630_z4oR21n6WW4j" title="Revenue recognized that was included in contract liabilities">1.9</span> million and $<span id="xdx_909_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn5n6_c20220101__20220630_zLeOm91MEnTc">3.2</span> million, respectively.</p> <p id="xdx_891_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zwjC4UujYJMj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8BF_z5KzVJQfDan1" style="display: none; visibility: hidden">Schedule of contract assets and liabilities</span></p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 70%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" id="xdx_496_20230630_zQ9HjT39jDtk" style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_497_20221231_zndGjjupU4B4" style="text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerAssetNet_iI_maNCAz5zf_zF1lgIW2Dtf4" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; width: 40%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract assets</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">30,962,061</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">27,384,540</span></td> <td style="vertical-align: bottom; width: 1%"> </td></tr> <tr id="xdx_403_eus-gaap--ContractWithCustomerLiability_iI_msNCAz5zf_z21NM7soBdl2" style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">8,605,354</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,001,726</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_400_ecustom--NetContractAssets_iTI_mtNCAz5zf_zf0QpYpqG9u7" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; padding-left: 0.125in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net Contract assets</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">22,356,707</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21,382,814</span></td> <td style="vertical-align: bottom"> </td></tr> </table> 30962061 27384540 8605354 6001726 22356707 21382814 1900000 3200000 <p id="xdx_804_eus-gaap--InventoryDisclosureTextBlock_zv2un6gc91Q1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>4.</b></span></td> <td id="xdx_829_zaQ1YFgA5gf2" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>INVENTORY</b></span></td></tr> </table> <p style="margin-top: 0; margin-bottom: 0"> </p> <p id="xdx_893_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zvk7RQZySoyf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8BD_zyra91V6mprh">The components of inventory consisted of the following:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 70%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="2" id="xdx_497_20230630_zTZXwrbUlRu4" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>June 30, </b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>2023</b></p></td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid"> </td> <td colspan="2" id="xdx_491_20221231_z1xp1pndI741" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>December 31,</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>2022</b></p></td> <td style="border-bottom: black 1pt solid"> </td></tr> <tr id="xdx_40E_eus-gaap--InventoryRawMaterials_iI_maIGzpSz_zwjpZHyFCYze" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; width: 40%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Raw materials</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,822,930</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,892,157</span></td> <td style="vertical-align: bottom; width: 1%"> </td></tr> <tr id="xdx_40C_eus-gaap--InventoryWorkInProcess_iI_maIGzpSz_zODG1BxsIE5a" style="background-color: white"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Work in progress</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">216,908</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">685,438</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_409_eus-gaap--InventoryFinishedGoods_iI_maIGzpSz_zx59fbFTacSb" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finished goods</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,293,217</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3,038,859</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td></tr> <tr id="xdx_40A_eus-gaap--InventoryGross_iTI_mtIGzpSz_maINzM3w_zbVuRwFJHoW4" style="background-color: white"> <td style="vertical-align: bottom; padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Gross inventory</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">4,333,055</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,616,454</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td></tr> <tr id="xdx_400_eus-gaap--InventoryValuationReserves_iNI_di_msINzM3w_zCERClhClMfe" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventory reserves</span></td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2,414,149</span></td> <td style="border-bottom: black 1pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3,123,386</span></td> <td style="border-bottom: black 1pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td></tr> <tr id="xdx_408_eus-gaap--InventoryNet_iTI_mtINzM3w_zwwDCNlUDDLc" style="vertical-align: bottom; background-color: white"> <td style="padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventory, net</span></td> <td> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,918,906</span></td> <td style="border-bottom: black 2.5pt double"> </td> <td style="border-bottom: black 2.5pt double"> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,493,069</span></td> <td style="border-bottom: black 2.5pt double"> </td></tr> </table> <p id="xdx_8AB_zwsdQXB2jJml" style="margin-top: 0; margin-bottom: 0"> </p> <p id="xdx_893_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zvk7RQZySoyf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8BD_zyra91V6mprh">The components of inventory consisted of the following:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 70%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="2" id="xdx_497_20230630_zTZXwrbUlRu4" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>June 30, </b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>2023</b></p></td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid"> </td> <td colspan="2" id="xdx_491_20221231_z1xp1pndI741" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>December 31,</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>2022</b></p></td> <td style="border-bottom: black 1pt solid"> </td></tr> <tr id="xdx_40E_eus-gaap--InventoryRawMaterials_iI_maIGzpSz_zwjpZHyFCYze" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; width: 40%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Raw materials</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,822,930</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,892,157</span></td> <td style="vertical-align: bottom; width: 1%"> </td></tr> <tr id="xdx_40C_eus-gaap--InventoryWorkInProcess_iI_maIGzpSz_zODG1BxsIE5a" style="background-color: white"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Work in progress</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">216,908</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">685,438</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_409_eus-gaap--InventoryFinishedGoods_iI_maIGzpSz_zx59fbFTacSb" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finished goods</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,293,217</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3,038,859</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td></tr> <tr id="xdx_40A_eus-gaap--InventoryGross_iTI_mtIGzpSz_maINzM3w_zbVuRwFJHoW4" style="background-color: white"> <td style="vertical-align: bottom; padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Gross inventory</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">4,333,055</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,616,454</span></td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td></tr> <tr id="xdx_400_eus-gaap--InventoryValuationReserves_iNI_di_msINzM3w_zCERClhClMfe" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventory reserves</span></td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2,414,149</span></td> <td style="border-bottom: black 1pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3,123,386</span></td> <td style="border-bottom: black 1pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td></tr> <tr id="xdx_408_eus-gaap--InventoryNet_iTI_mtINzM3w_zwwDCNlUDDLc" style="vertical-align: bottom; background-color: white"> <td style="padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventory, net</span></td> <td> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,918,906</span></td> <td style="border-bottom: black 2.5pt double"> </td> <td style="border-bottom: black 2.5pt double"> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,493,069</span></td> <td style="border-bottom: black 2.5pt double"> </td></tr> </table> 1822930 1892157 216908 685438 2293217 3038859 4333055 5616454 2414149 3123386 1918906 2493069 <p id="xdx_80A_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zvHG8scIXm4j" style="margin-top: 0; margin-bottom: 0"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>5.</b></span></td> <td id="xdx_822_z0NlAeLJVAd3" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>STOCK-BASED COMPENSATION</b></span></td></tr> </table> <p style="margin-top: 0; margin-bottom: 0"> </p> <p id="xdx_89D_eus-gaap--ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_zwzD8wWg4aRb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="background-color: white"><span id="xdx_8B4_zBY5DzGGxCw1">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: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_499_20230401__20230630_zA6AYdzFTEte" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_498_20220401__20220630_zbMiBtTK18yh" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_495_20230101__20230630_zHI45STxUez2" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_49B_20220101__20220630_z2vMMd9fmwZ8" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_40F_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--CostOfSalesMember_zKk4JxXX4TC9" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; width: 40%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost of sales</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">37,171</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,471</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">52,248</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">20,006</span></td> <td style="vertical-align: bottom; width: 1%"> </td></tr> <tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--SellingGeneralAndAdministrativeExpensesMember_zOqkPyg1l92f"> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Selling, general and administrative</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: top; background-color: white; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">143,045</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">131,027</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: top; background-color: white; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">466,891</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">143,374</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td></tr> <tr id="xdx_40A_eus-gaap--AllocatedShareBasedCompensationExpense_zWmilNFzXT6h" style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total stock-based compensation expense</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">180,216</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">137,498</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">519,139</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">163,380</span></td> <td style="vertical-align: bottom"> </td></tr> </table> <p id="xdx_8A1_zOVBx3VYhCcc" style="margin-top: 0; margin-bottom: 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="background-color: white">The Company grants shares of common stock (“Restricted Stock Awards”) to select employees. In the event that the employee’s employment is voluntarily terminated prior to certain vesting dates, portions of the shares may be forfeited. In addition, if certain Company performance criteria are not achieved, portions of these shares may be forfeited. <span id="xdx_90A_eus-gaap--StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited_pid_uShares_c20230101__20230630_zqOQpdAiSNo3" title="Shares forfeited">85,748</span> shares were forfeited during the six months ended June 30, 2022, resulting in a reduction to stock-based compensation expense for the six months ended June 30, 2022 in selling, general and administrative expense of $<span id="xdx_90D_eus-gaap--AllocatedShareBasedCompensationExpense_iN_di_c20220101__20220630__us-gaap--AwardTypeAxis__custom--ForfeitedRestrictedStockMember__us-gaap--IncomeStatementLocationAxis__us-gaap--SellingGeneralAndAdministrativeExpensesMember_zEbYixE1R1Cd" title="Stock-based compensation">263,148</span>.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_892_eus-gaap--ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_zsaMJQT5DeCb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8BF_zVIMi02o3eIk">The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Restricted Stock Awards</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Weighted Average</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Grant Date</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Fair Value of Restricted Stock Awards</b></p></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>RSUs</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Weighted Average</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Grant Date</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Fair Value of RSUs</b></p></td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 39%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td id="xdx_98D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zmGsKV6UJRw3" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">239,184</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zukYzmCr4wUj" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.32</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td id="xdx_981_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z8y2ta98CM91" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0590">—</span></span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_984_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z9hsJbG8g9z9" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0592">—</span></span></td> <td style="width: 1%"> </td></tr> <tr style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zdoDzWknwLXf" style="vertical-align: bottom; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">212,902</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zdYZirVOWsa4" style="vertical-align: bottom; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.82</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zkzJ20RVbCyl" style="vertical-align: bottom; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">170,042</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zFGYlVTkMySb" style="vertical-align: top; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.44</span></td> <td style="vertical-align: bottom"> </td></tr> <tr style="background-color: #CCEEFF"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zvWV4upBAF02" style="vertical-align: bottom; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(82,769)</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_z8tcZxoMvXac" style="vertical-align: bottom; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.83</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_984_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zF2HWXjck2r2" style="vertical-align: bottom; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(69,845</span></td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z36NpoJKzlf9" style="vertical-align: top; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.42</span></td> <td style="vertical-align: bottom"> </td></tr> <tr style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_z2iJznfvRpIf" style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0610">—</span></span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_980_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zfszED32yA64" style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0612">—</span></span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEZWxYVV0w3b" style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(33,749</span></td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_989_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zMUgvBekc9ei" style="border-bottom: black 1pt solid; vertical-align: top; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.42</span></td> <td style="vertical-align: bottom"> </td></tr> <tr style="background-color: #CCEEFF"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – June 30, 2023</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"> </td> <td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zVUz3xfOXGMi" style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">369,317</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zNXbWeid3W87" style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.25</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"> </td> <td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zl2vZUG58Fd3" style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">66,448</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_981_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zdzwrBp4K97b" style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.47</span></td> <td style="vertical-align: bottom"> </td></tr> </table> <p id="xdx_8A5_zIPQFiHTTz3g" style="margin-top: 0; margin-bottom: 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="background-color: white">As of June 30, 2023, unamortized stock-based compensation costs related to restricted share arrangements was $</span><span id="xdx_908_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_c20230630_zpxKaJ7rHfP4" title="Unamortized stock-based compensation costs">514,880</span><span style="background-color: white">.</span></p> <p id="xdx_89D_eus-gaap--ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_zwzD8wWg4aRb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="background-color: white"><span id="xdx_8B4_zBY5DzGGxCw1">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: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_499_20230401__20230630_zA6AYdzFTEte" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_498_20220401__20220630_zbMiBtTK18yh" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_495_20230101__20230630_zHI45STxUez2" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_49B_20220101__20220630_z2vMMd9fmwZ8" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_40F_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--CostOfSalesMember_zKk4JxXX4TC9" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; width: 40%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost of sales</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">37,171</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,471</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">52,248</span></td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"> </td> <td style="vertical-align: bottom; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">20,006</span></td> <td style="vertical-align: bottom; width: 1%"> </td></tr> <tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--IncomeStatementLocationAxis__us-gaap--SellingGeneralAndAdministrativeExpensesMember_zOqkPyg1l92f"> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Selling, general and administrative</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: top; background-color: white; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">143,045</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">131,027</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: top; background-color: white; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">466,891</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white"> </td> <td style="border-bottom: Black 1pt solid; vertical-align: bottom; background-color: white; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">143,374</span></td> <td style="vertical-align: bottom; background-color: white; padding-bottom: 1pt"> </td></tr> <tr id="xdx_40A_eus-gaap--AllocatedShareBasedCompensationExpense_zWmilNFzXT6h" style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total stock-based compensation expense</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">180,216</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">137,498</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">519,139</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">163,380</span></td> <td style="vertical-align: bottom"> </td></tr> </table> 37171 6471 52248 20006 143045 131027 466891 143374 180216 137498 519139 163380 85748 -263148 <p id="xdx_892_eus-gaap--ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_zsaMJQT5DeCb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8BF_zVIMi02o3eIk">The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Restricted Stock Awards</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Weighted Average</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Grant Date</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Fair Value of Restricted Stock Awards</b></p></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>RSUs</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Weighted Average</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Grant Date</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Fair Value of RSUs</b></p></td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 39%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – January 1, 2023</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td id="xdx_98D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zmGsKV6UJRw3" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">239,184</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zukYzmCr4wUj" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.32</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td id="xdx_981_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iS_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z8y2ta98CM91" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0590">—</span></span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_984_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z9hsJbG8g9z9" style="width: 12%; text-align: right" title="Non vested January 1, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0592">—</span></span></td> <td style="width: 1%"> </td></tr> <tr style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Granted</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zdoDzWknwLXf" style="vertical-align: bottom; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">212,902</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zdYZirVOWsa4" style="vertical-align: bottom; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.82</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zkzJ20RVbCyl" style="vertical-align: bottom; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">170,042</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zFGYlVTkMySb" style="vertical-align: top; text-align: right" title="Granted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.44</span></td> <td style="vertical-align: bottom"> </td></tr> <tr style="background-color: #CCEEFF"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Vested</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zvWV4upBAF02" style="vertical-align: bottom; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(82,769)</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_z8tcZxoMvXac" style="vertical-align: bottom; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.83</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td id="xdx_984_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zF2HWXjck2r2" style="vertical-align: bottom; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(69,845</span></td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_987_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z36NpoJKzlf9" style="vertical-align: top; text-align: right" title="Vested"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.42</span></td> <td style="vertical-align: bottom"> </td></tr> <tr style="background-color: white"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Forfeited</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_z2iJznfvRpIf" style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0610">—</span></span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_980_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zfszED32yA64" style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0612">—</span></span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_iN_pid_di_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEZWxYVV0w3b" style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(33,749</span></td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_989_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zMUgvBekc9ei" style="border-bottom: black 1pt solid; vertical-align: top; text-align: right" title="Forfeited"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.42</span></td> <td style="vertical-align: bottom"> </td></tr> <tr style="background-color: #CCEEFF"> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-vested – June 30, 2023</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"> </td> <td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zVUz3xfOXGMi" style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">369,317</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_983_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zNXbWeid3W87" style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.25</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"> </td> <td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_iE_pid_uShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zl2vZUG58Fd3" style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">66,448</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_981_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_uUSDPShares_c20230101__20230630__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zdzwrBp4K97b" style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right" title="Non vested December 31, 2022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.47</span></td> <td style="vertical-align: bottom"> </td></tr> </table> 239184 2.32 212902 3.82 170042 3.44 82769 2.83 69845 3.42 33749 3.42 369317 3.25 66448 3.47 514880 <p id="xdx_807_eus-gaap--FairValueDisclosuresTextBlock_zvzJHT069o01" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>6.</b></span></td> <td id="xdx_82F_zm8xOPTjFsmk" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>FAIR VALUE</b></span></td></tr> <tr style="vertical-align: top"> <td> </td> <td style="text-align: justify"> </td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="text-decoration: underline">Fair Value</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_89D_eus-gaap--FairValueByBalanceSheetGroupingTextBlock_ziLOxo1fZGYd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B8_zBcxLS6zvhNk">At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable 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: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30, 2023</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Carrying</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Amount</b></p></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Debt</span></td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 74%; padding-left: 9pt; text-align: justify; text-indent: -9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term borrowings and long-term debt</span></td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_988_eus-gaap--DebtInstrumentFairValue_iI_c20230630__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--CarryingReportedAmountFairValueDisclosureMember_zsXV5bw5zxTl" style="border-bottom: black 2.5pt double; width: 10%; text-align: right" title="Short-term borrowings and long-term debt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21,262,656</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_986_eus-gaap--DebtInstrumentFairValue_iI_c20230630__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--EstimateOfFairValueFairValueDisclosureMember_zjc9ksZIKFWi" style="border-bottom: black 2.5pt double; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21,262,656</span></td> <td style="width: 1%"> </td></tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td></tr> </table> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31, 2022</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Carrying</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Amount</b></p></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Debt</span></td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 74%; padding-left: 9pt; text-align: justify; text-indent: -9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term borrowings and long-term debt</span></td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_988_eus-gaap--DebtInstrumentFairValue_iI_c20221231__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--CarryingReportedAmountFairValueDisclosureMember_zYl79NiaxwZf" style="border-bottom: black 2.5pt double; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">22,790,747</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_985_eus-gaap--DebtInstrumentFairValue_iI_c20221231__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--EstimateOfFairValueFairValueDisclosureMember_z5uraTkpJp8a" style="border-bottom: black 2.5pt double; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">22,790,747</span></td> <td style="width: 1%"> </td></tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td></tr> </table> <p id="xdx_8AB_z5CrvPvwIGsa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">We estimated the fair value of debt using market quotes and calculations based on market rates.</p> <p id="xdx_89D_eus-gaap--FairValueByBalanceSheetGroupingTextBlock_ziLOxo1fZGYd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B8_zBcxLS6zvhNk">At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable 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: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30, 2023</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Carrying</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Amount</b></p></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Debt</span></td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 74%; padding-left: 9pt; text-align: justify; text-indent: -9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term borrowings and long-term debt</span></td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_988_eus-gaap--DebtInstrumentFairValue_iI_c20230630__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--CarryingReportedAmountFairValueDisclosureMember_zsXV5bw5zxTl" style="border-bottom: black 2.5pt double; width: 10%; text-align: right" title="Short-term borrowings and long-term debt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21,262,656</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_986_eus-gaap--DebtInstrumentFairValue_iI_c20230630__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--EstimateOfFairValueFairValueDisclosureMember_zjc9ksZIKFWi" style="border-bottom: black 2.5pt double; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21,262,656</span></td> <td style="width: 1%"> </td></tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td></tr> </table> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31, 2022</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid"> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Carrying</b></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Amount</b></p></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair Value</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Debt</span></td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 74%; padding-left: 9pt; text-align: justify; text-indent: -9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term borrowings and long-term debt</span></td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_988_eus-gaap--DebtInstrumentFairValue_iI_c20221231__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--CarryingReportedAmountFairValueDisclosureMember_zYl79NiaxwZf" style="border-bottom: black 2.5pt double; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">22,790,747</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td id="xdx_985_eus-gaap--DebtInstrumentFairValue_iI_c20221231__us-gaap--FairValueByMeasurementBasisAxis__us-gaap--EstimateOfFairValueFairValueDisclosureMember_z5uraTkpJp8a" style="border-bottom: black 2.5pt double; width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">22,790,747</span></td> <td style="width: 1%"> </td></tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td></tr> </table> 21262656 21262656 22790747 22790747 <p id="xdx_809_eus-gaap--EarningsPerShareTextBlock_zx9ABMoSH1t5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>7.</b></span></td> <td id="xdx_820_zJEXw7B1bY53" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>INCOME PER COMMON SHARE</b></span></td></tr> <tr style="vertical-align: top"> <td> </td> <td style="text-align: justify"> </td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company complies with the accounting and disclosure requirements of FASB ASC Topic 260, “Earnings Per Share” and uses the two-class 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. During the three months and six months ended June 30, 2023 and 2022, respectively, and as of June 30, 2023 and 2022, respectively, the Company had restricted shares of common stock that were considered participating securities and unrestricted shares of common stock outstanding. Earnings and losses are shared pro rata.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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. Incremental shares of <span id="xdx_905_eus-gaap--IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_pid_uShares_c20230401__20230630_zIQx5pNrP1dk" title="Incremental shares used in calculation of diluted income per common share"><span id="xdx_909_eus-gaap--IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_pid_uShares_c20230101__20230630_ztXdIK90wmTi" title="Incremental shares used in calculation of diluted income per common share">66,448</span></span> were used in the calculation of diluted income per common share for both the three and six months ended June 30, 2023.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_897_eus-gaap--ScheduleOfEarningsPerShareBasicByCommonClassTextBlock_zFAxSjLsIWyk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 1.45pt 0pt 0; text-align: justify"><span id="xdx_8B4_zZ66jAo4sKx">For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 1.45pt 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_49C_20230401__20230630_zxLA6vMfkhOh" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_498_20220401__20220630_z8Wv36sOdzEd" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_49C_20230101__20230630_zZxGxW7PR5i6" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_490_20220101__20220630_zKmidXad0GTd" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_40E_eus-gaap--NetIncomeLoss_zwPPH9Th8jy8" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; padding-bottom: 2.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net income </span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,157,076</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">517,636</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,140,381</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">484,705</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_408_eus-gaap--EarningsPerShareBasicAbstract_iB_zGc5YlYMdYmj" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Income per common share, basic:</span></span></td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income per common share-unrestricted shares</span></td> <td> </td> <td>$</td> <td id="xdx_98E_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230401__20230630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_zEO231fYUtwf" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.09</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_989_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220401__20220630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_z2bW7HRd4K95" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_98D_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230101__20230630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_zauk7ci2bdfg" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.17</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_98A_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220101__20220630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_zd2soJbaiMcc" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income per common share-restricted shares</span></td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_982_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230401__20230630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zQ4BLaBMfyu6" style="border-bottom: Black 1pt solid; text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.09</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_98A_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220401__20220630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zYCslTjPsTml" style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_98E_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230101__20230630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zsm7ZhXcy8p3" style="border-bottom: Black 1pt solid; text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.17</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_98B_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220101__20220630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_z9q6CvIlBtJg" style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_406_eus-gaap--EarningsPerShareDilutedAbstract_iB_zkoZIfYVA5r3" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income per common share, diluted</span></td> <td> </td> <td>$</td> <td id="xdx_98D_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20230401__20230630_z12RDg7XWBx7" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.09</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_983_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20220401__20220630_zbFs3470O5Mk" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_986_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20230101__20230630_zTnYsZqHJ078" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.17</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_98A_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20220101__20220630_zbmjfGqOumZ" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasicAbstract_iB_zaxngZjU6bx6" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Shares used in computing income per common share, basic:</span></span></td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_i01_pp0p0_hus-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_z6NiJSSfIAh2" style="vertical-align: bottom; background-color: White"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Unrestricted shares</span></td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,429,894</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,305,939</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,412,068</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,275,306</span></td> <td> </td></tr> <tr id="xdx_406_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_i01_pp0p0_hus-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zTPPMjkExAa7" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Restricted shares</span></td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">128,899</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">133,061</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">127,584</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">125,975</span></td> <td style="padding-bottom: 1pt"> </td></tr> <tr id="xdx_404_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_i01_pp0p0_zRMu4KeMmj4d" style="vertical-align: bottom; background-color: White"> <td style="padding-bottom: 2.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total shares</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,558,793</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,439,000</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,539,652</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,401,281</span></td> <td style="padding-bottom: 2.5pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_40A_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pp0p0_uShares_z36FB1oQQOgk" style="vertical-align: bottom; background-color: White"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Shares used in computing income per common share, diluted</span></td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,625,241</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,534,058</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,606,100</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,496,339</span></td> <td> </td></tr> </table> <p id="xdx_8AE_zvzpqKri3817" style="margin-top: 0; margin-bottom: 0"> </p> 66448 66448 <p id="xdx_897_eus-gaap--ScheduleOfEarningsPerShareBasicByCommonClassTextBlock_zFAxSjLsIWyk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 1.45pt 0pt 0; text-align: justify"><span id="xdx_8B4_zZ66jAo4sKx">For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 1.45pt 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_49C_20230401__20230630_zxLA6vMfkhOh" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_498_20220401__20220630_z8Wv36sOdzEd" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_49C_20230101__20230630_zZxGxW7PR5i6" style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td style="border-bottom: black 1pt solid; text-align: center"> </td> <td id="xdx_490_20220101__20220630_zKmidXad0GTd" style="border-bottom: black 1pt solid; text-align: center"> </td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td> <td> </td> <td colspan="6" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></td> <td> </td></tr> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_40E_eus-gaap--NetIncomeLoss_zwPPH9Th8jy8" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; padding-bottom: 2.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net income </span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,157,076</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">517,636</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,140,381</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="width: 1%; padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: Black 2.5pt double; width: 12%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">484,705</span></td> <td style="width: 1%; padding-bottom: 2.5pt"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_408_eus-gaap--EarningsPerShareBasicAbstract_iB_zGc5YlYMdYmj" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Income per common share, basic:</span></span></td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income per common share-unrestricted shares</span></td> <td> </td> <td>$</td> <td id="xdx_98E_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230401__20230630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_zEO231fYUtwf" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.09</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_989_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220401__20220630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_z2bW7HRd4K95" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_98D_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230101__20230630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_zauk7ci2bdfg" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.17</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_98A_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220101__20220630__us-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_zd2soJbaiMcc" style="text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income per common share-restricted shares</span></td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_982_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230401__20230630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zQ4BLaBMfyu6" style="border-bottom: Black 1pt solid; text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.09</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_98A_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220401__20220630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zYCslTjPsTml" style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_98E_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20230101__20230630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zsm7ZhXcy8p3" style="border-bottom: Black 1pt solid; text-align: right" title="Income (loss) per common share, basic"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.17</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid">$</td> <td id="xdx_98B_eus-gaap--EarningsPerShareBasic_i01_pp2p0_c20220101__20220630__us-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_z9q6CvIlBtJg" style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td style="padding-bottom: 1pt"> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_406_eus-gaap--EarningsPerShareDilutedAbstract_iB_zkoZIfYVA5r3" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Income per common share, diluted</span></td> <td> </td> <td>$</td> <td id="xdx_98D_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20230401__20230630_z12RDg7XWBx7" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.09</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_983_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20220401__20220630_zbFs3470O5Mk" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_986_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20230101__20230630_zTnYsZqHJ078" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.17</span></td> <td> </td> <td> </td> <td>$</td> <td id="xdx_98A_eus-gaap--EarningsPerShareDiluted_i01_pp2p0_c20220101__20220630_zbmjfGqOumZ" style="text-align: right" title="Income (loss) per common share, diluted"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.04</span></td> <td> </td></tr> <tr style="vertical-align: bottom; background-color: White"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasicAbstract_iB_zaxngZjU6bx6" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="text-decoration: underline">Shares used in computing income per common share, basic:</span></span></td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_i01_pp0p0_hus-gaap--StatementClassOfStockAxis__custom--UnrestrictedSharesMember_z6NiJSSfIAh2" style="vertical-align: bottom; background-color: White"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Unrestricted shares</span></td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,429,894</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,305,939</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,412,068</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,275,306</span></td> <td> </td></tr> <tr id="xdx_406_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_i01_pp0p0_hus-gaap--StatementClassOfStockAxis__custom--RestrictedSharesMember_zTPPMjkExAa7" style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Restricted shares</span></td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">128,899</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">133,061</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">127,584</span></td> <td style="padding-bottom: 1pt"> </td> <td style="padding-bottom: 1pt"> </td> <td style="border-bottom: Black 1pt solid"> </td> <td style="border-bottom: Black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">125,975</span></td> <td style="padding-bottom: 1pt"> </td></tr> <tr id="xdx_404_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_i01_pp0p0_zRMu4KeMmj4d" style="vertical-align: bottom; background-color: White"> <td style="padding-bottom: 2.5pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total shares</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,558,793</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,439,000</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,539,652</span></td> <td style="padding-bottom: 2.5pt"> </td> <td style="padding-bottom: 2.5pt"> </td> <td style="border-bottom: Black 2.5pt double"> </td> <td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,401,281</span></td> <td style="padding-bottom: 2.5pt"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_40A_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pp0p0_uShares_z36FB1oQQOgk" style="vertical-align: bottom; background-color: White"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Shares used in computing income per common share, diluted</span></td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,625,241</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,534,058</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,606,100</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12,496,339</span></td> <td> </td></tr> </table> 1157076 517636 2140381 484705 0.09 0.04 0.17 0.04 0.09 0.04 0.17 0.04 0.09 0.04 0.17 0.04 12429894 12305939 12412068 12275306 128899 133061 127584 125975 12558793 12439000 12539652 12401281 12625241 12534058 12606100 12496339 <p id="xdx_803_eus-gaap--LongTermDebtTextBlock_zPbzBzM5jQUe" style="margin-top: 0; margin-bottom: 0"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>8.</b></span></td> <td id="xdx_823_zeqAJhB6QjSc" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>DEBT</b></span></td></tr> <tr style="vertical-align: top"> <td> </td> <td style="text-align: justify"> </td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">On March 24, 2016, the Company entered into the Amended and Restated Credit Agreement with the lenders named therein and BankUnited N.A. as Sole Arranger, Agent and Collateral Agent (as amended from time to time, the “Credit Agreement” or the “BankUnited Facility”). The BankUnited Facility originally provided for a revolving credit loan commitment of $<span id="xdx_908_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20160324__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zrdd7Zzy7z5i" title="Line of credit facility, maximum borrowing capacity">30</span> million (the “Revolving Loan”) and a $<span id="xdx_909_eus-gaap--DebtInstrumentFaceAmount_iI_pn6n6_c20160324__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__custom--TermLoanMember_zF8qEyD4Tne7" 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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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_90B_eus-gaap--LineOfCreditFacilityExpirationDate1_dd_c20230321__20230323__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zgdfTlSfnbH3" title="Expiration date">November 30, 2024</span> (under the terms of the Credit Agreement, the outstanding principal balance of the term loan was 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_906_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodOneMember_zPQAFEIn5m3b" title="Line of credit facility, maximum borrowing capacity">20,520,000</span> from October 1, 2023 through December 31, 2023, $<span id="xdx_905_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodTwoMember_zES6YonAY28" title="Line of credit facility, maximum borrowing capacity">19,800,000</span> from January 1, 2024 through June 30, 2024, $19,080,000 from April 1, 2024 through June 30, 2024, $18,360,000 from July 1, 2024 through September 30, 2024, and $<span id="xdx_908_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pp0p0_c20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--PeriodThreeMember_zAnqPEDAWodi" 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_900_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zPubCzybXg75">250,000</span> capitalized fee incurred in connection with the Eighth Amendment to the Credit Agreement, which the Company entered into on October 28, 2021 in two installments, the first installment paid on June 1, 2023 in the amount of $<span id="xdx_907_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--FirstInstallmentMember_zpVK1WFUQa4d">116,667</span> and the second installment paid July 1, 2023 in the amount of $<span id="xdx_904_ecustom--AmendmentFee_pp0p0_c20230321__20230323__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--DebtInstrumentAxis__custom--SecondInstallmentMember_zfjPl3jdHg21">133,333</span>, together with all unpaid interest accrued at the term loan interest rate on the capitalized fee through each such date (the installments and interest accrued were paid on such dates).</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Credit Agreement, as amended, requires us to maintain the following financial covenants: (a) minimum debt service coverage ratio of no less than <span id="xdx_90A_ecustom--MinimumDebtServiceCoverageRatio_iI_pip0_uPure_c20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zHEoVHdQYNEa" title="Minimum debt service coverage ratio">1.5</span> to 1.0 for trailing four fiscal quarter periods; (b) maximum leverage ratio of no less than <span id="xdx_90D_ecustom--MaximumLeverageRatio_iI_pip0_uPure_c20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zofhSAXWVoo6">4.0</span> to 1.0 for trailing four fiscal quarter periods; (c) minimum net income after taxes as of the end of each fiscal quarter being no less than $<span id="xdx_903_ecustom--NetIncomeRequiredUnderAgreement_pip0_c20230101__20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__srt--RangeAxis__srt--MinimumMember_zuHMauXDxXV2" title="Net income required under agreement">1.00</span>; and (d) a minimum adjusted EBITDA at the end of each fiscal quarter of no less than $<span id="xdx_906_ecustom--MinimumAdjustedEbitda_pn5n6_c20230101__20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zCxQCUNP3189" title="Minimum adjusted EBITDA">1</span>.0 million. The additional principal payments, increase in interest and the Amendment Fee provided for in the Eight Amendment and Ninth Amendment to the Credit Agreement, which the Company entered into on April 12, 2022 are excluded for purposes of calculating compliance with each of the financial covenants.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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__20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember_z0SXMnwcyW7b" title="Prime rate Plus">3.50</span>%. The Prime Rate was <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20230630__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember_zQTHcYAb1wed">8.25</span>% as of June 30, 2023 and as such, the Company’s interest rate on the Revolving Loan and Term Loan was <span id="xdx_906_eus-gaap--LongTermDebtPercentageBearingVariableInterestRate_iI_pid_dp_uPure_c20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__custom--RevolvingLoanAndTermLoanMember_znBxqI621ZTd" title="Interest rate">11.75</span>% as of June 30, 2023.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of June 30, 2023 and December 31, 2022, the Company had $<span id="xdx_908_eus-gaap--LineOfCredit_iI_pp0p0_c20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zUaBI9czeEN4" title="Outstanding loans"><span id="xdx_90A_eus-gaap--LineOfCredit_iI_pp0p0_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zip1LV8z5OKa" title="Outstanding loans">21,000,000</span></span> million outstanding under the Revolving Loan. $<span id="xdx_909_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zk9F061sP7z7" title="Current portion of line of credit">2,640,000</span> of the Revolving Loan is payable by June 30, 2024 and the remaining balance of $<span id="xdx_907_eus-gaap--LongTermLineOfCredit_iI_pp0p0_c20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zmIrDrcWfzQd" title="Line of credit">18,360,000</span> of the revolving line of credit matures and is payable by November 30, 2024.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Term Loan had an aggregate principal amount of $<span id="xdx_901_eus-gaap--DebtInstrumentCarryingAmount_iI_pp0p0_c20230630__us-gaap--CreditFacilityAxis__custom--TermLoanMember_z3rzbXrvcW0l" title="Aggregate principal amount">133,333</span>, payable in monthly installments, as defined in the Credit Agreement, as of June 30, 2023 as compared to an aggregate principal amount outstanding as of December 31, 2022 of $<span id="xdx_905_eus-gaap--DebtInstrumentCarryingAmount_iI_pp0p0_c20221231__us-gaap--CreditFacilityAxis__custom--TermLoanMember_zYBsBHQc7gb7" title="Aggregate principal balance">1,583,333</span>.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_898_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zxGT6qVX5xma" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B3_zHee8dp3iCdl">The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 50%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="border-bottom: black 1pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For the Year Ending December 31,</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_495_20230630_zJ5db5W3aVBf" style="text-align: center"> </td> <td> </td></tr> <tr id="xdx_402_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_iI_maLTDzhnE_z279lG9HrR3c" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 31%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Remainder of 2023</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="width: 15%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">181,827</span></td> <td style="width: 1%"> </td></tr> <tr id="xdx_404_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_maLTDzhnE_zIjaCc4aSlV9" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2024</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">51,801</span></td> <td> </td></tr> <tr id="xdx_408_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_maLTDzhnE_zdfuGNhLjFD2" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2025</span></td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">29,028</span></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--LongTermDebt_iTI_mtLTDzhnE_zYNLxufLz4m" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total                   </span></td> <td> </td> <td> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">262,656</span></td> <td> </td></tr> </table> <p id="xdx_8A3_z0f6Hilp1zqj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Included in long-term debt are financing leases and other notes payable of $<span id="xdx_903_eus-gaap--LongTermDebtAndCapitalLeaseObligations_iI_pp0p0_c20230630_zv5YYqvNyiPj" title="Financing leases and notes payable">129,323</span> and $<span id="xdx_906_eus-gaap--LongTermDebtAndCapitalLeaseObligations_iI_pp0p0_c20221231_zdSHp8lgDfac">207,414</span> at June 30, 2023 and December 31, 2022, respectively, including a current portion of $<span id="xdx_906_eus-gaap--LongTermDebtAndCapitalLeaseObligationsCurrent_iI_pp0p0_c20230630_zMKC8Z2ng175" title="Financing leases and notes payable current">87,838</span> and $<span id="xdx_90A_eus-gaap--LongTermDebtAndCapitalLeaseObligationsCurrent_iI_pp0p0_c20221231_zujdMDf7lmxj">136,433</span>, respectively.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company has cumulatively paid approximately $<span id="xdx_904_eus-gaap--PaymentsOfDebtIssuanceCosts_pp0p0_c20160325__20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zgst7bD4Fmuc" 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_90D_eus-gaap--DeferredFinanceCostsNoncurrentNet_iI_pp0p0_c20230630__us-gaap--LineOfCreditFacilityAxis__custom--BankUnitedMember_zivVpL43DHZ" title="Debt issuance costs">126,000</span> is included in other assets at June 30, 2023.</p> 30000000 10000000 2024-11-30 20520000 19800000 17640000 250000 116667 133333 1.5 4.0 1.00 1000000 0.0350 0.0825 0.1175 21000000 21000000 2640000 18360000 133333 1583333 <p id="xdx_898_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zxGT6qVX5xma" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B3_zHee8dp3iCdl">The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 50%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td style="border-bottom: black 1pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For the Year Ending December 31,</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_495_20230630_zJ5db5W3aVBf" style="text-align: center"> </td> <td> </td></tr> <tr id="xdx_402_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_iI_maLTDzhnE_z279lG9HrR3c" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 31%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Remainder of 2023</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="width: 15%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">181,827</span></td> <td style="width: 1%"> </td></tr> <tr id="xdx_404_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_maLTDzhnE_zIjaCc4aSlV9" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2024</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">51,801</span></td> <td> </td></tr> <tr id="xdx_408_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_maLTDzhnE_zdfuGNhLjFD2" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2025</span></td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">29,028</span></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--LongTermDebt_iTI_mtLTDzhnE_zYNLxufLz4m" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total                   </span></td> <td> </td> <td> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">262,656</span></td> <td> </td></tr> </table> 181827 51801 29028 262656 129323 207414 87838 136433 962000 126000 <p id="xdx_80A_eus-gaap--ConcentrationRiskDisclosureTextBlock_zu0HnHJvyvC8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 3%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>9.</b></span></td> <td id="xdx_828_z2QOVh3AbVJf" style="width: 97%; 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> <tr style="vertical-align: top"> <td> </td> <td style="text-align: justify"> </td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">During the six months ended June 30, 2023, our two largest customers accounted for <span id="xdx_903_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zCCbUIRbmjqj" title="Concentration risk, percentage">32</span>% and <span id="xdx_90D_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zim92Cbg1jLb" title="Concentration risk, percentage">29</span>% of revenue. During the six months ended June 30, 2022, our three largest customers accounted for <span id="xdx_90A_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20220630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zBDH1Q9n539b">36</span>%, <span id="xdx_90A_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20220630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zioK5xOyZA3h">14</span>% and <span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20220630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_zWHXLRm8BbXe">11</span>% of revenue.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">At June 30, 2023, <span id="xdx_90C_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zZVxSLXicKg1">22</span>%, <span id="xdx_90B_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zimVR4jzXsLd" title="Concentration Risk, Percentage">19</span>%, <span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_zirRcW94cDu9" title="Concentration Risk, Percentage">17</span>% and <span id="xdx_90C_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_zPEhJwQHt9Ih" title="Concentration Risk, Percentage">15</span>% of our contract assets were from four of our largest customers. At December 31, 2022, <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--CustomerOneMember_z5pc7I6Dj6V">27</span>%, <span id="xdx_90E_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zAqwNakqpmHe">20</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--CustomerThreeMember_zwGNls4ocAE8">16</span>%, and <span id="xdx_90E_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__custom--ContractAssetsMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_z3dV7EWgpbt">16</span>% of our contract assets were related to our four largest customers.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">At June 30, 2023, <span id="xdx_90E_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerOneMember_zTKLRXPvtLK5" title="Concentration Risk, Percentage">22</span>%, <span id="xdx_90A_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_zdsve9iIRgu9" title="Concentration Risk, Percentage">17</span>%, <span id="xdx_90C_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_zkRz5w6uRmTj" title="Concentration Risk, Percentage">13</span>%, <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_zrTtLLzqLLTh" title="Concentration Risk, Percentage">11</span>% and <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20230101__20230630__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFiveMember_zHvUGyEG2Bna" title="Concentration Risk, Percentage">10</span>% of our accounts receivable were from five of our largest customers. At December 31, 2022, <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--CustomerOneMember_zh2Ef0pGztNh">38</span>%, <span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerTwoMember_ze2x7QWcX0U1">21</span>%, <span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerThreeMember_zsLgd6GKA0e">17</span>%, and <span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__srt--MajorCustomersAxis__custom--CustomerFourMember_ztlLGWT3YGul">13</span>% of accounts receivable were due from our four largest customers.</p> 0.32 0.29 0.36 0.14 0.11 0.22 0.19 0.17 0.15 0.27 0.20 0.16 0.16 0.22 0.17 0.13 0.11 0.10 0.38 0.21 0.17 0.13 <p id="xdx_80F_eus-gaap--LesseeOperatingLeasesTextBlock_zq9iAGwtWTda" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>10.</b></span></td> <td id="xdx_824_zJbFckflrpp3" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>LEASES</b></span></td></tr> <tr style="vertical-align: top"> <td> </td> <td style="text-align: justify"> </td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company leases manufacturing and office space under an agreement classified as an operating lease. On November 10, 2021, 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 <span id="xdx_904_eus-gaap--LeaseExpirationDate1_c20230101__20230630_zLXdsowMGf44" title="Expiration date">April 30, 2026</span>. 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.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company also leases office equipment in agreements classified as operating leases.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">For the six months ended June 30, 2023 and 2022, the Company’s operating lease expense was $<span id="xdx_903_eus-gaap--OperatingLeaseCost_c20230101__20230630_zoeHpAgOrRZ4" title="Operating lease expense">1,084,968</span> and $<span id="xdx_90F_eus-gaap--OperatingLeaseCost_c20220101__20220630_z8rv72bc6BUc" title="Operating lease expense">1,051,911</span>, respectively. For the three months ended June 30, 2023 and 2022, the Company’s operating lease expense was $<span id="xdx_90D_eus-gaap--OperatingLeaseCost_c20230401__20230630_zHfoL2JRDqF" title="Operating lease expense">550,942</span> and $<span id="xdx_90D_eus-gaap--OperatingLeaseCost_c20220401__20220630_zGejoTbcukQ7" title="Operating lease expense">516,920</span>, respectively.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_89F_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zX21dzOwfb63" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B7_zGKqrvPb1rrc">Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For the Year Ending December 31,</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_49D_20230630_zOaKCwPm8hAe" style="text-align: justify"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_iI_maOLFMPzv5G_zMYwLjB1ph21" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 86%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Remainder of 2023</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,096,220</span></td> <td style="width: 1%"> </td></tr> <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maOLFMPzv5G_zhivs9pjlRpe" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2024</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,228,784</span></td> <td> </td></tr> <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maOLFMPzv5G_zNor4RyUc2w8" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2025</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,283,354</span></td> <td> </td></tr> <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maOLFMPzv5G_zC4uHLYeEp77" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2026</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">850,276</span></td> <td> </td></tr> <tr id="xdx_407_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maOLFMPzv5G_zEk1cpY66KV2" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2027</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">111,065</span></td> <td> </td></tr> <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_iI_maOLFMPzv5G_z7dRFbYbLm23" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Thereafter</span></td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">9,228</span></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtOLFMPzv5G_zJMVwJF3uVHj" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="padding-left: 9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total undiscounted operating lease payments</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,578,927</span></td> <td> </td></tr> <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_di_zexsJFJdjrr9" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Less imputed interest </span></td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(536,037</span></td> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiability_iI_zwZ2QR5bFBAf" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Present value of operating lease payments</span></td> <td> </td> <td> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,042,890</span></td> <td> </td></tr> </table> <p id="xdx_8A9_zhNHNK6DfNJ1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p id="xdx_899_ecustom--LesseeOperatingLeasesTableTextBlock_zJScyRalZjl5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B7_zx0SdYWZWfjc">The following table sets forth the ROU assets and operating lease liabilities as of:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" id="xdx_49D_20230630_zzsKaXD0ILn5" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_493_20221231_zvqeZx4kCwBe" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31, </b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_409_eus-gaap--AssetsAbstract_iB_zqwiKBF9G1u" style="vertical-align: bottom"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Assets</b></span></td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--OperatingLeaseRightOfUseAsset_i01I_zKQr19tgFTFe" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 74%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ROU assets, net</span></td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; width: 11%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,646,483</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,526,627</span></td> <td style="width: 1%"> </td></tr> <tr style="vertical-align: bottom; background-color: white"> <td style="text-align: justify"> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_40E_eus-gaap--LiabilitiesAbstract_iB_z1Gdx0pIOia4" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Liabilities</b></span></td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_402_eus-gaap--OperatingLeaseLiabilityCurrent_i01I_maOLLzT6D_maOLLzzJK_zKZQQ9qhg8k2" style="background-color: white"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Current operating lease liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,921,803</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,817,811</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiabilityNoncurrent_i01I_maOLLzT6D_maOLLzzJK_zhlgBDyKIUbi" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Long-term operating lease liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">4,121,087</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,077,235</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_404_eus-gaap--OperatingLeaseLiability_i01TI_mtOLLzT6D_mtOLLzzJK_zqNBfIxWu4r9" style="background-color: white"> <td style="vertical-align: bottom; padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total lease liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,042,890</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,895,046</span></td> <td style="vertical-align: bottom"> </td></tr> </table> <p id="xdx_8A3_zvqrPPmvOMsk" style="margin-top: 0; margin-bottom: 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company’s weighted average remaining lease term for its operating leases is <span id="xdx_903_eus-gaap--OperatingLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20230630_zl8oWSeSYP69" title="Weighted average remaining lease term operating leases">2.9</span> years as of June 30, 2023. The Company’s weighted average discount rate for its operating leases is <span id="xdx_904_eus-gaap--OperatingLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20230630_z7piCcKfENPi" title="Weighted average discount rate for its operating leases">5.4</span>% as of June 30, 2023.</p> 2026-04-30 1084968 1051911 550942 516920 <p id="xdx_89F_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zX21dzOwfb63" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B7_zGKqrvPb1rrc">Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For the Year Ending December 31,</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_49D_20230630_zOaKCwPm8hAe" style="text-align: justify"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_iI_maOLFMPzv5G_zMYwLjB1ph21" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 86%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Remainder of 2023</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="width: 10%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,096,220</span></td> <td style="width: 1%"> </td></tr> <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maOLFMPzv5G_zhivs9pjlRpe" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2024</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,228,784</span></td> <td> </td></tr> <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maOLFMPzv5G_zNor4RyUc2w8" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2025</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2,283,354</span></td> <td> </td></tr> <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maOLFMPzv5G_zC4uHLYeEp77" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2026</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">850,276</span></td> <td> </td></tr> <tr id="xdx_407_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maOLFMPzv5G_zEk1cpY66KV2" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2027</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">111,065</span></td> <td> </td></tr> <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_iI_maOLFMPzv5G_z7dRFbYbLm23" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Thereafter</span></td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">9,228</span></td> <td> </td></tr> <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtOLFMPzv5G_zJMVwJF3uVHj" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="padding-left: 9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total undiscounted operating lease payments</span></td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,578,927</span></td> <td> </td></tr> <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_di_zexsJFJdjrr9" style="vertical-align: bottom; background-color: white"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Less imputed interest </span></td> <td> </td> <td> </td> <td style="border-bottom: black 1pt solid"> </td> <td style="border-bottom: black 1pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(536,037</span></td> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">)</span></td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiability_iI_zwZ2QR5bFBAf" style="vertical-align: bottom; background-color: #CCEEFF"> <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Present value of operating lease payments</span></td> <td> </td> <td> </td> <td style="border-bottom: black 2.5pt double"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,042,890</span></td> <td> </td></tr> </table> 1096220 2228784 2283354 850276 111065 9228 6578927 536037 6042890 <p id="xdx_899_ecustom--LesseeOperatingLeasesTableTextBlock_zJScyRalZjl5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span id="xdx_8B7_zx0SdYWZWfjc">The following table sets forth the ROU assets and operating lease liabilities as of:</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: bottom"> <td> </td> <td> </td> <td colspan="2" id="xdx_49D_20230630_zzsKaXD0ILn5" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2023</b></span></td> <td> </td> <td> </td> <td colspan="2" id="xdx_493_20221231_zvqeZx4kCwBe" style="border-bottom: black 1pt solid; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31, </b></span><br/> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2022</b></span></td> <td> </td></tr> <tr id="xdx_409_eus-gaap--AssetsAbstract_iB_zqwiKBF9G1u" style="vertical-align: bottom"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Assets</b></span></td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td> <td> </td> <td colspan="2" style="text-align: justify"> </td> <td> </td></tr> <tr id="xdx_409_eus-gaap--OperatingLeaseRightOfUseAsset_i01I_zKQr19tgFTFe" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="width: 74%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ROU assets, net</span></td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; width: 11%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,646,483</span></td> <td style="width: 1%"> </td> <td style="width: 1%"> </td> <td style="border-bottom: black 2.5pt double; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,526,627</span></td> <td style="width: 1%"> </td></tr> <tr style="vertical-align: bottom; background-color: white"> <td style="text-align: justify"> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_40E_eus-gaap--LiabilitiesAbstract_iB_z1Gdx0pIOia4" style="vertical-align: bottom; background-color: #CCEEFF"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Liabilities</b></span></td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td> <td> </td> <td> </td> <td style="text-align: right"> </td> <td> </td></tr> <tr id="xdx_402_eus-gaap--OperatingLeaseLiabilityCurrent_i01I_maOLLzT6D_maOLLzzJK_zKZQQ9qhg8k2" style="background-color: white"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Current operating lease liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,921,803</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">1,817,811</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_408_eus-gaap--OperatingLeaseLiabilityNoncurrent_i01I_maOLLzT6D_maOLLzzJK_zhlgBDyKIUbi" style="background-color: #CCEEFF"> <td style="vertical-align: bottom; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Long-term operating lease liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">4,121,087</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom"> </td> <td style="border-bottom: black 1pt solid; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,077,235</span></td> <td style="vertical-align: bottom"> </td></tr> <tr id="xdx_404_eus-gaap--OperatingLeaseLiability_i01TI_mtOLLzT6D_mtOLLzzJK_zqNBfIxWu4r9" style="background-color: white"> <td style="vertical-align: bottom; padding-left: 9pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Total lease liabilities</span></td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: top; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,042,890</span></td> <td style="vertical-align: bottom"> </td> <td style="vertical-align: bottom"> </td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td> <td style="border-bottom: black 2.5pt double; vertical-align: bottom; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6,895,046</span></td> <td style="vertical-align: bottom"> </td></tr> </table> 5646483 6526627 1921803 1817811 4121087 5077235 6042890 6895046 P2Y10M24D 0.054 <p id="xdx_806_eus-gaap--IncomeTaxDisclosureTextBlock_zTAoKrJT1c4c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>11.</b></span></td> <td id="xdx_821_zT36b0701Kt8" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase"><b>INCOME TAXES</b></span></td></tr> <tr style="vertical-align: top"> <td> </td> <td style="text-align: justify"> </td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">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’s policy is to record estimated interest and penalties related to uncertain tax positions in income tax expense.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The provision for income tax for the six months ended June 30, 2023 and 2022 was $<span id="xdx_908_eus-gaap--IncomeTaxExpenseBenefit_c20230101__20230630_zmsFlK7AfAfc" title="Provision for income taxes">298,046</span> and $<span id="xdx_90E_eus-gaap--IncomeTaxExpenseBenefit_c20220101__20220630_zHvTcSLmQ0B9" title="Provision for income taxes">7,500</span>, respectively. The provision for income tax for the three months ended June 30, 2023 and 2022 was $<span id="xdx_904_eus-gaap--IncomeTaxExpenseBenefit_c20230401__20230630_zHUgt0OnTxp7" title="Provision for income taxes">98,789</span> and $<span id="xdx_90F_eus-gaap--IncomeTaxExpenseBenefit_c20220401__20220630_z47BUPYnSIF3" title="Provision for income taxes">6,225</span>, respectively. The increase in the year-over-year provision for income tax is the result of the Company’s valuation allowance on its deferred tax asset being partially released at December 31, 2022, resulting in the periodic change in the deferred asset for the periods subsequent to December 31, 2022 being recorded through the Company’s statement of operations during such periods. For the three and six months ending June 30, 2022 the company’s deferred tax assets were fully offset by the valuation allowance, therefore there was only minimum state tax income expense recorded to the Company’s statement of operations during those periods.</p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The effective income tax rate for the six months ended June 30, 2023 is <span id="xdx_908_eus-gaap--EffectiveIncomeTaxRateContinuingOperations_pid_dp_uPure_c20230101__20230630_zkcFNPJNmnfc" title="Effective income tax rate">12.2</span>%. The difference between the effective income tax rate for the six months ended June 30, 2023 and the statutory income tax rate of <span id="xdx_907_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20230101__20230630_zCQBOaINHHT7" title="Statutory income tax rate">21</span>% for the six months ended June 30, 2023 is due to the estimated R&amp;D credit, the partial release of approximately $<span id="xdx_904_eus-gaap--ValuationAllowanceDeferredTaxAssetChangeInAmount_iN_di_c20230101__20230630_z662e1ulrdtk" title="Valuation allowance released">121,000</span> of the Company’s valuation allowance on its deferred tax asset recorded during the three months ending June 30, 2023, state income taxes and permanent tax differences.</p> 298046 7500 98789 6225 0.122 0.21 -121000 <p id="xdx_80A_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zxPTVqBj7hSe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 48px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>12.</b></span></td> <td id="xdx_824_zgKpDDzuhhhd" style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>COMMITMENTS AND CONTINGENCIES</b></span></td></tr> <tr style="vertical-align: top"> <td> </td> <td style="text-align: justify"> </td></tr> </table> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="background-color: white"><b>Class Action Lawsuit</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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 Company’s registration statement and prospectus supplements issued in connection with the Company’s 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: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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_zrz9Mryt95Tg" title="Settlement amount">3,600,000</span> (the “Settlement Amount”), 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, 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: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><span style="background-color: white"><b>Shareholder Derivative Action</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="background-color: white">Four shareholder derivative actions, each based on substantially the same facts as those alleged in the class action discussed above, have been filed against certain current and former members of our board of directors and certain of our current and former officers.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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 purports 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 seeks 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 seeks declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. On October 26, 2020, plaintiff filed an amended complaint. On January 27, 2021, the court stayed the action pursuant to a joint stipulation filed by the parties.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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 purports to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and seeks 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. On December 22, 2020, the parties filed a joint stipulation staying the action pending further developments in the class action.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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 is based on the shareholder’s inspection of certain corporate books and records, purports to assert derivative claims against the individual defendants for breach of fiduciary duty and unjust enrichment, and seeks 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 seeks 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: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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 pending further developments in the class action.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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 purports to assert derivative claims against the individual defendants for breach of fiduciary duty, unjust enrichment, and waste of corporate assets, and seeks 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 seeks declaratory, equitable, injunctive, and monetary relief, as well as attorneys’ fees and other costs. On April 12, 2021, the parties filed a joint stipulation staying the action pending further developments in the class action.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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 July 22, 2022, the court referred the motion to the magistrate judge. The magistrate judge held a conference on September 9, 2022 in the consolidated federal action. 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: 0pt 0; text-align: justify"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; background-color: white">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. The final approval motion remains pending.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; background-color: white"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; background-color: white"><span style="background-color: white">The terms of the proposed settlement are set forth in the stipulation of settlement agreed to by the Company and plaintiffs. Should the proposed settlement receive final approval from the Court, it will result in the dismissal of the shareholder derivative lawsuits. As part of the proposed settlement, the Company has 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_90D_eus-gaap--LegalFees_c20230516__20230517_zfmZ3pia4WXb" title="Attorneys' fees">585,000</span> in attorneys’ fees to plaintiffs’ counsel.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; background-color: white"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white"><span style="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: 0pt 0; background-color: white"> </p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="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_905_eus-gaap--LitigationSettlementExpense_c20230101__20230630_zgZzk9B2gZr2" title="Covered settlement amount">750,000</span> retention. As of June 30, 2023, we had previously paid and accrued to our financial statements covered expenses totaling $<span id="xdx_90F_eus-gaap--LitigationSettlementExpense_c20230101__20230630_zWsQsuF3LGh9" 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_90D_ecustom--DirectorsAndOfficersInsuranceRetentionAmount_iI_c20230630_z0maLDl5AiC4" 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> 3600000 585000 750000 750000 750000 EXCEL 59 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( )2+%5<'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 " "4BQ57NX^ D>X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>*'&@%)/ZTM%3!X,5-G8SMMJ:Q8ZQ-9*^_9RL31G; ^QHZ?>G M3Z!6!Z'[B,^Q#QC)8GH87>>3T&'#SD1! "1]1J=2F1,^-X]]=(KR,YX@*/VA M3@B\JE;@D)11I& "%F$A,MD:+71$17V\XHU>\.$S=C/,:, .'7I*4)Q:^$.F&"$T:7O IJ%.%?_Q,X=8-?DF.R2&H:A')HYEW>HX>UI_S*O6UB? M2'F-^5>R@BX!-^PV^;79/AYV3/**-T6U+GA]X+7@:\%7[Y/K#[^[L.N-/=I_ M;'P3E"W\N@OY!5!+ P04 " "4BQ57F5R<(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 )2+%5=*^_+ S 4 ,D> 8 >&PO=V]R:W-H965T&UL MM9G_<]HV&,;_%1W;[=J[$%LR(:0CW!&7K&QM2B'I+MOM!V$+\-6VF"Q#\M_O MM0UVFI-?&%?WA\;?G@=]_,K28ZN_E>I;LA)"DZ]VBK?V!:;!R ->BO^5+,A'Y83Q3L6:6+'T0B3@(9$R46UZTA M?>#)/\ M?[(MKNUT6L1+$RVCG1A:$ 5Q\9<_[6[$2P&M$;"=@+T2T+I?<'8")P>:#_I*;HG*K@:W;"._-[D::((X*^-,*S@;@$X/7+D1BK1)LN)*)'U+@V=V MQO)V^IM"SVKT7?))QGJ5D%'L"_][O05M*1O$]@VZ8:CA[VE\3AS[C#";.8;V MN+A\F"[/";TTR;]KCE/>'R?W<]#[\_=PGF@%7>X?TQTJ'#IFA^PY?)>LN2>N M6_"@)4)M1&OPRT^T:_]JPOM!9M_!=DK8#N8^>"^]%!Y13>Z?U\)$BLNIW?YB M0D)5)R)=E$@7:)N&P./G3+'<=Y&R0>#_>XMW#8.-7@;E^8 MB0_5G,A'[6KVM/\7X:/@JI[O@%E="7'9J8PO$@)%F^6F2KU&Q'KL ;MVF[*V M0XV@J/)44%:!,K1EHU@'^ADX0T'NTF@NE!$/-Z%M2IVKGA$/59Z*5R49BF:' M/=Y4+(,LS$!%[WADKB!NY$[&9#B:?I[=3Q_<^X?I:'9&QG?NN9&YB3Q#JT!# M\4BR8W:A_RKHNV,(J4_D#_%LI,:M;/C7ZUTY'7-MFP@YM$HY%(\I.\Y[_D3& M/L &B\#C^<2)=&3_>S0B-Y&):!6**)YD=LA#WP?WY&R_03["=>1S;.;$ M+:\H^0"CN0XY#.R92XQ[UG3E)E(3JU(3PX/.:]")3#2,SG\% MZ]HG]H CI9?TTOBUH(GLQ*KLQ YDIYQ3"5X/AAN\Z3KTK1&LB:S$JJS$\)CS M4>:!?B5C+"L=,+GH==LPQ1@G&%QZ*E\5EAB><>X##2E0+@AE;^9OR4QXJ8): M&B$/I"4913 /)UIZW\[(S_:Y;5.RA@R]X6$JR%JHXN.;\28TD9Y8E9X8'GG@ M_=L/XB69/4=S&1K9<0/WZX,1JXFPQ*JPQ/!DLR\F&3UY*QXO16T0/F!T]S@; M#3^-ID;&)@(2JP(2.RH@[=_=BL\G>2UA4C&_G1YP?#1^'G9QU:F<52IB1Z6B M<:R%*I8$LO=2O@J^;^*R$_&<*@$Y1R6@ M4234,GLJ?P,'O8*0$*UY;*SK '[9UW$EH(X8'FY3C]=$ M#'*J&.0<]F]" M0K$ J7U^"3^OBG738D?+=;[T.)=:RRC?7 GN"Y5= .<74NK]3O8#Y>KUX#]0 M2P,$% @ E(L55ZTN;_$4!P 9QT !@ !X;"]W;W)K7JE2/YY/R.3;%Q^*^Y5MOYC.SC;R7MTJ^VGSWL#9M)]E M4:Q551>Z0D8MSR<7Y,4E$^V SN*?0CW6>\>H=>5.Z\_MR9O%^02WBE2IYK:= M0L+'@[I49=G.!#J^[":=]-=L!^X??YO]C\YY<.9.UNI2E_\6"[LZGV03M%!+ MV93V@WY\K78.\7:^N2[K[B]ZW-GB"9HWM=7KW6!0L"ZJ[:?\N@O$W@"2! ;0 MW0#ZO0/8;@#K'-TJZ]RZDE;.SHQ^1*:UAMG:@RXVW6CPIJC:VWAK#?Q:P#@[ MNWSW]NKZ[>WU%8*CVW7U^CV]?7UQUOT[%,EFT5AU>)W M=(H^W5ZA9[_^?C:U(*"=9CK?7>S5]F(T<+&_FNHY8O@$44R99_AE?/B5FL-P MT@VGA\.GX';O.^U]I]U\+.1[8XRJ++JH:V7K%SY_MA,D_@G:)?:BWLBY.I_ M&JJ5>5"3V6^_D!2_]'GWDR8[\)7UOK+8[+-+6:]\#FY'I=VH=LD_S!C.<"H@ MO@_[VCUV62(HY;W=@:RDEY5$95W,Y[JI; T58:Z*!WE7JA-4*>N3NIV)[TG( M4DH8)B.IKEV2<2'V7#J0RGNI/"KU354W1E9SU6K5#\H\[8GVZ8U.Y[_=R)!+0*'J- MXDC,'V"!:O/D4R>Y7UO6:\NBVCZH95,MVIN/BFJN MUPI9^55YXYBY&7EP_[8ZCUD=J,Q[E7E4Y7NC-K)8(/45P%^K&LEJ@;1=*0-T MV9:_\/W/'44\Y8(D(^&N62YXQ@+*"1[0A*/:/VHK2W18I;W0P6[D.,FRE(^5 M^BP9R;.$I0&Q>QPE4;'O-LI(6U3WJ%305B#3]@^G>GG:P$DXQ+M9#V.;8\'&Q/#8 M$4(3SD.A'E!&XBR[4DL%.;%H%]PVM%Z=S T8%3EQ>.$SY"))4A80.L"-Q.GV MI]:+QZ(LO?)<3!&1)=3-V>.&A_(&H)$XT=YU92"2FRYY*$L8)@%XG(') %!'?U47>%/*N* M;*'\K M2:*H^]%>\F?-=NCTP#X2AU_?MVWD4ZC_(2[0"!&00"(?WQW7,L,TS_-0J1CH M1^+X YVF40/^O#H]F&,$\MR1Z1J".PG/ SE$!]+1..EN(&WN9;>OA5RWI6HK M,-)WY>Y;[]8D.N4/])?4A6*TP:0#$VFXQ_#8$4%RD8;R86 C/<+&43NWE\$GWSIGKW*7A22G),/C?LYGF '8 M"0E('ZA)X]1\T^]&8M69ND0D*4![+--C1EBH,-.!FC2^LSOL[6^.U =W"\>P MP F@9"S79\DPR5B@&:$#\F@<>3<'JZUKC[O3P_SVRO> ,-N6V+%\CV6>Q=;A M0$(:)^%-O^AT.+6]ZEWJ)802G#FQ]W 4"T%9X!D1&_#(CN#QH&#\2.B99\-' MDFRT3]YFEOW4!Z,_:[9#W_<>C1Y!JUZOV\[+ MZOEG=(I^?0XM!91.@QYDV:B72#9VI4WQ'_21')_ 6FS_H[J-&," T!-!Q0E) M1;>!AE..TQ.1\]X"_FQ4][JB?#I!15VW'6GW'*:QM84#6(O>(/N@+.AXW7G- M8.4%4F(@-SOR;'8!=0[6%61P^PCIM*C07&X*R&BO6!?%@L'^BJ5.%OLL20;; ML4"3Q 9JLSBUH=UOUDTI+01XH9;%W-\6,9>]IVF:I0E/^%BLSS3'.,E#/2<; M0,V^9WL;7GE>Z9XM;\93SLR\#.?;KW%JQ]!?FW-/=%50/EEC 4/Q<0"[-]J[<]L7K3O1B[T];J=7>X M4A(<: W@]Z76]MM)^ZZM?[:C M33)8&JFT13 QJ"C;'J8]N,EM8^'8F>VT;+]^ME.BE@4&TOK0^-KW')]SXUPG M&R[N9 &@T'U)F1PZA5+5B>O*K( 2RQZO@.F5)1/GEM-IMS3 W?$#^YGUKKTLL(0QI]](KHJA\\%!.2QQ3=4- MWYS#UD]H^#).I?U'FR8W/G905DO%RRU8*R@):Y[X?EN''8 _> (0; '!2P'] M+:!OC3;*K*T)5CA-!-\@8;(UFQG8VEBT=D.8>8MS)?0JT3B5CJ^O)M.K^72" M]&A^?7DQ&=WJX'1T.;H:3]'\?#J]G:.#+PS7.5&0'Z*#&1; 5 &*9)@>HO?H M+7*1+/2L3%RE-1EF-]ON?]KL'SRQ_Z>:]5#?.T*!%_0[X./GX1/(--RW\& ? M[NI*M.4(VG($EJ__!-]<807ZD"K$E^B,,,PR@BF:<4GLJ?L^6D@E]-G[T66U MX1YTRO3+TVS+TGV-/Q[PLM5M] M^K*[(U1A@=:8UH ."$,YIQ0+B2H0S5L_["I%PQ];?M-)UJG7\SP_<=>['O^5 MM2=^T(H?O$(\KE7!!?D->9?,ABG<$1!ZS>^1TAMNH>%? M^_M!',1^%#\2VI48>E%\''8+C5JAT2N$ZOM *LQRPE9=:J.7JNU*[%3K[K0X M<[U\QF)%F$04EAKJ]6+-(9J6W02*5[;K+;C2/=0."WW+@3 )>GW)N7H(3"-M M[\WT#U!+ P04 " "4BQ57)7A)-E<& "R(@ & 'AL+W=O NL_ 3/%=:! S#;9GD2U<;J#J(PKKZ#E]H1 M>P:*QVZ :P.L&] #!J0V(.\=@=8&]+TCL-J@E#ZLM)>.\X(\&(_2Y!FD!5JQ M%0>E]TMKY:\P+A)EFJ?JUU#9Y>/)S;7G7T]]#ZBCZZ[7F'_5"Y8.<'_.J'"]Q)^-LV/@$$?@888F*Y MG\G[S;%-SO\;W?_PZ"UGD%U2D)*/'N"[DT\RWDI;6"M#7AH6B]#3&$-&'<;8 M:/BT[R\3B%R!&86\#?1,(,6,4UPX8A_HFT B((<,-L"66KI32SO53I(L!\D" M9,%:9C;-E3G;E\($):9F&Q!SYB!=LPDD! O'@8ZFV0)$@G,,J5TSVVEFG9I_ M29,L YLT682Y33(SQJ4<4@BAIMC$$S9P W;@N[D%-7 M=X<%QX5#!-;<8>(85W.(N)H[+#B7,$@/N,/9NKVQ^7VSMX#25)>HN+3\4G(K2W *-R6A%43T] M;2BDKT)O<;7%-X4FHIV9.2VD9F";R;F:DH4#-MMZDIL-$;%?;1J=TUX#W%1?J;A3 D'MO<71L^F3S>F7S^V)KQZ9I M8M"[NI@#L;&&1KRK8+"BC(+!AC(+AC>XVL\DFZX%PV]6,.#.!NG8?.V5S>N5 MS>^+K1VTIN'"G0U7OP5#/9:V&:G^46B).K$B"62":(GOV3D1AEQ_#F-%8H>1 MO:>X;2\U71KN;#3&=T=MA-UD1R=OK_U9KVQ^7VSML#3]&29];X2XL^,[.C9] MLGF]LOE]L;5CT[2/N/N/BN,WPIKPC8W0CM(W0BO*V C?XFI+;YHPS+[=1OCA M?L^:KWVR>;VR^7VQM8/6](2XLR?L>2.T=66N*XQDMN"(VJ_T!])6/H>Y5$]H M:X4VSJM_7G=7=R]8G)>O%6C7+]#I!%FN>^C4 MKUZ?:.BKMSFN@G09QAE8RX4:"IXXZF;3Z@6)ZB1/-N4; (])GB=1>;B2P5RF M!4#]ODB2_/6D&&#WFLKX/U!+ P04 " "4BQ57LDI\4N8' #)-P & M 'AL+W=O'5X15YCBD= MOV3YU^*1\]+YMI@OBY/!8UFNWH]&Q?21+Y+B7;;B2_&?^RQ?)*4XS1]&Q2KG MR:QNM)B/L.OZHT62+@>GQ_5W5_GI_P=_6-]\>)B[I*"C[/Y'^FL?#P9A -GQN^3IWEYG;U\XIL+\BJ\:38OZK_. MRR;6'3C3IZ+,%IO&(H-%NEQ_)M\V1.PTP%C3 &\:8*D!\34-R*8!D7L(- WH MI@&5&B"B:>!M&M27/EI?>TUO3AY%2W0JH.:_;JUX"M=5H4R*7/Q MWU2T*T_'EQW%V&Y^+=D?.T+F=Q,Z;'X^.1Z5(K^ID M--VD\F&="M:EDBT6HG0F93;]ZOSUA2_N>/XW #,VPYS-9FE5@\G2EN.CYS6)(OT^5#8<)B9JR;3.32;C82H[8=.KP=.ESC M4 W.!_Z0+JMDQ)TR3Y93_M9Y3N9/W$E*)^;3=PY!;QWL8@0-Q1K:KZ&KR>3Y M%&%"_./1\R[3:E2 0T("BMN!L1HX#$(4(N2A=B0#(CU"/#<@V\ 6&V3+!NG' MAO-&C'SQF.2\..I$R1K?DRCQ_)!(K!@3J6;V]\4JF?*3@9BZ"YX_\\'I3S\@ MW_T%JCN;8,P26&L Z'8 J'$ +L2J=KZ<9@O!_.>L*, 9P @!)^A 4X EG)@J M8SXD.")RT>X-:S'F;1GSC(S5,]VP6N9FCN!-K/U%4J^>_%MUS"$"/>7VH8%4 MGIZ2+/9"XDEWK#&U[@PRL+<0P\SX6V;\@YC9O;-B:LI>2$%I30H*1*[%B3*1O+=H$8Y; 6@,0 M;0<@^O\D3M1)XD10.4(21PW421P@TBAQD-N(=?=_%CF;#CJH'',J?4O2*AJS MA=8>AAW/A Z7.F:,GE<\MHH66T5C&[36GI2AS M5S_O(LC?4!K)-8Z!NS^* M>5(F,@!IG-S.%:":E60B.6S*GT+DV;:,P66GL8&N.$S,ZIV]+T"G\! MVG!;0#%2'9N' E]6:VQ_7)NWQO0@L^MYC1='JN'Q97F)5&^"A+@DLKHTI]?# MCVLZC'1K3^.%D-D,'>K)D>J%?!\A9=FQZH2LHC%;:.T1:,P0,KNA ^00Y(4 M.029(5@.06Y((X> 4*,AL4/8 M;(>ZNG1X!!!0FL(KR_2K'B,@*(R4(HZ!R*$?N2Z-L%R:0-\4B7(GKJ8R=[9F M>N[-F(PZS(OJ(BI>_"#R9&J,J?2N3)MHK,M5M"ENO! V>Z%.2L>,T4/IV ** ML6K HI 0UY-KDRBU*<6U>6O,"S:;E]U23JAHT9JA8[: MMUGH-)X$]]RAZ2]T5'^@$SK&5'I7IDTTUN4JVL^U-"Z'F%U.)Z%CQNB[VV 5 M+;:*QC9HN[5<_=9)0LW3&*3Q,<3L8SKY:W!V)9")"10/22 3$[@A\4/IW@8B MA[XPS=2CLE $^O9#S_<\S;U-&A-##C0Q^WF!Y+_@!?D*-59-C%4TUN4JVA3O M/+36E>=331F"ZT]#(T)(F83U&W5L?04V=@64$P [X6\P UD2=0AL,U<8UZ(V;QL MGF,NZN>8[[/\GJNI:T8!O='=5-=XV&(V: M7<[KQ3=5#0$DOH$PC?@&(G7B&P@UBF_:F!':3+C>14@_G^?9>7WD^I=J^W;>Z?_ 5!+ P04 " "4BQ576JE2#TH' !B M( & 'AL+W=O?27]\CP(!!*$G'>; !'QV^<_UT MR?D3%S_S#6,2/:=)EE^,-E)NSR:3/-JP-,P_\"W+X)<5%VDHX5:L)_E6L'!9 M#$J3";$L=Y*&<3::GA?/[L7TG.]D$F?L7J!\EZ:A>+EB"7^Z&.'1_L&W>+V1 MZL%D>KX-UVS.Y,/V7L#=I-:RC%.6Y3'/D&"KB]$E/KNFOAI02/P5LZ>\=8V4 M*0O.?ZJ;F^7%R%*(6,(BJ52$\/7(KEF2*$V XY]*Z:A^IQK8OMYK_U08#\8L MPIQ=\^1'O)2;BY$_0DNV"G>)_,:?/K/*($?IBWB2%Y_HJ9*U1BC:Y9*GU6! MD,99^1T^5XYH#0 ]^@&D&D"Z ^R! ;0:0 M#2V2%6;-0AM-SP9^04-*@35T4 MOBE&@S5QIL(XEP)^C6&^^W,PNO\/-_#M\??UX^WV. M[CZAZ\OY9_3IR]V/.3IYN+U\F-V S"D:HX?Y#)W\>GH^D0!%*9Q$U6NORM>2 M@=>ZZ"O/Y"9''[,E6QZ.GX )M1UD;\<5,2K\Z[&^0:MH$9RM!(\15!V(I1QMB[S-I8QR\]T;BO5VGJUJJ;/\FT8 ML8L1%&W.Q",;37_[!;O6'SJ;CZ3LP -V[0';I'UZ"RTHSB*>,IV9Y5BW&*LZ MS>.48-NB/CZ?/+8MZ,O9ONU93BUV@,VIL3G&Z%PN_X;*@F8DI0&X%?XPA3]'B!9WLS5:SXCVL@4. M\14T]P5$-\]W818Q%/%A*ZVL%!VD.?8# M?2APB\"QF6HV8;9F.<2BW9'RG$%S4S6:Q.$B3H:[4Z7^2.WI6-H.G4$:9Q!C M0$]NL@AFLSD[A;B65\HQ813QG>KVT+Y8_!@N$GVH22]"8^JYU"'=NM)(8NP% M'AF(9C-OP$92AM*J4)_$M25@0)SE.U'TK5]C,_'O(Z!@ Z]* >Q8Y:,6L:WQN>-Y#NG.!;22%I20;0]@;N8#V$B;C=<+ M5S_"Q("+%RU:I]]W/1MZ:A=K7\ZV,1Y$VC P?HV"&Z100=LP7NZ;5UGN7&Z8 M,/F[3[8VMC!VNQ;TY4 (6]Z !0TK8S,MM_,#EFR[;*F2^54J,6M]=YOJ$_@8 MIB8#\TK<,#@V4W@[/$TW%FHM.>:K,M ]M^%+$:MBZA=%8L>:Y-,:U.=_[$*YT.X$0",XQ@1F5 /U M0AJ&)V:&'S"I;DPM=M190/J<35P+9C!^QP*-X#BP SID0$/OQ,B8TY-9"W>3 M7)!#,F%J":.FMLJ =3717235I=8>K.FA6H+02#J!"MZ 00U%$S-%MTLD*2Y> MBX&&E7V@!Z?;LG2"GF\1;R@(#2L3,RL/9%&[9^V+0VM!GVP=V^NED(:2'>P. M]"32$#(Q$_*!PWFN)D%%?]0BU7&LRO@NP>D$@;6QZP[ ;;B8F+GX]OVK;JTE M?0;V/0=3KVM(7VY,K,!UAYB.-%Q-W'=M JF91?Z6#0-BG .\E^N.I>W0"PW? M$S/?W^]$M%'I!WT*0@KADR\%@[!_=O%6=3"M"S0$[02D50V5<3HB=R@>"E[# MY,3,Y'4:5IFGC9X6>9^=]<@UW^QSKDE3+%K[]V;&5^C;.PC*$BU8#6E[KNLX7<+4"5+7AQ0;('C:$#PU$WQ1 M\*%$"[:.LTPY6+5:)F*N3YT^=5/?]DC?O7U!EX)SASB>-AQ/S1R_1\S4@M6( MM<_.@,!RO>X*0B-(7)BXN$.9T+ X?0.+%^OLY4XHY\("NT*,5ESH3W&.2N#' MTG;H@(; Z6L+=FB=3+];3OOTBS&L>G"O;?8%7=NQR MOG\-!;2"'-97*U!I??# [Z(\T"YO)-\69\(++B5/B\L-"Y=,* 'X?<6YW-^H M%]3_5C#]#U!+ P04 " "4BQ57J&P!?R$' "\$ & 'AL+W=O)H3R[7#HTPT7R@]LR09?5M85*N#5K8>^=*RRN*G(AY/1Z&Q8*&UZ ME^=Q[7?2FX[=7KT4^"OQ'\]9WGDDB65K[55[FV45O) YQSFD0 M#0H_#SSC/!=%<.//G:U(V=I\;[37A MD]W^BW?Q_"SZ4IO[^#]M:]E36$PK'VRQVXSW0IOZ5SWN<.AL>#/ZSH;);L,D M^ET;BEZ^5T%=GCN[)2?2T"8/,=2X&\YI(TE9!(>O&OO"Y?S#_?6G^2W=S#], M/\SFT]]I<3^]O[Z]_G"_.!\&6!"Y8;K3=E5KFWQ'VQG=6A,VGJY-QMGA_B$\ M:]V;-.Y=35Y4^._*#.ATU*?):'+Z@K[3-MS3J._T._JF:6HK$[19TYW-=:K9 MTW^G2Q\>[(KNI,M)JC82_<;IIDM2F6>*+7H4!^BT.QN M3E-V%GA6::BPI9_,33J@DQ]_>#.9C-XU O%U_.ZG/GWA/)-TW')0>5ZY]5.? M#K9\N9WOI15M-S;/G\AN#6>@DJ77F0:;=*U#S&2U?VGRGA_ /"5X)&#)E=;% M$/Y&%8S2"7HKD@<4P*F F)LHZM!W;O6;Y2T_7ZE\LY)8URS:RC4!#2*20# # MS<$)P1)EF:F %VT".UW02AME4JWRQ -^ED@BV*&3!!57T"W<=DL$ :P=Y;Q^ MI*)N39;6/"**APEMU /3DMD02J14#I)EY7RE@%ZPB:AR58ZFD1V.UU4>T6S] M67!:.1WT3N+Z,=THLXY^%MI')F_RNKB>[6&8L0LX01!S?GXWZ3.E^;SN#E _:LG"U(55F,XD#;,>CZ MM*P"93;"'6B'- &O)K>=W"3[W#C^L]*"^/*)6D &!PRQY%RC"SVTP'-1E6F? MYM8+01#212J#%G@BP!3J*S^W1V7-/ARMXAST.080I&U 4SBHLC]P4M85(#;Z M30IMJ8ULMZM8NH4R$KA_-&H#HO;2\](FBE=*N,57;;?JG!*8V\QT_]JG& M&"$TP=F %E6Z.?!&K ^E=0EW(]+->LQ?%#4B>_SYI M<(!D%)-X(?Q'9>I9)]9[>%9$R5$-^TQ"WC$2T&VR#L=(D8]_>>=I:DP%'9\8 M7!H(UF0\HO'HU6\M7$^LW(YHNH6:Q$(]Z3!IN_60$8$RIJK8=!@_W8YC1'M# MBDU"8AI1$DTJ-=I;FPQM*KS=E.Y.B5DGC6;$">SXL8R9:QU?52BGZ+T4!&K7 M"BK/K*+HS%XE>5[7)06\0#[R +\ ?5%:@P^)%( A*1L'ED%>M['W]QH:IR28 MF@<F('P-D#VBBK2]QOCYN9S'BZT?T3,SFQ]5*I^SZ.VA\IR>.DX6< M(H<]L(SSC*0;9%PB#;'(@(^$\"VVOA.\K.\-'J#093OAX8R1:TSK33OK$)=5 M(DKR;NIKZI=.4LN\A?Q0H]RMY'2LX4^5W\3S#\E+N@#XH$/5.4!V9T9=5OA< MN7TMW7 F9R&Z$QC N[E\CB=,9T8:T(T<(0&7L%@2^.T?8X2DM22IY\>4(WDT M&F/.X=/TVQGE0!T@RN@?-.F_^2?^3<[ ,"FP0.G,O:^@LC.\XU VF7*93U[1 M-+/Q,)_7=+72S@?"<>*0 ['XC:%$[79,%Y_Q=7SV:@R!FQ9*@('YM2[F5S0# M;$#H=RM%0"?W.%-2.IV<_?06,ZL25&.3R/QY("G$>%3E"?ZO<6FHWYQ6V MC@:__-PC5]^5ZY=@RW@_7=J VVY\W.!,8R<"^+ZR.)YV+V*@_8/%Y5]02P,$ M% @ E(L55R""L(&X$ ]R\ !@ !X;"]W;W)KO:,P&BP2@-1I=YA)?@(GC[#H'20R/L_NPV =*;$D= M4VR%3(3[.,"AD<2V=UU_>JK(E\]V.:SVVC=JL=M5;O7 M9YNVW7U[?NZ6&[TMW,CN=(TK*]MLBQ9?F_6YVS6Z*'G1MCJ?C,>7Y]O"U&=O M7O%O'YHWKVS75J;6'QKENNVV:/;?Z>P^P^L.W19%$Z_M=4_3=EN M7I]=GZE2KXJN:C_:A[]KK\^<]EO:RO'_ZD'NG5V=J67G6KOUBR'!UM3RMWCT M=D@67(]/+)CX!1.66PYB*;\OVN+-J\8^J(;NQF[T@57EU1#.U.24N[;!58-U M[9N/[_[Q[N=?WZF/[][^\K>?WW]Z_\O/K\Y;;$R7SY=^D^]DD\F)32[53[9N M-TZ]JTM=#M>?0Z HU21(]=WDV0U_[.J1FHYS-1E/IL_L-XU:3GF_Z2DM];VN M.ZU6C=VJMY"U033 TNU&O64;ZT;]ZW;A^/=_'S. [#\[OC]ESK=N5RSUZS.D MAM/-O3Y[\]>_7%R.7SXC_2Q*/WMN]R_UT?.;3$;JR#[J/27&TC9E42^U6.06 MW[NZ-?5:W;5%719-Z;*WMC0KLRPXE3[9G5FJR_&E^OJO?[F>3,8O;^_>TG?^ M=O'RFURU&PU#;W=%O4?N+NVZ-O^K'3Z*(QXVNE:F53!X[5:Z<6I)7D'XVY4J MU Y^,DZ7:FUMJ6R3D4D-!&PMKBZ#RPR$Q[\MB8L3BY9@@O+=\?G8TIE2-R(T M3M./.[EHU4(K#1W;"H?@*W;2C\M-4:\1)+;AY?YLY<\>99_PX[;XS3:FW9.< MB8ZD^,752Z=VNF&D)&O:1676?+A31:.5PV>W,CC1WNOF10MP4X4;F.IK\PW. MJRI')B@[$I9]4D/OJM5-71"(99UC4Z0KX2BLQO(-MH15= TYEKI85%HU!$VT M@#R!HV$9AYU-O>R:!N+LJ@YK<+5PMN85.'T%@P&GUS -683 %>NVNTJWNLRP M65FT>J1^1]X]G\6UOJ*H^72-QU8YT+1Y&!8J"(A8(3)5MA60.' M0#L2)3/1UKB;60A$,K4UB%78E R56F]PX4LL:%QJ M+TZH)(?$=-N=K1'F+B/!0JXU$O)\A\^DEW3P%BJJ)2Q)DAL*O*JB/(G&=1NS MV[%Q=+-UHPBD;HBDCDWYH4^$[)NX1-3S01I(B$5=7(>JQ6@C\E0$?\6"--]+G \PD--M02D^4C]XG//:Y\-TZS@R M@>L9X3P6MGN ?E%5>\H*[&! .DK5(<( G7K9\0&"WET#* 5$H:Q@#PT_>; ^ MJ#1%ZM< ZE$"B$<9G3DN0KB30]&0SP ^FE:AQHE=&[#4YEC69.1*V_7;PB\/ MB$"P+\L8OM@Z=2M;7029VYCNZJD3(#=%SC2 XH$"[YQM!" .B1' MU2_-Z;XL;KY)-J"R,KPY.>;)SJ3Z\<(2Q076U,_<1\4+/O0:"Z'^O3/ .\@! M4U%I1_S]UI5K"D26G"4N]=(P 1>H).FA*)"[V_GP\E:B8+*H70AQ,FF?/7!\ M:[,MX>JN.B4?Q31I[TLPG>S+.@Y):X:O%N1A!%?)4>5+PTC=GK*2 90$4L&A MQ\NBA(2&'ASQ"M-.H:ESJJ M02D2,!;Z:#UAWT8S[1726)#!".6@=\]B *%#(*,/:!J=ZD,CW!P*9T"WUB2: M;(?68D#D)D_*FKI MGS0$YR/U3RH0QPLS15IY+P9;94))2*0H&S.+ +Y$,AHM?O#A%F\D@T"[IM,( M];O!7Y8Y3*J7R@)\$G1-&1<JHU] M@%I-3@&PU$F0 2]JV_98[SJ$5K)C0()J'[!DKTH+(ML& 4)>.6#>WN(>Y[L- M6-IU#9F,P+K?DI2D,R/(G$@0 H(09C&9V*^%C )V#:4S@4)5V64P-B='3/X3 MD2XL,7JW.&AI!*^Y))U"HKX-&&54@@_2^$O0?-A>!27DW*=Z!M6.[Y5%>D>. M[PEO4G6I(>$LHNU\L)^ZW'NIN"],14PC/R$73!'MCXZ&0[SV/9IGW-*9^"Z$ MF1@19PEE/D]58<4)5:KRW0HQ4-20ZF$*$#D,3X8TJ9D=LCG4SX8W*4 MQZO?M"\HV.4'3-6NN$Q7_4ZZ[R7GS8&/)+R,=U9X0<>5&QMXZBNBRB M(EGM@=LT4_=D+'$!686*ES#QF&;^H-)SNT/:',T@5DE-W!/.;&#H&#L,5' < M$8EH="Y6;%*.OQY(N1T#GA>/D,J@2:%=%OM$&.+77;NA+B%D/DHMPUO&3'M0 M.(_&%CX@<$RUYSZHX7$";+DRCQQ<*2WV*1L%[)V*DD[$3A:M--=YJ:*A9CA; ME<."5%I(S!E0_D8T\SB9D1E$ B7BE.(($0X#";U:T?@B\\T$-XI$Z+BAW2(5 M]P)"_B(YKS18TV@*JH5N'S27J:4V.Y8E)2RQ[G&#]W3\029%*>'B7&>4]WM= M-*,OZN<2Y,F>'XJH/S\44?^_H4CVGQ^*J#@42<.A<]K%ZOZBM2\8V$R]Z]IL MB]; \KHMCND:/F/=D)EI>R[%)TC@0B\+TA@"+8 !(.J(V3:I 41F T,'U3DD MKXP]F5U"6W=H<+:!"R3B@&T.M5OKFB .J8(&L.(9GTPSFG9E*V.SB-I4AL( MYF1*Q'R(^O=XXT=&W6XP8['KT%X51. 0!PZA7Q4-]1)T#[@HCEVZ418'OX/! MD[A3@A%)O^R$?4E!XK0[& *19+ZGIVF[ MG'#=T$'[ A30A:D:=[EDWX/ #16@/U9MDQDWSP;U(T(GBP9*KX<(6 (?B'K5 M^D$E8G'*[S%"."I4%8G!8[_I^/>"(]%X]E#Q#2:&H M1!GWU13]H-T'XUCL1=8EG*WV61(R]-R/=!2ZT9<+\6%DTZPO]]S=ENG//25; MN]R\Z':>DGWQIM1"A(W_.X,-(B..!! MN5!I3Z_9>WX>RI.7)'IVND;E-?ID,=!1FG#4 >5B>,TDJZ!R93YSIR@UH1_G M$S>#,1P#)"4&S!$;"QA,GDK3AE^;D1[E"D8#+R?VQGC5&.(^N>*:[ID.UJ!V M.NHZ$IV^\3%*ZK=9QQ(H)+WU-N_YUZGVH<"])0X*"$.,AKN$0U_&P\^QQ^$<'I3[GD5CS_E MB$ _>-PQK$M^2L D[5H1YHR=+8L]VGJ(E!E^UKK=82 #JE20T;6H M3(U15(]](T,&SX?^\!D=)7O*?)/T?8H^!QD[:,,SWY^XT(\R5:!6Q; '>J\= MQ6C/P$3QOHGVSS/[J9QD9@07R7""@4&'R,=%><4MOE[(A/[$<$(F2 K99:%= MJ/"^C>P62>/KC1FF5Y:*(5"YT3S9%0W4Z<=1:;FE4)(YKC?S M06)DSR;&\&F1%(7$;;%8U*$*TW-,%EK.!)5'.#GUN;8/]4CY9^FX_YX P?7( M28A-G!\B]P8B=7H.6<<<3<;+<%#O$Z&]\MDPOA*4>9.&^.O9EA^?0F3'>8=L MDP=.%!]UL69N)<]3ML5GS;.[[:YG8+V@C5X#)6@_CJ_0S-$059SB@9V?7>6Q M>E;@47UKR<]^A8#&H:[YD9Y\FAKL3]( M 4'?P;$<6M)YTZBA$S1C%!@"!]<:5(V-+ORDJ_&\"WW\6M(IELZGS!5>Z:C. M9N$1%H_2@HU6?C9U,$A./ ,&8]QG<5!?A@SSZ8TP^3@*\WU+R.##@I2ET);, MBTT;1L0+.3H"=!\1@=T45!BY<7X_B.PP2?27<_4DT234.46%P_*6A61VLE.: MK\/I*6>KQQ:*>IG9_&'.8EDLAJ6?B0;R+[CC]XS#FX@E@BWA!)L^B6+1G#[8 MJ7\IXGD&'1[<>*[3/Q5+R8IL#:_Q?#D\/NQ-)<_AO 7]LU7@19)8Z3KZ"DYS M(?M??335J,]'Q@3U." M\=@D.L(,*RJNRET+C7YG1I[]Y)2WZS=YJI]-)YR)81(-#T;JRV!I:8:/ MO%# <\LP11S\D-%;E_3J MY43%3]FM;J!X@X+=48_QE;K.9Y-Y?G4SQ^>;_/KB)K\93_#Y A=N;O+I9$Q? M;O+Q^#*_O)G+!GNT76A!K_+YY55^?3U5\_SF>I:/9W-U<95?3,;YQ72F+B;Y MY=4XO[Z:9O]C6GFH#+7N.NJ*B#/"M3_UY&.6S^=3W'VEIMCB(I_-;]1E?C.; MY5>7-SAK>CW);Z;S["MHDL]G.'P^%T%OH,$,5.LK-9M I%D^@;I?J2FDOL2M MX^F?-M?'IWV@3!3[*??)^8+(=GD)J\Y(G(M+R#:'$2]%MNEXG(^O6- Y"WI] M,SU]X!<.-=0%63"_NH 6^71^@T]CV',"HUS,Z=,-G'IY,?XS5E2?DH'5!^Y@ M;M,GKQ\#/&?)6V,J?6OLELO!CQU*3W@MV+.^D J>NO+#D2>/@P;/>8<%X=1\ M_2&\Z_7(Y0AQ!UTOKD<3K$=(9/3TPQU[N?<\>1D;6+#F5\ZYKM:MO)<=?XUO MM=_*R]S][?)*_$]^-%WI%9:.1U?S,QD@AB^ +GZU>V%; ]_)$:I&[H!UU?6 MMN$+'1#?]7_S?U!+ P04 " "4BQ57SP.)!T$$ #8"0 & 'AL+W=O MLJ2SY)!E"__JN9&,@/[B9>P%IO?OMMZO=E29;I7^:'-'"5EMVO2' MF.JI$25]62A?,TE:ONZ;4R#)O5(AN$L?#;L&X#&<3+WO0 MLXFJK. 2'S28JBB8WEVA4-MIV OW@D>^SJT3=&>3DJUQ@?9'^:!IUVU1,EZ@ M-%Q)T+B:AO/>Y=7 Z7N%OSENS=$:7"1+I7ZZS6TV#6-'" 6FUB$P^MO@-0KA M@(C&OPUFV+ITAL?K/?J?/G:*9M2//\H99-IMH MM07MM G-+7RHWIK(<>D.96$U?>5D9V?7W^^?'N?73S!?++X\+6!^?P-WM_.K MV[O;I]LOBTG7DA.GVDT;P*L:,'D'< C?E+2Y@2\RP^S4ODOD6H;)GN%5IJ* >;&H#4PEQG<<;;D@EN.YJV(:\#! MVX"N;2Y-R5*4.F8#N0RGJ:Z+US#1)=:$SP7VPI$#9, M5&3R@RI8>S2[*WE*'DNV*UP:+.K"AZ@J#6NU02V=/& &MC1@*&_4JU1/-.;: MY"A]R%-TD@=R;6E\4CJ@5-I'ZF@[C?U!E)H2"!0 %R0L2H%OJ46. (,"F:FT MC[W4RC;SCP;XB=<.?#\A[P_C+&MG3C-3Z38A8D?<#0U =_!-;02'VC@M!^HP MJL4U!;_->9I3IF!?5LP<0JUKKO.J"!FY305M^(H3M#.IM*ZM:XNGUY44M+#B MT.)']=P>07.R[EN*=$]D0)%G5.DKK8K3TSH)ZG5#'#$_\AF\3_](JP,+NG6S M2OC#2U]F@ [H&)(F(_K)>$.BP(U)-RN3X&4&_W#*GX9)% ][M$E& M47\\B"X&P-X?)6,L$D M-0KS9_.5R>9TS9.(HNAU/D&_D[PUP+M' MMRW5P]J_*5P!4WO6%V\K;9\M\_JV/JC7;YYO3*]=XPMS;;ZPJ M_=V]5):*SR]S>GJA=@KT?:6HOYN-<] ^YF:_ 5!+ P04 " "4BQ57+U?- M;\D" #;!0 &0 'AL+W=O)@[YC+U=IY M1SB;M,4*K]%]:Z\,K<*!I9(-*BNU H/+:7 :GYPE/KX+N)6XM8]L\)DLM/[M M%Y^K:1!Y05ACZ3Q#0;\[?(=U[8E(QI\=9S =8;F#GO50_@PT@PNMW-K">U5A]3\^)!F#%K[7<7& 3PRYB8Y//)>;ND/EM+F'?A MHWFQI>?HT,BBMO 28I9SSL8BZNTQ9W%Z//I.G4D'0FOTBO19X''&QE$.69ZR M1.2C#U))>L05K+2N:)OQL6 \/@;!(I&S/!V//AI-P ?5"1."=M,44I8179(F MHX>*[V[!PFO.DCAA<3*&-_!:L)@+)O(,WCP$,U T_;S><9R3K(QL0I&"*!O# M4Y4-'S5<@V;5C15+%[E1KN^]P3M,KM.^81_"^[%W49B55!9J7!(T.CI. S#] M*.D73K==^RZTHV'0F6N:OFA\ .TOM7;[A3]@F.>S?U!+ P04 " "4BQ57 M2T'O&*A%D0**K*DVS5YR6MF.FK!)>[,E*Z9 MQ:F>=\U"Y' M_F;A5LQ+2PO=T=F"S?F$V^^+&XVS[A:E$#671B@)FL_._7%TJ#)E^+<#\DA7O'<$@+#WR._Y%5%0.C&SQ;3WYHDQ=WQ!OV3BQUC MF3+#+U7U0Q2V//A,JQ5HDD8T&KA0G38Z)R0=RL1J MW!6H9T>3NV^7?Q]?C"3\=V7;]=G78OH)-/-6Z2+!BD^@-2' M*R5M:>"C+'CQNWX7O=JZ%F]P4NVH28.+SD4:LDT M/[[ (RS@AJV161;&6C,YYV[\SWAJK$::_+LO^ 8[W8]-I7-B%BSGYS[6AN'Z MD?NC=V^B?GCZBN?IUO/T-?0_.J37D7H=. 0&$ZORAV.B>.'EJL:R-\Q5#G^B M,0=L 5B'F".16\RA(7D0$FS)(5?2J$H4K-G!'^74@)H!-A#M@ P(TU:_^(5B MS"!DA6W!G'AWI>8/[X+(2[DF,<]8+)-9'$U/%=$&I*(3&)JBTH90OF+8"G=UUL$,6T3]"@4>T!#^7*,9UM?:H=0(E M@OK;,1&*VB">I'KD&K>4Y,=KSC3@,0M5=/8Y;ZCT'!G0*AYE&\+6^>?8' EA MO$+/?XNGZ>/ ZT6EUIR;#GQIB, ^&P"6"C=$!@C("MM/#5;P]35Q8P+ MQ'%.L:(0)!R F&WPMOG '+F+5.98,AIUM&" 6""5Q1NJ%!A.\<*>><5BU@L& MR.88F1/AGY+?%!6Y;]FTXL\E9YI+4-@UTJERD6/,>%5CP!0S7I*O'$.Z#O_7#7)*Z.D3UXZ\-G8@C@W<7A$Q,:[EFUY!3W_Q&\U@-R M\4]@2/Q:R6,Z4E1PQ(A.X2N32/$U1$';.Q(LPBREMM!)XD8L/L5I._*K=-U:.LC@8](?O'5R6P%%_&&38/]XWYOYMN2! ^B09./NX!-J?4=3C4'L#8>)B'WQ0"[!ZL)I+] MVO23?6TKQU9J=JFRVX2(D$C=[?UI8,6,ZV9ID&$/Z^R[^+H[+Y6:Z[E[CQDT MA%79/%JVJ]LGW[AYZ3R+-^_%*Z;G DNDXC-4#3N#G@^Z>8,U$ZL6[MTS519? M46Y8XK.5:Q+ _9E2=C,A ]N'\.@_4$L#!!0 ( )2+%5?.A^NCY@( *4& M 9 >&PO=V]R:W-H965T MNB9-2V&LK=12IC$-"8& AVD/3G)M+!P[V$X+_WYG)PU%@^YE+XE]ON_S=[[X MRV2K](,I$"T\E4*::5A86YU&D%=8%H-JG8&F_0 MWE97FF91QY+S$J7A2H+&U32<#TX7(Y?O$^XX;LW>&%PEJ5(/;G*13\/8"4*! MF74,C%X;/$,A'!')>&PYPVY+!]P?[]B_^=JIEI09/%/BGN>VF(8G(>2X8K6P MUVK['=MZCAQ?IH3Q3]@VN<-1"%EMK"I;,"DHN6S>[*D]ASW 2?P.(&D!B=?= M;.15+IEELXE66] NF]C4&ZMIE1/.SK[-+Z[A;O[S]GP26>)S MT2AKL8L&F[R#'<.EDK8P<"YSS%_C(]+1B4EV8A;)0<(?M>S#,.Y!$B?# WS# MKKBAYQN^5QSC&NZ8J!&6W&1"F5JC@5_SU%A-W\/OMVIN*$=O4[H[,6>FV!5 M:?7$Z:Y@#D1'7!G3^IG+]8XTQ8S5!AVYV\\42MO/%G492&:I.^T"97!)3:KI M_I/I!*\*",YVI//2"8"78H,EIC:XZ5@A59IZ0+G&2Q9*KIN%G!+A(R2#7C). M>N.C\:M)\-?Y_-=-D][QE[AW/#I^-0GN$=#8E_/;:X<[%X^NC=- !OI COU8 M*XM^DR!C(JL%&ULK5;=<]HX$'_W7['C=OKD@K\Q"3 #:3)-9Y)F M(.D]W-R#L 76Q;9<20[)?W\K&1QZ =K>W -HM=K][;>LT8:+1YE3JN"Y+"HY MMG.EZK-^7Z8Y+8GL\9I6>++BHB0*MV+=E[6@)#-*9='W73?NEX15]F1D>'=B M,N*-*EA%[P3(IBR)>)G1@F_&MF?O&'.VSI5F]">CFJSI@JJ'^D[@KM^A9*RD ME62\ D%78WOJG6)7M"B MT$#HQO\^(-E*A_;B0T979&F4'.^^4RW\40: M+^6%-/^P:64#UX:TD8J76V7TH&15NY+G;1[V%))C"OY6P3=^MX:,EY^((I.1 MX!L06AK1-&%"-=KH'*MT419*X"E#/36YOKWX>G,)=Y=S0.+FZRTL/D_GEZ.^ M0G MTD^W0+,6R#\"%,,-KU0NX;+*:/:C?A^=ZCSS=Y[-_). 7YJJ!X'K@._Z MP0F\H(LT,'C!$;Q+(BI6K27<40&+G @*?TZ74@ELC+\.Q=O"A8?A]+"%)R1->5,I3*-%J@PR)M."RP93*>CWA@F*XZHD\!5<31)?XOGO^MA#FP#L'C=E(-*AMJ0W_F!9$2BBIRGD&K#+\E!1I M4Q ]TQ8:HCNT&M&D1NO!+5YFK$+WJ>$B4>(%8 Z!21-7HV@&RQ<,X8EEJ _5 MJPZRM:&-F6@4(T]4X 4%55,N$0Z-MHB60<1P&R45^JYALD;H1>NC:<:S'GQZ M9:E<4 IE.R@Z6LF>=UNJYP:PZVG7]48$"=_!_,J:FANL>'$,GT@=_J_)J[VJ MYB33ITJP5 >WBV'5I4GQ]!$UB,(,8,)2CC=PAE0&-1&*I:PFN@- TA0C4]@@ MIAF:ZN>H>YGJ0=<'6AO;2!=>5\CHHC'!0>"5UH,9D=A";<,5IG!'BFOM%[>1 MNZS_M)#PMI!8MM.V=".1[&^\H5$&/X[:DH6R[0R08H=)%.9D:9 4QR0]4:,Q M7SQ(G,*W\NA4'#MAF,!5"[IMFA^[Q?J=;N&-.!K%ALANHG2&),92X)=:GN%5 ML->L_[*W.-:WEO%$>P$=9>W-XWOP'"\:..X@1CKR!DX<:,IWO-!U@L1#.DQ" M9^!&UO5AGQW]&6;IV;'SCX+/C1--^H,(3V)K?D [ M0564#P(4]G _<*)$0R'.(++N^5ZW(E(4)"QTZ;F2BB-W8\5J#X3!V @SST,>WO_<^*JE8FU>@OBKP M6]8^E3IN]]"H3!0 X H M !D !X;"]W;W)K&UL?5;;CMLV$'W75Q!*$"2H M:NOBB[(7 ]Y+T!1-NMAL6A1%'VB9MHE(I$)2]FZ_OF38<6E"F=G_NS&S,YTXTJIQ(UAMJDJ;AXN1*EWYV$2[@]NY7KCZ& X M.ZOY6GP1[FM]8[ ;]E:6LA+*2JV8$:OS<)Z<7(Q(W@O\(<7.'JT9>;+0^AMM M/B[/PY@ B5(4CBQP/+;B4I0E&0*,[YW-L+^2%(_7>^L?O._P9<&MN-3EGW+I M-N=A'K*E6/&F=+=Z]XOH_!F3O4*7UO^S72N;3D-6--;IJE,&@DJJ]LGONS@< M*>3Q,PIIIY!ZW.U%'N45=WQV9O2.&9*&-5IX5[TVP$E%I'QQ!F\E]-SLZOKB M[FSH8(GVPZ+3NFBUTF>T)NR35FYCV;5:BN7_]8= T,-(]S NTA<-_MJH O$HF\>D+2$<]TM%+UI\EX&6M?,!(,?A=L4_<%!N6CBAV MR21B;B/8I:YJKAZ84$X8L0RDP!CC:LENA77<87,)$>G8?&V$P'N' M%'0;+UZ2M+%,\0IR.#%"*J]\P=6WKTJ2^N?!?,"X95]TB0N,X6HM3 1S9(ID M43$E+C*\#-K#MY#F'9*5T15SJ'-&$/%L/7CS*D_3^/0Q-'^^@$WPW8'>0. L%> ";D6BI>E@^L-GHK/1C8Y>@U6UUNI5JSHKV^U%RQ M0E>5=#X^>L5>(UM9$K,# 5F;O"\0P-G=3I0KQ-;3X$UUO/Q P=LC]W[0.CCW ME?CQ%GX0:H'4W#@I;+ /]Y.7+1[8"4AYQ\2]@QAY3G+H>8VA4"W!'CE]Y!E! M2*:G%BK2.M(X1(V2E<2[Z"$% NF.)!&2JHTIO/^LMZ):P(FN^D?XB\;XQ3$" M_#[*XVXYC2:C=IF.NR.D^V0R94F615F6>:8?^Q:Q0ZY%P/B]D:CAH+%T-WVT M''[>L16R5.\(WPIIH0K)2W"^%5@[VX8'_5=6386NC^Y"C4 6PLL8?+^8X?C. MD-]*HW L;MC Q60P9J,!P X(\:-L[-.520N#!5K5DMA 5@;/Q)M;*Q!,JJN% M[LKTM@_];Q15>G=',?:[A>"&29^'%F0XKW%CJ.)NB=>?6#88QRP?I&-$=# = ML[DE+]"21=^2O>L22/LDF[I X:3:)P?N.[R$^E-4J56ZY]]:GEZWHK[HFPH MEX,&[4NC#/Y%_F+0G?=%L2Q\\&M MH-2ATL/%/C[ F"=1GDX#G\-CK..$UF.6OH_B- _NM$-&(4 3Q&4\81\5X0,D MY-\C[(2G2T+ +P6FCI9Q32T8^>6PK_D#7Y2B"Q NR0 CC:?1*!FQ?!KE68ZX M3:+1OC)ZFBP&BZI!2\8\1-V/2Y!0HPG>2X041\%K]AXH/7/IA)Y/?>B&1U-' M)&PO=V]R:W-H965TS#)0:PF-K.=IOWO=W9"QBJ*)B%BG^\^ M_M[9YW&C]),I$"V\5*4TDZ"P=GL5AB8KL.)FH+8H:66M=,4M3?4F-%N-//=! M51FR*!J%%1]J#3L:IM*20^:#!U57'].L-2-9,@#G:&A=@4UAG"=+SE M&URB?=P^:)J%/247%4HCE 2-ZTDPC:]F0^?O';X+;,S>&%PF*Z6>W.1K/@DB M)PA+S*PCJ_"%R6TR"BP!R M7/.ZM O5?,$NGS/'RU1I_#\TK6]R%D!6&ZNJ+I@45$*V7_[2U6$OX")Z)X!U M E8JP:T\R::&_A4?32)$](=RM)J6A449]/Y].Y^ =>/RV_W M\]O%%?+ 231 M*;"()4=X29]AXGG).[R%,$\&N,SA46:H+5U4*]# S^G*6$VWXM>AI%OF\##3 M=H&K/#-V9 54<^XJ?GJA:@VT4E%QOT-CN%J*F(F:9JJ6E$'H-(&' +B$9 M03R$.(:I?0,"QB"^A/@.1^ASW)+7&<.(+D EC<6@Z5,]R[[J1K MXYO:@-?6WOS>VK\;T[9=_KJWC\Z<&PO=V]R:W-H965TWY<&C*-=;"#%2+#7U9*ET+2U.]&II6HU@X4%T- MXS#,A[60C3^;N+5;/9NHSE:RP5L-IJMKH9\NL5*;J1_YNX4[N5I;7AC.)JU8 MX3W:'^VMIMEPS[*0-39&J@8T+J?^171^F?)^M^%OB1MS, 96,E?J)T_^6$S] MD!W""DO+#()^'O *JXJ)R(U?6TY_;Y*!A^,=^V>GG;3,A<$K5?TC%W8]]0L? M%K@4767OU.8+;O5DS%>JRKC_L.GW1HD/96>LJK=@\J"63?\K'K=Q. 4X1N M> N(G=^](>?E)V'%;*+5!C3O)C8>.*D.3<[)AI-R;S5]E82SLYOKB_OK^\G0 M$A>O#,LM[K+'Q6_@HG$BJAZ9;4GUW6C8K$,T"U'(I2_2< M$.@H19J60:PT(G64A;(2QLBEQ 4(PY^HR[6P#'>< _C6P%_J >LY0:,^+5$ M]L X/F+966+@18.E(KN"V!?.@E6\[CFV \-TC("T;[L,SN4 -FM9KLF$)3[C M+!PQO7]7Q-'HHZ$]K637J<47PB(;OFBUK+B8//(ZA\.(B<&C+ K&4019%@;C-(8LRH-Q',+GCH*(?#;(NJNW-*UXZD7T MN6]4\Z$434F'GYA7Z!V+<0*7+QV'#1(M?5BJBHYN<^[M!/^+0G/?,_X3EGV- M)%'@W2%? VR0R!R'DS#.@S@..13*" M*")LGG'!TW6SM$0[9K3W75E1L3)I2M4U7(+'8=SKSX-L5%"<1MX-&@.R;EW) M2D)1=UOX+4OR($Q&\+MWR^U.)?H@J@Y9P9ND9T0;IG%0C$-77'V$>*/E\%(S M6 Z;MFL7K[MO/SPJ)5YTA7Y$6TDQEY6T'<^]E(@YC[$K)NW!L'A%#3QQ M0Q?X&61!GN9!6B3.QRS.@YRE/UOPKCJM6>4I+SAK8VKW(NPS6$0C^HN\&]6L M/E#@ZI/H-(AB+MP1>1..1D&<9-N4O6;I.9(\+L:$25^T[+Y5-NZ&Y6Y\(.,K MI#[ ^9_)2X-Q(,Q9(/TM7-\>'"%UJA7[J% 9P#75W^;[E?W M;Y&+_@I^WMX_9+X*O9*-(;M+@H:#4>:#[A\'_<2JUEW(G?#-;VG4/,& M^KY4RNXF;&#_0IO]!U!+ P04 " "4BQ572LI^!BH$ !."0 &0 'AL M+W=OO&#!%G@21HGS%D03X M*IH ;HW8/8"B#R-R)"Z\W&5VEZ;47]^9):TH@.WF1=ICYIMOSN6\L^[15T0! MMK4V?I%4(33G:>J+BFKT$]N0X9NU=34&WKI-ZAM'6$:E6J=YEIVD-2J3+.?Q M[,XMY[8-6AFZ<^#;ND:WNR1MNT4R39X/OJA-%>0@7[=(]2 MJIJ,5]: H_4BN9B>7QZ)?!3X0U'G#]8@GJRL?93-IW*19$*(-!5!$)#_GNB* MM!8@IO%UP$SV)D7Q&+[7ZAP9]C MP2NL]O$7NEYV-DN@:'VP]:#,#&IE^G_<#G$X4#C+7E'(!X4\\NX-19;7&' Y M=[8#)]*,)HOH:M1FF'YZ=>KWVYOX.'BKYO[>1H84<[38M"^ M[+7S5[1/X-::4'FX,265W^NGS&1/)W^F<\\4MB9XP"U<*U]HZUM'\/?%R@?'!?'/2R[WB$ MW!,ER_?OIB?9QS?X'NWY'KV%_K_I>%M[.IW (<)H<#_@ECP@>XY%85L3J 3N M9V@Y:PY"12/TG@< FA*TPI72*NR@IE#9$KJ*'*UV4NKD'&LR&D1Y_YV"&DPX M*NS&J'\'&^LV2,A%J;#&T]>63"&B(3BU:@.N-(V"%180J&ZLX]D I5JSM5YR M1:$C,E%"(*Q6)487E$%3*-3@ Q_PJ&!*!3JW4V8#6(NG'NSZ5;:\9U#E1IS( MAN)\B$2ES?MK'GX.@\!QZ0P:X@G'087>%CO9H2O]!*Y_,$(UH91A":T79#)< MB52.1(N-L1!MA8T 6<"FT3M0O?L[0N=ETU6JJ/C(^M>B)H8.<59]9IY(#'-> MF%W05$[@@7&)]8HPXBGY(UF6B$)1H=E0)+;GK?QA]@?.'$%E)= 8^*C0;%R#"$^H6^SGN>8'A?-/4J%F_&S.-LK(-9.L MT?"[(A;X-@B[VC*>5H_$(65"!HP-/3,O?<)A%.@1AX?1!4(07PI)I_A>E&-8 M48O#?2BO;-V@V;U_=Y9/3S]ZQM2JV(EQ3H)$QY5 /J@ZEK#B7N3BZUN/'UK4 M$F&N1XU#WEKVT 4.S2?NQ&+KS(H4,//T'^X6R<'9W Z?@XRX WIV/W?[T_W'PD7_ M1GX3[[\T;M%M%(=0TYI5L\GI<0*N?[W[3;!-?#%7-O#[&Y<5?_"0$P&^7UL; MGC=B8/\)M?P/4$L#!!0 ( )2+%5=&D9G6,P8 %X/ 9 >&PO=V]R M:W-H965TS;POWP\&+LHHEZYO2BKP)3$VEQY;FPY<:4G&@2G7@_%P>#S(I2JZ%V?A M[-Y>G)G*:U70O16NRG-IEY>DS>*\.^JN#AY4FGD^&%R>#.-S[M#!D2:(L\2)/Z> MZ8JT9D& \6\CL]NJ9,;-]4KZIV [;)E+1U=&?U&QS\Z[IUT14R(K[1_,XC=J M[#EB>9'1+OR*14U[-.Z*J'+>Y TS$.2JJ/_EU\8/&PRGPU<8Q@W#.."N%064 MU]++BS-K%L(R-:3Q(I@:N %.%1R4F;?XJL#G+Z[N;FZFCSF\)D3'XN8XN_Y!X#6XANO M\%V.]PK\O2KZXF#8$^/A^&"/O(/6WH,@[^ U>TV>*X^L\D[((A97@*N*E(I( MD1/7RD7:N,J2^&LR=]XB:?[>Y85:R>%N)5Q([UTI(SKOHE( M?MACPF%KPN$^Z3\>LOWB1N.^V"NR]":8B&%(^\U<3"%*@*-S$V%G4G$6W'0 M.QX.>\/A4,PR:2DS.B8KKLFJ9\FM8&71)U/9CML@B5N2QB# 8YVA_&,!%EQ,JBYQE;9_A* M0$.U0XY)$@4JUQ>/&7429:&V@;D1P1N#1H1,]O4@3\5EYE(5-X1 @97T88NV5LIB& M4=M[W-C;^3%[FSHH1%68LC1<*[FIOQ@+Z*05!B)N$D*6I37/X$2.!ZAM7VA0 MH$A9?^WUM?MP 2!40^W11G:3-[E,%?=_3^*?*DXIY.F+4Y&1YD8$,R )0X2X M.\RH]*$T19V9X\;:SAYK ]!/-+<5&S0ZK =>;R<6X(XPQHA'[#H%:I-2BZ!O MV@/5'!WX EW!+_L=Z*GKYGA3QP8WA.YS+G9U,+:\S U[=-+(_%]#G0"(WAMD MKLO78K/%G9%$TJ<(ZOENT#09+?+MU A?A&*Q-RR*;NST^$:@6WK(% M**W&"\%4>G1^$BL1X%G=G:Y7=S MO1H0'*PI"PU8'E"G +;D!8(BYVBE]S5X3L&FU83KE=BZ7K&@W=>6%24GH?08 M\P4MW;LWI^/1R0?4%>88U\S<(.E>W#KTAO0]X6UN/6*!GB:"":$ZD8=2Q9R? M?)%H;QF-[@X3K*X2*SRJ]44DK56$:2@3E [N2UZYI('57$W>BI.C^L*V];_K MTCS8>//D/-CY9>>XCQ6^?OZTI^WC<5*_F=;D](^%)=H(',8$^)X8XU<;5M ^J2_^ U!+ P04 " "4BQ57 M3(IFB#4' L$0 &0 'AL+W=O>O&.@6%PZ@2+*<.&EB&Y 5NU5[G1B6TSP4?5B1(VEOR%W>W:5E__N> M68H4Y2B^0/N0F!^S\W%FYLQ09QOKOOLU*O+A>#0Z'19*F][%67QVZR[.;!5R;?C6D:^*0KFG M2\[MYKQWW&L>W.G5.LB#X<59J58\Y_"UO'6X&[9:,EVP\=H:UWN9EEY[V1.,0YIT$T*/QYX"GGN2B"&W]L=?9:DW*P M>]UHOXZQ(Y:%\CRU^3>=A?5Y[WV/,EZJ*@]W=O-WWL83'4QM[N/_M*EEW[SK M45KY8(OM87A0:%/_58];'#H'WH]^&HI>?5% 79\YNR(DTM,E% M##6>AG/:2%+FP>&MQKEP,?M\?W4WNZ'KV>?)Y^EL\AO-[R?W5S=7G^_G='1K MGHXPO>OFF]??.2]HM+Y;4GNZ1;T6V" MDIH^Y.3_H(;NUTQ36Y3*/%%JT7 ^1*'I[8PF["PPJ=)0X4@_F9ET0$>__O)^ M/!Y]; 3B[?''5WWZQGDFD-YP4'E>N=53G_:.?+N9[:05;=8VSY_(;@QG8(:% MUYD&.72M0\QDM7]I\HD?0"0E:"'@D2NMBR'\B2H8I2.T2N0"*(!3 3$W4=2A M;]WJ-X\W_/Q)Y9LGB77-0UNY)J!!1!((9F M."%8HK0R%7"C36"G"UIJHTRJ M59YXP,\2200[=)*@XA-4/+<5'T$ "43VTYNDEUN M'/]1:4%\\40M((,]AEAPKM&%'EK@N:C*M$]SZX4@".DBE4$+/!%@"O6=G]NC MLF8?CE8QUGR.?0)I&] $#JKL=PR^N@+$1K])H2VUD>-V&4NW4 9[@\CUHUD# M$+V7EI<^4;14VC6F:KM-_Y3 U&:^X\2NH3[ M$$:#."DXHX0@!S0#V![TLUJQ%\4-2)[_/&EP@&2SDG@A_'MEZM4EUGMX5D3) M00V[3$+>,1+0;;(.QTB1'[_[Z&EB3 4==PPN#01KLNW0\>CU/UNXGEBY+=%T M"S6)A7K48=+VZ#XC F4L2;'IL$VZ+<>(]H84FX3$-*(DFE1JM++LI MW:T2LTH:S8@3V/%C&3/7.KZL4$[1>RD(U*X55)Y91=&9G4KRO*I+"GB!?.0" M?@'ZHK0&+Q(I $-2-@XL@[QN8N_O-#1.23 U#SB$X?@!*V7=63&7:\W+SJF, M4QT953K&[<$Z_?+IID$T:7JJD8>=!;9ML8I1E'(#!EK=IK'4(CUQ$U@L$>4] M\"4M',LN-B;X:$!?GL/@8>PIJENM$$LL/&L0#I0JRG41Z8@? V3W:**M+W&^ M'K?3&/'5(WHF9O/+H,D.W,J,L*KRNWJZ5KSF06HCN! ;R;R>LX83H[ MTH"N980$?%/%DL#?_B%&2%I+DGI^3#F21Z,QYAP^37[<4?;4 :*,_D+C_ON_ MXM_X](4E^&V[!+]]<7N] RN8@.*;>5_!J0'*!*U/3&9?\7;X]/7QQ"X;I.-=&'#KMOM-4V1 M6.3P-RME2D?WF'HIG8Q/7WW 5JTD[[&-94/>DQ3J/JCR"&:3K5DLW54L?84% M,M-+S5*P 3M^6>_&5#!VF:P/5M.8?IFN9W3-:7$/P_:Y,CB9RNJC92N/8^/0 M;#FTZPX.%<*P\P6+M6P5O]/1' )__3';/FU_"IC47\ [\?IWA!OE5M)<.2]Q M=#1XAYR[^MN\O@FVC-_#"QOP=1TOUQBZ[$0 [Y<6\W-[(P;:'T@N_@M02P,$ M% @ E(L55[U(O=V( P $0@ !D !X;"]W;W)K&ULK5;;;N,V$'WW5PRTP:(%B.A^R]H&$C=MTR+9P,EN'XH^T-98$E82 MM205Q_WZ#B5;30#';1=]L8;DS)DSA^30TZV07U2!J.&YKAHULPJMVPO;5NL" M:Z[.18L-K6R$K+FFHBFV/^.^GM#@K46E^E_8[GT= M"]:=TJ+>!Q.#NFR&+W_>Z_!O KQ]@-?S'A+U+'_@FL^G4FQ!&F]",T9?:A]- MY,K&;,J#EK1:4IR>+Z\_7]]]NH;E]>+C3WH]V-:!Y;Z!%<"L:72BX;C+,7L?;Q&RDYQWH77DG 7_IFG/P'0:>X_DG\/RQ M7+_'\]\J%Y^PZ1 V4M2P(*Z2C@5)K@M8]&*CA-\O5ZJ?_^.8 -^):Y$W97]E M:M2%R"Z.R7"2Z'$9_BO[R?_#?O)82$2HAX.)YF#"0_G\:F)BCI"&+TY#LE"5NRE+'(]NEA31EON>80 G=)8 M*XA9&,4L27P(69H$S E"<&/F>@YS_0!%6]Y0FZR-6@$+0Y^\8_ )PF5!F$+$TB!@<912+C_Q6.J'DS.JA(4!)0_# M@6A*%01.1(/ (TH!\ZC<,_")=42NCO_-GHDBAL:*Z5-C5SG6U2$8[?=?M&FJ='D_6.DZ#1WC1XZ]C@[OG>7 M0YO_VWUX+&^YS,M&084;"G7.X] ".3Q PT"+MF_Z*Z&IJ_5F06\V2N- ZQLA M]&%@$HS_ N9_ 5!+ P04 " "4BQ57VA=5*8," "B!0 &0 'AL+W=O M^[[OO7@:!*FMHB+H06^#F9BUD0[0QY2906PFDI:(-<$4% M1Q+64R^/+F>)C7J$5! Q*;1F(>3W"'!BS1$;& MSSVGUZ>TP./S@?VCJ]W4LB(*YH)]IY6NI][80Q6L2Y&G_'8X X_ % -X#L-/=)7(JKX@FV42*'9(V MVK#9@RO5H8TXRFU3"BW-+34XG%;A;Y;'&S6"ZN M"_1V258,U+M)H$TVBPG*/?.L8\8O,*?H5G!=*W3-*ZC^Q =&92\5'Z3.\%G" MSRV_0''H(QSB^ Q?W)<>.[[XI=*-/&G^"I0K!5JAG%?HAI(595134*= M&.GLO/2SY*>E_T?&@6D.N.9<00G-"B2*(W]@.V7;A0?SO_"O;?#[%/MA&AD# MC_QXG/C#)'R./*)'8S\-AWX\3%#JAV'DCW ZN#,KZU]:C$U8ZH_"D34B0XO] M<92@4QT(CN:F ;EQVT&96ENNNQ'JO?T"RKNY>P[OMMV%GY,T@( 4& 9 >&PO=V]R:W-H965T#D\)Q(YV6AS8U>(#NZ:6MEIL'*N/0E#6ZZP$?9(MZ@HLM"F$8Z. M9AG:UJ"HNJ*F#GD4Y6$CI IFD\YW:683O7:U5'AIP*Z;1IC[,ZSU9AK$P8/C M2BY7SCO"V:052_R*[EM[:>@4#BB5;%!9J1487$R#T_CD+/7Y7<)WB1O[Q :O M9*[UC3]\J*9!Y EAC:7S"((^MWB.=>V!B,:?+68PM/2%3^T']+>==M(R%Q;/ M=?U#5FXU#8H *ER(=>VN].8];O5D'J_4M>U^8=/G9GD Y=HZW6R+B4$C5?\5 M=]O_X4E!$3U3P+<%O./=-^I87@@G9A.C-V!\-J%YHY/:51,YJ?RE?'6&HI+J MW.S#Y^]O/E]_N?H)!]=B7J,]G(2.<'TT++<89ST&?P8CAT]:N96%-ZK"ZM_Z MD/@,I/@#J3.^%_#C6AU!$C'@$4_VX"6#R*3#2YX3J6Y1.6WNX4+:LM9V;1!^ MGKD,C16WA)<2LX)R-DZBWQYS%V?'H!\TP-836 MZ"51LL#CG(VC O(B8VE2C-Y*)>FY5[#4NJ(PX^.$\?@8$A8E!2NR\>B=T53X MR#IE24+1+(.,Y0279NGH\4ELA5LXX"R-4Q:G8SB$@X3%/&%)D#;S!L_ME? M4$L#!!0 ( )2+%5&PO=V]R:W-H965T]C+L13J2=Q^_([\C.=A*]: +Q@P\5:700[\P M9GT6AGI1L(KJ4[EF D>64E748%.M0KU6C.8NJ"I#$D7=L*)<^*.!Z[M5HX'< MF)(+=JM ;ZJ*JN<)*^5VZ,?^2\<=7Q7&=H2CP9JNV)29K^M;A:VP1OO'.XYV^H=&VPF7.^8RIYI=R/(;STTQ]#,?VOK,G'$5S( M4KLO;!O?R(?%1AM9-<'(H.*B_M.G9AW^20!I HCC74_D6'ZDAHX&2FY!66]$ MLX9+U44C.2[LIDR-PE&.<68TG=U<_'8R&4\O/\+%S=7MY?5T//M\A :GL<[AHH&-.(4D M"H!$)#F E[0Y)PXO>2OG@BIV,L&]S.&6/J/$#(R5HF+%G/W[>*Z-0KW\L2_Y M&CO=CVUKZ$ROZ8(-?2P2S=0C\T -:XTAZ0=R+T>@&J?MW2$#2# T2!7A >E,\>+A8 M!;!B IF60 5RR[&DN16;/9L@3I,@2CL0)W$0D1ZDW6Z0]6/7G_12;R8-!NJ_ M$\%[B+,H(''76D@L[5L>G;@?Q$G?]G41+HO@@" [K2 [!P4Y*UBSNI@;&'MD MO*Z]KL]<;IYQ0TNW9T8"W@RX)+Y?FYB-]S_(QGLCWOOF[ACL'3^BA%8,?L%#RP >_ P^4:[@GI8; M9F7Y5P2O86 I_AL8ZWXMQ-S^$+%!J]PB(.F)!+45I9:M9\F MI'8CY]AL+,_-@ #8"/H1L05SFA&(>U@<:=U,4^^^GN4H(T&OVS]V<%D"1]U^ MD&%9'-=^Q,/[>,EX2VAW)CA*DJ"7]E^=]]'?76Y($#Z)>\Z?= !K+G6%B]&] MO342[ERW%5,K]ZC06(L;8>J;M^UMWRWC^KI^=:\?/5=4K3@>625;8FATVD/5 MJOHA43>,7+O+>RX-/@6<6>#;BRGK@.-+*&UL MQ55=;],P%'WOK[@*"($4EC3M6AAMI';=Q!"3IHV-!\2#D]PVUA([V$Z[_7NN MG31;15?Q@,1+XOMU?,Z-?3/92'6O$H*!D77CQQOBL53V1M"B[P2H&NRY*IQSD6>F7SJ?? @PR6K"W,M-Y^QU7-L\5)9:/>$39L;>I#6VLBR+28&)1?- MFSVT??B;@J@MB!SO9B/'IWD\ 0L T':0LR;T"B%T!&<"F%R36700\$LMCF 0^A"%T> WJ!3.7!X@Y=4,J[@CA4UPH+KM)"Z5JCAQRS1 M1M'!^+E/?;AKYXX^A/QZ.=XQ]!SQX M-H-*5"LW:36XQC?CJ/-VPWS6S+"G].9/<,G4BIH*!2ZI-#P:'WN@FNG:&$96 M;J(ETM!\=,N&ULM5;?C]LV#'[/ M7R&XP] !ZEG^[61)@+MKAEZ!NP;)=7L8]J#82F)4ECQ);J[__2C9\6Z $Q3# M]N"8I,B/_&A)S/PDU1=]9,R@EYH+O?".QC0SW]?%D=54W\B&"5C92U53 ZHZ M^+I1C)8NJ.9^2$CJU[02WG+N;&NUG,O6\$JPM4*ZK6NJOMTQ+D\++_#.ADUU M.!IK\)?SAA[8EIG/S5J!Y@\H954SH2LID&+[A7<;S.YBZ^\@+ /"%W=72)7Y7MJZ'*NY DIZPUH5G!473045PG[4;9&P6H%<6;Y\'3_ MZ7&%UJL- N'QTQ/:?KC=K-#;9[KC3/\T]PUDL;Y^T2/>=8CA!<04/4IACAJM M1,G*?\;[4-U08G@N\2Z\"OBQ%3J&/K]=J>-@AWRQQC?#BX>A[.G9J8;6K"%!\=",_65>4-UUF-D.(^@/&_KC7$ (,1P9W3"WZ?DWC&2K M4"4*63/4 &\0 1I1_]$-2HH+UI.#0""MI<C;7C:L'C[;C&8O+_LY@\ MN[SC7=M>ZN?$56*K0(,T>8)[LB_@!Q3@(,DPR5*0DR##:62E$ @!SG M,_ N.Y\X!2 K9PSCHH&-,$L2G-6;(+AG\3R+U!+ P04 " "4BQ57UZ:"-(8" M "H!0 &0 'AL+W=OL0($V:M@)"B ]N?W:M]-=\;>N1R1X*%0VLV"G&@["4.7YE@(=VJVJ'EG;6PAB%.["=W6HL@J M4*'".(I&82&D#I)IM79MDZDI24F-UQ9<613"_IJC,KM9T OV"S=RDY-?")/I M5FSP%NGS]MIR%K8LF2Q0.VDT6%S/@O/>9#[P]57!%XD[]R@&[V1ES)U//F:S M(/*"4&%*GD'PYQXO4"E/Q#)^-IQ!>Z0'/H[W[.\K[^QE)1Q>&/559I3/@G$ M&:Y%J>C&[#Y@XV?H^5*C7/4+NZ8V"B M'9FB ;."0NKZ*QZ:_^%_ '$#B"O= M]4&5RH4@D4RMV8'UUYD&A)3 M^HTP;>#S&AX_ 1_!E=&4.[C4&6;_XD.6TNJ)]WKF\5'"3Z4^A7[4A3B*^T?X M^JV_?L77?\H?K@@6TJ7*N-(B?#]?.;+\%GX<,EMS#0YS^?Z8N*U(<19P SBT M]Q@DKU[T1M&[(TH'K=+!,?9DF2-?+)56DD0'9@W*Z,T;0EOP,V,7K_$A564F M]09*+0IC2?[&K-Z3SI5"IPBI<>1.0+!5X6!M%'>=FQSR>E3-8:_/D-AYKL0. M-QD0'_ -A?7/R?M<8(K%"BWT>]W.#?HADW'&!_OG 2^A-^YUQ_%9A],!##F. M>CX>0ORV&\7CSM*04%P7C^+N:#B"0_<4/NJ> NVFFA&.99::ZD9J5]LQ=%YW MW]_R>H9=";N1VH'"-4.CT[-A +:>"W5"9EOUXLH0=W85YCQ*T?H"WE\;0_O$ M'] .Y^0/4$L#!!0 ( )2+%5?4_\1T;@, )0( 9 >&PO=V]R:W-H M965T M^+4QNXLPU%4-+=/G<@<"5S92MR^9.O3;WP2Y^L8<.ZQMS+_7L8\G$" M*]EH]TWVP][()U6GC6P',"IHN>A_V=?A'GX$0 < =;K[@YS*M\RPY5S)/5%V M-[+9@4O5H5$<%[8H#T;A*D><6=[>7#[@+Z M D%./DIA:DUNQ!K6W^-#%#,JH@=%5W22\$,GSDD2!81&-)G@2\8,$\>7O)0A M8-'TJ<1Z7'H:9Y^&"[UC%2Q\M+L&]03^\M=?XCSZ;4)5.JI*I]B7[SK3*; 5 MY6W7DL:*)#OV#?UN-.GP+A414KRIF*C0LK8Z!)]$Q0P7VWZ[)DP3N2%X83!> M&-D#TN+"1C;XP.F+4XE/2CN=^$_H]7Y*KX[)^-/1#)',<9B8-HE@>41AY.I(3BL R*,K5A9L,R"9+,A3DILRB@16Z# M@L0Q8O/,>ZQ1"-L8I)U9M/&2[5G&.4J#L3>O3.VN_/[39RR%FV3BO^DVG*UXPPT_E/*DN295G#;7 MCTGS_I0G:'>I6/SCCD'1& 3/"-9D*=YD):)JT!&\R"WA3V>X%UW M2MD:3JFPGIS1."BCWI]E7. G]FZEV+Y!6[23Z#2($1N5!:J)BB*@2388\M1) M1Y_8<3E#3)J?]$SXK%.TH+:N'VKB#-XWC7%V;+F7?:FMEQH%+1! M:'1>8.%5WP/[P,B=ZSLK:;"+N6&-KPV@[ 9&PO=V]R:W-H965TL>><.6//)*Z5?C%[ (M>"R'- .^M+?N$F&P/!3,M58)T)UNE M"V:=JW?$E!I8'D"%(#2*NJ1@7.(D#GMSG<2JLH)+F&MDJJ)@^N\0A*H'N(U/ M&PN^VUN_09*X9#M8@EV7<^T\0'2<"61ANT I^W^L./C0\ /#K6YL)&O M9*/4BW?!\F1(F?%'=Q-X_8I15QJKB"'8*"BZ;E;T> M[^$"0.D- #T":-#=) HJQ\RR)-:J1MI'.S9OA%(#VHGCTC_*TFIWRAW.)I/9 MZFDQF:+GR2R=C2;I=[1@3HA'MH/5RC.[>_T=#G.BS=_0O(/4$L# M!!0 ( )2+%5>MPN.$]P0 /,< 9 >&PO=V]R:W-H965TW%:2^NQ/3"=_* M),[8G0#Y-DVI.-RPA.^O#&0\7;B/5VM97#"GDPU=L0VT "+;2YY6CFK&:1Q=ORD/ZJ%.'%0G&$'JW*PN@[.&0>[ MB,):T8J#<584RH,4 MZMM8^)*55 Q;3,137YF^/DK3.3M\&M&G2=@S"+6#3@'XS[ MNR/^IEK(>C6MI]6\L4:!OVVS"V##GX$%+7M@/K/GNUM#X?R_T<-7C]Y:#+LN M+;ODV6=X05,A1>;Y$MQ7!?'M#V4*ODB6YG\/9?W(=8:YA71>YANZ8%=&6:AB MQXSI^W?(A9^&EEPG+- )"S7!6LEQZN0X8_1IE8JAU3\ZNJ5C\3NSFUH0.Q[& M>&+N3E>V;XA\8F$'NFW#H&_H6-AUK*)*3PW#OJ%-H LQ; Q;T>(Z6CP:[:.@ M6;YD0BBIXCLFP*/ZL0/?;EDZ9V*P!$=Y+RU!G;! )RS4!&LEQ:V3XKZ1/K@Z MDZ,3%NB$A9I@K>1X=7*\U^K#T1&W;GO7);[3N9MG X8N5G^DJP]]0YO8$$*O MJP\#AECI@T_.Z(-?1^L_6Q^H!'<\5D\_0@V/0/\+5"47FVE<+S/&1UA&+ T+(Q\1#L",6 MH6VY#L(=PW#(D!#BGA#;\9[T2V@TWFLF>"[%=B&W8EP;QD$OK3^MM$ K+=1% M:Z?$:E)BO9%"5&!=*=))"[320EVT=HJ:5A"--C.C*F'W;E5?M0<>Z;8; X;$ M1X1 JZL2?4/D.X385D\F!BP)A.II!I_1B::_0N,-5JD3A[PHO7&5&,6\N 1U MT@*MM% 7K9V0I@5$^*U40FLSJ)46:*6%NFCM%#4-(1IM:495PNW=J1YV/=_O M-AT#AECU)M#!797H&R+U: *1[7158L#2V?:#M1T66B\S?H]EK)X\5J\ M+GW8;C;) MS2C*Y86;V%'U6,4_^+2U$D+M-)"7;1VHIH&$?EOI1Y: M>T2MM$ K+=1%:Z>HZ1/1:*,.V_%$\DVYA33G4O*T/%PS M&C%1&*COEYS+IY-B@'J?<_HO4$L#!!0 ( )2+%5=9 \2R:P( ',% 9 M >&PO=V]R:W-H965T]D'OM>X_/.>8ZV@CY MHE:(&K8YXVKHK;0N!KZODA7F1'5$@=SL9$+F1)M4+GU52"2I:\J9'P;!F9\3 MRKTXBU(QRG$I099X3^7:%3&R&7M=[7YC1Y4K;!3^."K+$.>J'8BI- MYC)&[<1@E2R$>+').!UZ@26$#!-M$8CY MK/$:&;- AL9KC>DU1]K&W?@=_9O3;K0LB,)KP7[35*^&WH4'*6:D9'HF-C^P MUG-J\1+!E/N%35T;>)"42HN\;C8,U4&.Y0W1 M)(ZDV("TU0;-!DZJZS;D*+>7,M?2[%+3I^/9Z'$T>1C!;'1]]WTROA_?3>#P M!C6A3,&$2$FL:T=P C-<(R_QV 3VLBE?PA2E^UOP!.%NP>B26*>/8;0MC.F8 MPCW-;9W(8&ZV5$:2JF"NB=1@"",\76ZI>AY &(2]D^#\).C" 5 .MY0Q4ZLB M7QN9EJR?U)*N*DGA!Y)^EKP#O>#80<+#_ 8.#X[^A?&-2XU586-5Z'!['UGU MWPR IU\&&\8:<_7<)K BTF\G8N=TH J2X- S@ZA0KM&+/W_JG@5?]\CL-3)[ M^]#CO^J*'76B4==Z(Q7D%P=IWX%UW.U>=,+(7[&ULK55=;],P%/TK5D!HDZ!QG(^6 MDD;:6B% @*95@VVPGS?J157O@)?&U[SGW'#N^27="/JHU M@$9/):_4Q%MK78]]7^5K**D:B!HJL[(4LJ3:A'+EJUH"+1RHY#[!./%+RBHO M2]W5M,##\9[]L_-NO"RH@JG@OUFAUQ-OY*$"EG3#];W8?8'6 MCQ.8"Z[<$^V:W"3R4+Y16I0MV"@H6=6\Z5.[#P> X"4 :0'DM8"P!83.:*/, MV9I13;-4BAV2-MNPV8';&XSN?DLB@T'))8H%Y669E\1 M50JT0K0J$&=TP3C3#!2ZFH&FC*MK] $]S&?HZNUUZFLCPE+Y>5OPMBE(7BCX M;5,-4(C?(X))V .?7H;/(#?PP,'),=PWUCO_I/-/'%_X M]T[_FF\7QC/']_ M]MSGKR&,^@GMK1NKFN8P\17SZ4AB4^ MJ#]*^K-,>"J([8(#"]!E45!Y,\1,E$-O9ZWVYC1=:[MAA]'&[+&.>J'S;TTEM^R9+1 MKJC@('$U])+>Y;AO_9W#-XJ5VEN#5;(4XM$:TVSH=6U"R##5EH&8WQ;'R)@E M,FG\:#B]-J0%[J]W[-=.N]&R) K'@GVGF#Y4L% M4^X+5>U[/O @+94610,V&124UW_RU-1A#V!X#@."!A"\!/1? 80-('1"Z\R< MK G1)(ZDJ$!:;\-F%ZXV#FW44&YO<:ZE.:4&I^/QU[O%+!DO()G/KQ9S2.XF M<#--1M.;Z6)Z-8?3"6I"F8([(B6Q)3^#]_ PG\#IR1F< .5P2QDS-Z(B7YN$ M+*V?-L%'=?#@E> #N!5(;9<[QOA+1J@IV:47"4\$O).Q!VWT'0#<(# M^8S_'1X<22=LBQLZOO"UXAIUTCQ42)1"K2#A&=Q0LJ2,:HH'"U83]@\3VI:^ M5!N2XM S/:M0;M&+W[[I#;J?#JG]3V3/M/=;[?UC[/$,M\A+-)V>BC6GOS # MG1,-%5'FT:2L-#=N7T^ZJQ$[7I@ZVH6+9D?3-NYU+B)_NZ_W;Y^P$[0^M0Q_ MKU<*E&LW0I1)H^2Z?FCM;CNE$M><+_9'9GK5P^8/33WZ;HE<4ZZ X_P902P,$% @ ME(L55W-8_T'M @ 0 @ !D !X;"]W;W)K&UL MK9;13MLP%(9?Q,F;08U4*/?&6QM0CW]?YDE54G\J:"7@R MEZJB!KIJX>M:,5HTHJKT<1 D?D6Y\+)Q,W:MLK%63BZ2&U\$_"+ MLXW>:B/K9";E@^U<%1,OL$"L9+FQ&2C\K-D%*TN;"##^=CF]?DHKW&X_9[]L MO(.7&=7L0I;WO##+B9=ZJ&!SNBK-C=Q\8YV?V.;+9:F;;[1I8P>)A_*5-K+J MQ$!0<='^TL=N';8$8?2& '<"_%X!Z02D,=J2-;:FU-!LK.0&*1L-V6RC69M& M#6ZXL&_QUBAXRD%GLI]+AG)9U5(P8322<\3%&II2/<$XO"QM6&&'#03.90EO MG8O%"!U-F:&\U)_1";J[G:*CCY_'O@$@F];/N\G/V\GQ&Y-_7XE31()CA -, M'/*+P_(IRT$>-G+\6N[#,O1K@?NUP$T^\D:^J][YE.N\E'JE&/I]-M-&P6[[ MX_+7)HS<"6T%CG1-7V/R5[Y9WTWLFA[-D-W<"V M,DQQ6FJ7TU:>-')[-*RS,,5X2(*QO]XVX8H;XC >]'&O^**>+SK(=P^' 6Q- M5"NY /=.Q#9#O#4U#I-AD.X0[HS-'A) @CG<(]^/B)$RB M.'(3#GK"P4'"E_KK]K=S&0=[DY_@*(3/<(?2$4A"3$B:N#'3'C-]'^8Q$LRX M$-/]&AA"%03)#N%^'(Z@HI+=-^UOG>_V;OU!U8(+C4HV!V5P.@"3JKVOVHZ1 M=7/DSZ2!"Z1I+N&*9\H&P/.YE.:Y8V^1_D]#]@]02P,$% @ E(L55P+% MB@;2 P ,A$ !D !X;"]W;W)K&ULQ5AM;]LV M$/XKA#8,+9!$KY9?9ANP+6WKL !!O6X?BGU@I+--1!(]DH[3_?H=*5FU'$5( M-Q7]$I'4W7.\N\>7.TV/7#S('8 B3WE6R)FU4VH_L6V9[""G\H;OH< W&RYR MJG KMK;<"Z"I4MH!2/Q!X.C M/%L3[_2?.7'"M9QR+)02J>5\IX M@YP5Y9,^58$X4T"<=@6O4O N%8(7%/Q*P7^MA:!2"%YK85 I&-?MTG<3N(@J M.I\*?B1"2R.:7ICH&VV,%RLT4=9*X%N&>FJ^5CQYN-:A3DG"<^2?I":#\*37 M0)"+2 BI!$L4RD@M3UA!U Y0H9 \8RDMW^ #*:0DX1N"3!8&2!(F*QJR?U", M2H3,D)]R0MY$H"C+Y%MR33ZL(_+F^[=36Z%7^FYV4GFP+#WP7O# )[>\4#M) MXB*%M$4_ZM8/._1MC&8=4N\4TJ77"?CKH;@AOG-%/,?S6^ZS>KVZU^;._[,> M_V?KC6#X-;]\@^>_Q*\=%7"]-/RZHY\T/\A""%IL#5>N2%SR#(E1I&1%]TS1 M3!/EBBQR?D#IC[\A)'F'W))_M;&CM!^TV]=U=B+W-(&9A854@G@$:_[#=V[H M_-B6FC[!HC[!XI[ &DD,ZB0&7>CSWSDFI?SI=Y2*MN24N*'!U?^S'N?NR/'< M<&H_GH>]10GX/HI61G3A?RL@^P:(^P>*>P!K)".MDA-^XK(1])K%/L*A/L+@G ML$82AW42AU^IK)2X@[-?N#]TA^Y%57DN%0:70M%SH8'G!1>5)WXNA9VX$[97 ME%'M_ZC3_S6VQZS87I&?HR.+FJ/?38#YB"V9OB6Z!YRKVS7Z]-Z MP%^8L?;B?.E.5F[+>:0_")B9\S-\^37AEHHMPT$O@PV:&PO=V]R:W-H965TYDF.=QQ)/991OGS'%)VG#K8 M>;EQGVRV4M]P9Y,=W< "Y,/NCJLKMT*)DPQRD; <<5A/G2M\.2>AGF!&?$S@ M*$[.D9:R9.Q17WR(IXZG&4$**ZDAJ#HL+]XD$-RF-T#T+R9*6'+"1;/:*K(^6Q4-@<215#)$\H8[G<"@1YK$;]O,\! M^=ZWB'C$OT3O;D#2)!7O)ZY4LC0Y=U5*F!<22(>$$-T6P-]KX-?S796.*B?D M)2=S8@54U 85-?0UREV= 531RU+ ?P SNR;KW#H?6#Z9^B%L M(U0 1Z>$!CYIIS.JZ(RL='Y4]=5<;(D8-1.!R=CKB!Q5D:.>D>VJHX9J?Q!U MQ!Y7L_-Y(D!7H#(YU4\?VKGZR@F]@91HZ\OLTE!+W M])GRP[&/1QU5K;LWMK;/MQB]DGNN=B>]-M>-]#GDB!WNFMQ'NK M$=J!S_0*7/=G'/[/7HBM#G&NP+KC8WO+/],.[:AG++C:*+#=*?Z%9=J1SR!= M.PRV6TP?8\5-D\$CSPLZW(W4)D/L)M/76TG39?Q!T+'#(;7+$+O+]+#7$N&5 MOX;C*.CH.Z1V$&)WD)[^6J)\IKPK\;4W$+LW]/-7TC2""]\?!1V;"U(; ;$; M07_[)&U=OU-_W?5)[ZWVEWDC:>ZVPS (H@Y"=3T*N[U0>.J^*UOAY>?!VYI7R3Y *EL%93O<%(Y8,7 M'QR*"\EVYB5_R:1DF3G= HV!ZP'J_S5C\N5"!Z@^^\S^ 5!+ P04 " "4 MBQ57V[XOAP$$ S% &0 'AL+W=O MIRC#AY%A&\>!NW2S96+ ' ]W<(,6B-WOYH3WS!HE27-4T!07@*#UR)C8E['M M" ,YXX\4'6BC#40H2XP?1.'#KZ@*R!=X*YQ1^0L.U5S+ M *L]93BOC/D*\K0H_^%3143#@..H#9S*P#DU\%XQ<"L#]ZT>O,K >ZL'OS*0 MH9ME[)*X"#(X'A)\ $3,YFBB(=F7UIROM! ;9<$(?YIR.S9>?+Z=?>I-)XLX M K/;ZWE\LYA\OKJ] >\BQ&":47 #"8$BF^]!#]PO(O#NQ_=#DW'? L%<57ZF MI1_G%3\NN,8%VU(0%PE*%/91MWW086_RF.O G6/@4Z<3\+=]<0%.Z+ M#>+*P,#R&33GS>&S')X<($G E]\Y)+AB**=_J79'Z=]3^Q=J>$EW<(5&!I<[ MBL@C,L8__6 'UL^JU.@$BW2"Q9K 6DGTZB1Z7>AE$BG@E\<:I4QYR*:=".>F M02=85(+Y$DS<;H_CT.][X=!\;/*KR66+7[_FU^_FE^'50V\I-_^J<4A4/)=( M02.:GAU:CAVTXYFIYKE];W 2=Z28Y]L#VQV<\*/""UPWM.IYK="#.O2@,_3[ M N:8L/0K#YV^0@/O4$959 3?I-:WO;"QII*+SB6YC/6Y+-%:K\FM=^] MG_C;45IL/H!?4($(S L$C!)^"6?4E9>N2!^$OSR4_WE&N5+1)3:VNGFW$.M M$RS2"19K FOE*JQS%7[G"S+4F42=8)%.L%@36"N)@SJ) VT"/E (J>=:GG\B M6JIYKFTY_1,!5\SS@B "-/A&MX1??B6H!=RV7M[SK<[@/QY?"\ =XO*2 MKD13,E)K"_@':-.D[M6;/G5#G9T4G6B15K2X0FM*IQ.X=N/3H*3;;!1!&:R+K.R?C4OIS9BO%(5,1DT>4%OBRG74.R20L*,K3FKJR+/M=O M4E:HR@[#.UF"66+&<"Z;6P031,0$_GR-,3MVA(.Z3CC^%U!+ P04 " "4 MBQ57S*D%M;GH6AR7(LF&FJ$B6M3)4N MF*6IGH6FU,@F/J@081Q%:5@P+H-^U]MN=+^K*BNXQ!L-IBH*II\O4*A%+V@% M:\,MG^76&<)^MV0S'*&]*V\TS<(:9<(+E(8K"1JGO>"\=3;H.'_O<,]Q83;& MX)B,E7ITDZM)+XA<0B@PLPZ!T=\5#AL!K?8K ?$J('YK0+(*2#S196:>UI!9UN]JM0#MO G-#;PV/IK8<.FJ M.+*:5CG%V?ZYA>^51$BB!L11G "3$QABAL48-20M;XT;8'.$*>,:YDQ4:$!- M(6,F;U =,E5):ZBD&?(Y&POT&+6]9,]+8UEJ]<1)>9PX.,+*F-;/7,[6H&/, M6&70@;OOF5QI>V)1%R"9K?1Z@3RX-%97U$W4PG T1,NX,,=P G>C(1R]/^Z& MEL1Q%,-L)<3%4HCX%2%(A6:MPH[PP?YPDJQ9R[4='E))ZKK$=5UBC]=^!>\6 M2R)/2MT[:> :F2$!'&%XN/;%^;6+XUY0=R*O,+_TO6:Y]Z "R:8S!!&_EC[JE554M,TX))+LG,F8&2I MJ[PX U:ZX\' PP]"A"LRFYU*)8=4ZD!@6TJU:Z7:>SME]+)+QDI3,&EC_!84 M2LZ6"Q,V^%_QOBW@@L"T=TEJ']/^V>WI(I0X$MJ54IU:J\\_: MO?/6=M_AN+O=PXV;U[UZKIF>T=T$ J<4&C4[U%1Z^9)83JPJ_64\5I:N=C_, MZ?&%VCG0^E0INYZX^[U^SO7_ %!+ P04 " "4BQ57.HR.NJ\% !+)P M&0 'AL+W=OLS3GEZ.5$.OI9,+C%4 M+"NE+)WHFF9/,I+DH_FL&KLMYC.V$6F2T]L"\4V6D>+EBJ9L>SG"H]>!3\GC M2I0#D_EL31[I'15?UK>%O)NT*,LDHSE/6(X*^G Y^HBG$?9*A4KBKX1N^=XU M*J=RS]BW\N9Z>3G22H]H2F-10A#Y\407-$U+).G'OPWHJ+59*NY?OZ*'U>3E M9.X)IPN6_ITLQ>IRY([0DCZ032H^L>UOM)F05>+%+.75?[1M9+41BC=43!:!2,4Q7,1L$\5<%J%*Q3YV W"O:I M%IQ&P:F"5:]N%1J?"#*?%6R+BE):HI4757PK;1F1)"^I>"<*^6TB]<14L5RL.*+YDB[1[YN<(D,;(UW3C4I$7NAC242^IA63TI),2(0'EW0-+91+P*7KG4T&2E+]' M']"7.Q^]^_G];"+DQ$KW)G$SB:MZ$OJ121CHIG8X*!U6Z(?#^O: _D0N:+NJ M^NNJ7NF#@'+)+MHE4_BS&%:_(854QT?5_=.MZPKUX'3K*O7PQ^8>?;?SG5 8 M+<&-"L\X@A>0(D_R1XYN)2OO2CJ.T17A23Q&]R]H4=-TD1+.Q^@ZC]/-4DJC MSUM6#Z(;*E9LB;[^(7'1M: 9_T=%T-H)4^U$N9],^9K$]'(D-PQ.BRE1;.7IY 60Y5% M[/12^0VW.G%QVK@X@XE<;:P<;;@L[Y*\#,IZ(\J-]$A)."[?'Y)XJ@J4 YG@ MD& ^)%@ "19"@D5 8!TBN2V1W,$$_\P$26N.)JF];(9TFJHG*OAV9;>RVBE>QK6]W;Q3C"\-AC>8##.S^J!YZ^G M<-+6+=WLE1J+09_.C9S*JF68FN7V(@=I-53.5;-QGR^12M#T;,/PU)'#VNZ] M7AN,W9=<^BF*)"[?N)M ?KVAV3TME"\PPW#G/G9!T7Q0M 4+01%BZ#0NJ39 M:P;A[ZO'C^_6#2(4;R#1?%"T !0M!$6+H-"ZO-%WO-%_J"ROZ*-DCWY*53YL M_6Q6*&WVZW)0FZ'2YD%E_I9GW>CL.F!XN 4&69QCT$87*)H/BA: HH6@:!$4 M6I=0NW87'NYWO56D-^J]LD;W7,_L9_:@H;,)H+)K:)9G>/WLAK0;JN>+=9+]J 8KF@Z(%H&@A*%H$A=;ES:[9AP=;0#]0[CDGE7N@33NUS8-R#[0= MI[1Y6.Z]X5DW.KL.&G;_OW(/LJ&U $7S0=$"4+00%"V"0NL2:M<%Q,-MP#?+ M/547RW6]@[P&[>RIK!JRCL+]S ;M["GGZEBNV<]M9>/1<_H_F$[VCNYDM'BL M3F5QF9^;7-2''-K1]N37Q^J\4V_\"D\#K!@/RY-BU5&A'7Q]S.R&%(])SE%* M'Z0I[<*1SA;UR:WZ1K!U=7#HG@G!LNIR1&ULK511;YLP$/XK)R9-F[05 C2M,H*4IIF:26FC1-L>ICTX< E6 MC^&E2D1VN47^NEM)X?L>2TQ*YHH*#Q.W8FPQ&T]C& MNX O% _JQ :K9"/$HW7F^=@+;$'(,-.6@9C7'J?(F"4R9?QH.;TNI06>VD?V MCTZ[T;(A"J>"?:6Y+L;>M0\*AB;V*/7-FSRU?3@!&)Y^0-@"PK\%1"T@ ^J(!)5XFN3V>+]K,URTV0)7\@2P4)P72B8\1SS'OST/'YX!N\;Q9WL\"C[ M)CQ+^*GF%Q %[R ,PJBOGG^&/RLGZKY"Y/BB%_AF1'+*=PJ6*&%MFPS?)ANE MI?G+O_>UNZ&+^^GLY(]413(<>V:T%NGK5X-A\*%/ZW\B>Z8\[I3'Y]C3 M.<\DFJV@"6O_+J@5YD Y9(1E-2-NVL46Y H9; PTNKDQNV:R;QM&B&ULO55;;],P%/XK5D!H2+ D;I.5DD;:5B% 0IIV@0?$@YN< M--8<.]@G[>#78SM95&W9$"^\)+Z=[^*3>;7+G2>J0X%EW"AB>F: MANE?9R#4?A7$P?W")=_6Z!;"/&O9%JX ;]H+;6?AB%+R!J3A2A(-U2HXC9=G MJ3OO#WSEL#<'8^*<;)2Z=9-/Y2J(G" 04*!#8/:U@W,0P@%9&3\'S&"D=(&' MXWOT#]Z[];)A!LZ5^,9+K%?!(B E5*P3>*GV'V'PDSB\0@GCGV0_G(T"4G0& M53,$6P4-E_V;W0WWA*+K>DDZQ1&OEO M*/L];DS'9 &D4 ;-:\(T$&9(I83-M5F2HS4@X\*\SD*T6AUC6 RZSGI=] E= MGSMY3&;1&T(C.B,W5VMR]/(!3&BMCG[IZ)=ZW-D3N&NG>\U-(93IK-SOIQN# MVGX;/Z8T]ECS:2Q7+TO3L@)6@2T( WH'0?[J19Q&[Y]1.AN5SIY#SR_!U50) MVB7%W<*4P!XB]1"N_G9YO(@7]"0+=Q/4\Y%Z_BRU99M/L?51R0%;$B^B>)HL M&F^W[43U"UO@=L%-J.XH>U;>&@W0&[7RF%]Q/7 M5L:?0OX'4$L#!!0 ( )2+%5=DW-F1@0H &%X 9 >&PO=V]R:W-H M965T24Y:8'_\4K)BFI9"2^WK[8>)+^)S:)UW=,17I'3QG.5? MBT!1)6)QE:Y'*;QZR/ E+^39?C8MU+L)EW2B) MQ_9DXH^3,$I'5Q?U9W?YU46V*>,H%7 MD^JGW&?9U^K-^^7E:%+U2,1B45:(4/YY$G,1QQ5)]N//!CK:Q:P:[K]^H;/Z MQ\L?/E:#8B2_$0;N+R8_;\#]'\(*_B+;*XJ/]+GIMM)R.R MV!1EEC2-90^2*-W^#;\U.V*O@6V_TL!N&MA]&SA- Z=O [=IX/9MX#4-O+X- M_*:!W[?!M&DPK9.UW;MU:H*P#*\N\NR9Y-76DE:]J/-;MY89B=)*BI_*7'X; MR7;E54"O/Y-? U&&45R0#V&>AY4V_G8Q+B6]VF:\:$CS+23VRPM'PM" MTZ58=K2GYO:SJ0$PEC]K]]OLE]]V;1N)MV%^1FSG#;$GMD.^? K(K[]T_C S MYI^;](PXDZ.8H#_&-F HIC?,C G$0F*LH[WA?7:Q6V$LOQNCI<[9R=*INNHV!&2M3MF.;[K'&2;@WJFI7&V2^/,F,:[\+L<(I9% M=?ASUH[TY XZ$'KP R%)5]J076=(& ?! M- V<[S1P;M9 'B6"? Q+0?ZX%<-^53*/TMR)_*%_#I<=9[]F6,,5E)C<4WV:L_D;#*SO8/B PU+^X9E MT+ <1=/S;ZO\V\;\?Q9Y0N(L3(T5Q@P9G& D+8#2*)3&H#2.HNE241Z>=1H3 MSX*Z>%!: *51*(U!:1Q%T\6CO#S+;.:]6ZURL:K.9-=Y)(>GZS F]V%<#6@Z M-0/U\:P.K\RI_AT6%*B1US,J:[;31J/>K+TA1W5/3Z'R\BRSF7<=IE_)ES2J MS@>,Q0+JZ4%I 91&H30&I7$431>+1R $*J2]I9IW:@YF5#LZS]X_)9:PP"=2][ MQ630F!Q%TW.M;$[+['/>AM_J7,?B:'JA_F9#VZ^ZA^8F-" ]'I!! W(434^L M\BXMLWGY\C]QN/S/IJC.&>CU^\_!N\[,0AW,AJ:==TTZ+K,%T+ 42F-0&D?1 M]'D[RJ&TC2;6CUS+,!.'2@)*"Z TVM#VY7KNV^VKQ]"H'$73%:%L1[N'[=A# M!5!CL:'I%WG]]G$!&I7VC,J@43F*IN=7V8JVV5;L&BN2_Y*7FF :/IK)@W,. M]1JA- JE,2B-HVBZ?I37:)_&:[2A7B.4%D!I%$IC4!I'T73Q**_1-GN-'X2L M+>DB2^1@0ORYB:2&R"9=BIR$JUR(Y)6I+V;J8.UTN'J'=09J-T)I#$KC*)HN M".5Q- M&VIO0FD!E$:A- :E<11-%X^R-VVSO?DBGNVL:/+0B.=-M1"H/CV^SW()K0Y, MBU#V0W[7J26HW0FE!5 :A=(8E,;M]HQ39W)@-^DZ4=:H;;9&W\DSE65UMD(> M1.=54KL]2=/VVD;7W!QG<&ZAMBB4QJ TCJ+I^5<.JFUV4'_;E$49ILMZ+G<6 MIMT6"=0[;6C:!/=N\Q0:E_:.R^RVN]N])4?U4%_QIDQ/QVQZ_M#R)3-S:#8; MFK97.Q3"W4S&YIVF:-[M1,T+NT=ET'C M,+,S] M&:P3J"$*I3$HC:-HNDZ4(>JSSJJ8;5)$,7O,Q9&Q&73R*9060&D42F-0&D?1=*4I0]8Y/TTY M@WJT4%H I5$HC4%I'$73;V:E_[ >#RIG;-E>M:9>[.C?W9ZA.H#0*I3$H MC:-HNDZ4C^R:?>2?*6*5;\[8)G9@X\@4*<92J-0&H/2.(JF*T@Y MS>[L-.4':AY#:0&41J$T!J5Q%$T7CS*/7?-LWNV2Y[T[+3[(6"1,LDWW;JJB5-V]NRY1-\=*E#G< M4,% :0&41J$T!J5Q%$T7E7*//>LD)L%06@"E42B-06D<1=/%H[Q@SSS' MF7Y;1_7MEU*R#,O.,=(1PH?L:?LXH^I!1&ZG-*!.+Y1&H30&I7$439>&(:3D2J M.33]GE)@[L1@@4 -7"B-0FD,2N,HFBZUO>=!G<; ];#/B8(:N% :A=(8E,91 M-%T\RL#US ;N]D!3%2!R%V\Z5\.:"8-UXG>5@XG3*D)0"Q=*8U :1]&V"ACO M/>@T$?FJ?H9M01:5);)]+NCNT]US;;;-V6VKA^G>I^599;4+Q]%N!1YM8'\_B'+RI&ULM5O;;N,V%/P50@6*%MA&%NE;4MM 8NYB=U$W@;/; M/A1]4&0F%J*+2]'V%NC'E[I$-%6*LHS3E]B2=6;$$S8\I?LRUC GV+ MHR2;.ULA=C>NFP5;%OO95;ICB?SD.>6Q+^0F?W&S'6?^IBB*(QV9%&4(\GS^*L"=6K.O/#T_1OZAV+P(GQO^3X[J!A7W7T/+\< MF\9C+ZJ5P;#:FO+2GPABUX:W9@R9ZA.Y8$6^EJ=:W0/^J2WB?,>@VM M'/G7TDVV\P,V=^3W3L;X@3F+[[_SQH.?3?I!@E$@,$W;8:WML$ G+=J:C/"+ M/ 9]$BS.C$(.(86$!*- 8)J0HUK(D762_E?(=^B!\7R?O.^8="SQO-)%^7WM ML!A<$6F8PZE YJ/&^E'4>FX7CGQ _:I';"WF)[1 MT%[#T%"DNDI8J82[5)(2!0+=9AD3V47K83M%;]T@T2@4FBZORAL> ;&N^]S:6QG;>W2F;224VJ#U_E J\S&'1ZM6MQ;*?H M/;L@T2@4FBZO"A_>&-RKH%D#%(U"H>EJJKCA61?AEWAU8KQA-M?)=M[>*AE) M<8M554;P.D-"MU4[%\IVDM[3"Q*-0J'I JLHXEV#FQ4T=X"B42@T_3=>E3RP M=2U^@5DKP*99)PVSVGG[JM1".C:[%:NH@#NC0J=;/Z1[;C6KG:/O] )%HU!H MNKXJ9& ,;58,FBE T2@4FJZFRA38_A#C K,2HV]&3;."9H46TC:SJA" [2'@ M-@C2?2)=NF8!"P_^4\0N2JUVFMXS##1!0*'I$JN@@4?@?@7-%:!H% I-5U/E M"FQ_JG&!7\=GI58[;V^5C*1DVN)7%02P/0BNY&JGZ3W#0%,$%)HNL4H; M> KN5]!H 8I&H=!T-56TP/;''!?X]?J\Q3!H9#"38L_L5Z*R +%G@;/]VAE? M[42]&R5 HP04FBZR2AS$@W8L MWBJ925M^%R8G34WV0'"N8SLCK)VG]Q2#;6WZ/QX]$)4Z"'AW$P$-&*!H% I- M5U,%# +=XD2,W4O-IZE+.V]OER(XV[#AH>,."_K\ 12-0J'I M&JO80<#[G0AHP@!%HU!HNIHJ81#HIB=B[F=J^A4T.$"AE2*Y)SWDTHTO12]^ MA@KKE@W4]=ZZW_^VZ')O[+_S;I9EU[Z"*?^)8.7SES#)4,2>)>3@*N^ZYV5? M?KDATEW1J?Z4"OF54+S=,G_#>'Z _/PY3<7;1DY0_W?$XE]02P,$% @ ME(L55U<)?!$U P > L !D !X;"]W;W)K&UL MK991;YLP%(7_BL6FJ9768B 0TB5(:Z)JFSJI:M?MV24WB56PF6V2]M_O&BA- M$TJW:"\)!I_C[UR#[?%&JGN] C#D(<^$GC@K8XHSU]7I"G*F3V4! I\LI,J9 MP:9:NKI0P.:5*,]CR'3&XFCN<\ MW;CFRY6Q-]QD7+ EW("Y+:X4MMS69/K?.)02P09I,9:,/Q;PQ2RS#HAQ^_&U&G'M,+MZR?WBRH\AKEC M&J8R^\7G9C5Q8H?,8<'*S%S+S1=H H76+Y69KG[)INE+'9*6VLB\$2-!SD7] MSQZ:0FP)O,$K K\1^'\K"!I!4 6MR:I8,V98,E9R0Y3MC6[VHJI-I<8T7-AI MO#$*GW+4F>2B-*4"Z\SS,B<98$E(P1YQIHPFI9B#(D**DY2)%&O-[C(@^ XI M9KA8UMTU89K(!?E6"B !_4A\Z@=D VB+#Q8RPU=%GY&C&1C&,WU,3LCMS8P< MO3\>NP8C6! W;7#/:US_%5PAS M3Z[!+@;V-< I?J7JY[5%5%G8A6.=>'04^3X=N^OM(+U#'1ADT 89] 9!]D$7 M>ZT*M]A]WX^'\6"'O=?]0/:P90_?8@^[V,,.]C@(PEWV7O<#V:.6/7J+/>IB MC_;8XY#ZPV@'O=?\0/1ABSY\"WW8A3[<0_<\CT;A#GJO^8'H<8L>]Z+_6.'Z MRQ8&5%> >"_ "%^<'?S> 0[$'[7XHWY\:5AFMQ^N4UD* _/=7:?=I+KRC?;R M1>$P'MG9?!&Q%^+ B!Y]WGII;\A+T)KPO"AM/(XA<1#3N2?2O3PG81#18#=/ M_X"'!MHZ2WB]@:ZLJ3!DS;(2['[Q+W/6>&]O(A$=^/%H=Q/IZAB/0CIX7CIJ M?G?K6&3/I-^96G*AD66!2GHZQ(*J^IA7-XPLJI/2G31X[JHN5W@T!F4[X/.% ME.:I80]?[6$[^0-02P,$% @ E(L55W^-7I"V @ &@@ !D !X;"]W M;W)K&ULK5;9;MLP$/P50BV*!$@BB3KCV@(2&T5; MI&B0HWVF[;5%A")=DK;3OR])R8H/Q4B!O$@\=D8SNSS47POYI$H C9XKQM7 M*[5>]'Q?34JHB+H0"^!F9B9D1;3IRKFO%A+(U($JYN,@2/V*4.X5?3=V*XN^ M6&I&.=Q*I)951>3?:V!B/?!";S-P1^>EM@-^T5^0.=R#?ES<2M/S6Y8IK8 K M*CB2,!MX5V%OF-EX%_"+PEIMM9%U,A;BR7:^30=>8 4!@XFV#,2\5C $QBR1 MD?&GX?3:3UK@=GO#_L5Y-U[&1,%0L-]TJLN!EWMH"C.R9/I.K+]"XR>Q?!/! ME'NB=1,;>&BR5%I4#=@HJ"BOW^2YR<,6((Q? > &@-\*B!I Y(S6RIRM$=&D MZ$NQ1M)&&S;;<+EQ:..&RW-+#4X73R4@&:"F6)2/D>:C!D@!5J90:E+ MI,WTW<]'1)0;)'R*S *21-MH!B9_B%$RIHQJ"F9>(3'KH9,1:$*9.D7GZ/%^ MA$X^GO9];=3:;_J31MEUK0R_HNS[DE^@*#A#.,!1!WQX'#Z"B8&'#HYWX;[) M49LHW"8*.[[H%;XKEX$N&S4N[L;97=A3"S*!@6>VF0*Y J_X]"%,@\]=IMZ) M;,=BU%J,CK$7+X4^0QQTE]>:('4$]H!8%4D:IW%N"K3:MG$8ER8X37'6QNTH MC%N%\=$BW+RLM2YU\7M6XIW(=GPFK<_D:"6&2RF!ZV-[K M[%>G(RX/LSP,NZN3MJK3HZIO!)^?:Y#5_^I.#_3$(0Z#/-O3?1B7!%F&HZ1; M=];JSH[J?A":L+":I;F\0=H ,S\30F\Z]GYH?P>*?U!+ P04 M " "4BQ57J&M$2B(# F# &0 'AL+W=O S3W/W3WGE\MH1^@36P-PM$^3C(VU->?Y4-?98@TI9CV20R:^ M+ E-,1=#NM)93@%'"I0FNF48GI[B.-/\D9J[I?Z(;'@29W!+$=ND*:;/4TC( M;JR9VF'B+EZMN9S0_5&.5S '?I_?4C'2*Y8H3B%C,58FYC#L"_ME<&O M&';LZ!W)3!X)>9*#K]%8,V1 D,""2P8L'EN809)((A'&[Y)3JUQ*X/'[@?VS MREWD\H@9S$CR$$=\/=:N-13!$F\2?D=V7Z#,QY5\"Y(P]8MVA:WK:6BQ89RD M)5A$D,99\<3[4HNT8+5.L-KHAF1\S5"811 UX(-VO->"UT6& M59K6(60-68X7,-;$F<2 ;D'SW[TQ/>-3DZ1=D@5=DH4=D=7$=RKQ MG39V/]SGL=QAXI",,(>F*K027%J%+LF"]M0F.2W6J5RH7I/P'053$]ZMA'=; MH_N9@]0]6Z%$KG\$>W'7LL8"%$2>(I(7[=9W76/@B+VW/9:VP%ZE]6 MJ"AF"[+).!*5 21Z0A1S=E:E"D>F<;26C)[A.J\6<&L\EU;A/)]A1SX+A?6C MQB<%NE(=)T-*M>(^K&:KIG:B>KE7\U-S.#,;Y@/1!!<]ZPM]T4'?8+J*,R:* ML!2NC%Y?;%]:=*7%@)-(P, /X+ 9 >&PO=V]R:W-H965TO,H@$A&F=U Z5MILT[8,)%XB:Q,QV M@/[[^1$R4M*(;OE"8N>>9\TS--%JPAQJQ! M-I"(+TM"8\S%D*Y,MJ& %PH41Z9C66TSQF%B>'TU-Z5>GZ0\"A.84L32.,;T M:001V0T,VSA,W(:K-9<3IM??X!7,@-]OIE2,S)QE$<:0L) DB,)R8 SMWJ0C MXU7 0P@[=O2.9"5S0A[EX&HQ,"RY((@@X)(!B\<6QA!%DD@LXW?&:>0I)?#X M_<#^6=4N:IEC!F,2?0\7?#TPN@9:P!*G$;\ENR^0U=.2? &)F/I%.QW;= T4 MI(R3. .+%<1AHI]XG^EP!! \Y0 G SC/ >5?QN2]U/@E(#.@.[Y$?LB B+*6 ?@[GC%.Q?7^5]5LS-LL9Y9'68QL< MP, 09Q8#N@7#>_?&;EN?RL2ND\RODVQ2$UFA+[=G\R.Z-[9)Y7YA;[47_TFMG?(WI M*DP8BF I4EF-CMBN5+M-/>!DH^S4G'!ASM3K6AATH#) ?%\2P@\#F2"W_-X? M4$L#!!0 ( )2+%5>UA)$% P, #H* 9 >&PO=V]R:W-H965TH@$DW8QB1H5=KM8=J#26[ M:F(SVT#[[V<[D,$:LB+! _''/>?>>_QUNVO&'\4<0**G(J>B9\VE7%S9MDCF M4&!QP19 U4S&>(&EZO*9+18<<&I 16Z[CA/8!2;4"KMF[):'7;:4.:%PRY%8 M%@7FS]>0LW7/:EG;@3LRFTL]8(?=!9[!!.3#XI:KGEVQI*0 *@BCB$/6L_JM MJ[BC[8W!=P)KL=-&.I,I8X^Z,TQ[EJ,#@AP2J1FP^JP@@CS71"J,WQM.JW*I M@;OM+?MGD[O*98H%1"S_05(Y[UF7%DHAP\MP-H&V7*5(P. M,98X['*V1EQ;*S;=,&(:M$J?4+WL$\G5+%$X&48WH]'P?C08WT]0?QRCZ&9\ M/QQ_&8RCX6""SF*0F.0"C3'G6*_0.?J('B8Q.GM[WK6E"D#3V,G&65PZ[EXU4IXAL\[M!*L*(A4)TH*A&F*(B45H3.@"0&!8B*2G(DE M!_2S/Q62JP/SJR;HZ]))N]Z)OD2NQ (GT+/4+2& K\ *W[UI!(U&Z:1ZM@-WY0M$87QXIV2K*X\SK1[)W7M@ ^,U6+0(E.N'QX MJ]&J,.J;>L#^:UY652/,9TH]E$.FH,Y%1VU]7E8J94>RA7F[ITP=U<(TYZJX M ZX-U'S&F-QVM(.J7 S_ %!+ P04 " "4BQ57DK:4[3\# F% #0 M 'AL+W-T>6QED6[1XA>M5JX,("8>'R<^"%M3+IWE/0!94RXORN\]G%NI1I3YQ@Y M\9*WJ BQU_(0-RE=OK ND]$@4W)3+1%Q :M+YTR890W6R2B=(ITTV:-EF'1@/! M,K"C^6P.=Z.*$$!C5&X;*:QM5I M48C59\%G,F=N\D9/-AN4RM0&F";!(].&3[&>.R?H^=^N\XQ)IJG8-FUK_RVO\HL=1[W7LEQ]J^P;]GJLW]EOW63W%$S& MIV#R)&JR?PHFDQ,PV7NU;\V#)L/ZE+%UE-DYR#31 Z,0_(##IYBDS28++@P M7-:].4]3)I^=9ZR\H1/[1]".OAV?LHPNA+EOP"'9M+^SE"_RI!EU"PM1C]JT MO\'TVG%S6K6YN$S9DJ7CNJMGDZH9V(;-6E] V$=NJLN/8!R'^1' L#R8 XSC M6%B>_VD^?70^#L.\];U('^7T48YC^9!Q]<'R^#F)O?PS39(HBF-L1<=CKX,Q MMFYQ##]^-'*@2;*5Z)V$SQM0;$OV[ 2!+_ M;F-Y@('M E8[D-^?!VK*SXDBV%7,&_8$XTB28 C4HK]&XQA9G1@^_OW!GI(H M2A(_ IC?011A"#R-.((Y \8$D75>W#O?12NWU/AYC^#HS]02P,$% @ ME(L55Y>*NQS $P( L !?3T\$MP>:4#M.*2VBZD8_1!2 M:5K5N %(MB6/:(7->= MI3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8 M%II%R=.B':5_'O#9NI MTTV/]L7J0P08<#X.]OF,_?61B_LUY_?DJ:X:.1YLE=I=#(>RV$)-Y1]\!XT^ ML^&BIDH?BKNAW F@I=P"J+H:^J/1^;"FK!E\^[JO:RF&]@%74"C&&UUH"FX9 M/,K7\^:0/##)UJQBZGD\Z/8K&)":-:QF+U".!Z,!D5O^^)T+]L(;1:NL$+RJ MQ@.O/W$+0K'B/\69@&&":FZ*[KZJ69\ 'UQ?]0J M?L4J!6)*%5P+WNY8JT4\QM!ZCB\-^VP?Q0OR?,/+-AA4PY45;0Z/Z. JH M#& CMVPG!Z2A-8P'$_X PCR/_H.D[)]-:2@K4N*"Z1,B*3L\ARB+=!JG63PE M>B];S))IE.N#RV@6I9.86) ^ NE_(.3?O@49()#!AT!FN=[,X]2"#!'(\ ,A M#R)YAD">?21D8$&>(Y#G;B&3-(]7R9Q<):ENA$DT^_6F\\PB_(00?G)+N(IO MX_0F)JMXLKA.DSQ9V(WP,P+VV?G[S5?1)"=1EL5Y1J)T2F9)=)G,-&1L1^\+ M OG%]?O5TJ8>*Q+%)KJ)D M16ZCV4UL$V'6\!QK(TEUG&*RC%H #_.%YU@8T_@RMUDP+7B. MO3"/?BQTE&YT(YO'*[L+>I@(/,,F$YWG.< MY$W#3O+..ET>-;DU2:]CK:1#2"S?>XX3/N9*$24[TYT,% M\C=[((Q9P'=L =2=!P,X'Y.![U@&O^QY-(#HIX1C*;RGT7]!;4Q,#KYC.;S: M]&@$,5?XCEWQCE;WG#8FY@[?L3N,7H_&#E.([U@AO=".8F$6\1U;!$_04QL3 M\XCOV"/Y%LB&5Q5_9,V=F?S1,20[ 5+?1M36QL0\XG^$1Z:@**LD2:D]78&I M)'#]0:'K*-L*"-^0@C=*T$(1*B4H26A3VIB82@+W,U2(\>S9@ #S2N#8*Z9M M%KS>\49?)TU,6?.@=[EX-M&U,=%)*L=>R10O[D_75$+9X4(CNXL(/)E]&Q-S M3.#8,4=Z.I%M75/!7G2?MS$QQP2.'?/^8*+K[C8F9IW L74B17ZT#9!@]#OQ M1WY@NC>90@'U&@0YZ$*8A0+'%KKB0F=QT#\!T#%*]D1JG9JVDL!!%\(L%#C_ MFGEG_-.G>!L3LU#@V$*F"^F[6L$4@RXA5;RY.U4@:E+"VIZ/QBP4.K90/TQ[ MM:,0U*S:V$.C$--/Z%@_;V9&WJ+:F)A^0L?ZN6KUFX9^@:VM204ZPY,=?:X[ M&[4V)J:?T+%^CN9U,^#0M:FMG==#=)7$L7[VPW2\66+F"1V;QYZ+.L)I8V+F M"1V;!YV>(BL#//<+\R6\*&-5"F^B^D+B]H52P%,9M^SCD\,_-(F[:J M)KILTCN9U3O M;_?F@$02-R@>-(6ABOJ MK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'H;ZFT$>AOJ;01Z&^IM!'I;[["$0&]# MO8U ;T.]C4!O0[V-0&]#O8U ;T.]C4!O0[V-0&]'O9U ;T>]G4!O1[V=0&]' MO9U ;^\==A/H[:BW$^CMJ+<3Z.VHMS]2[Y1/NYAN/=7!E&ULS=G);L(P% 707T'9(F(\E X"-FVW+8O^@)L\2$02 M6[:A\/=UPB"UHJB(2KV;1(GM=U]LZ6PR?MM:\KU-735^DA0AV ?&?%90K7UJ M+#5Q9&Y\B:]]:9I) MXJCR2>]Q-['-FB3:VJK,=(CC;-WDWU(&^X0TKNSF^**TOA\G).QD0COR<\!^ MW>N:G"MSZLVT"R^ZCK/8IF(^;"ORZ?D2)WHT\WF946ZR51V7I-XZTKDOB$)= MI;NB_?/)(>XP[:[\ZORNS+G .'/FC/7QQ!Q='G&UL4$L! A0#% @ E(L55[N/@)'N M*P( !$ ( !KP &1O8U!R;W!S+V-O&UL4$L! A0# M% @ E(L55YE&PO=V]R:W-H965T&UL4$L! A0# M% @ E(L55ZTN;_$4!P 9QT !@ ("!#PX 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ E(L55[)*?%+F M!P R3< !@ ("!TQX 'AL+W=O\F !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ E(L55R""L(&X$ ]R\ !@ M ("!QC4 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ E(L55\Z'ZZ/F @ MI08 !D ("!9U, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ E(L55^&[*L]I @ 604 !D M ("!F6 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ E(L55T:1F=8S!@ 7@\ !D ("!)&P 'AL M+W=O&PO=V]R:W-H965T]2+W=B , !$( 9 " M@?IY !X;"]W;W)K&UL4$L! A0#% @ E(L5 M5]H752F# @ H@4 !D ("!N7T 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ E(L55VN$[;"] @ [@8 M !D ("!JH< 'AL+W=OB@ M>&PO=V]R:W-H965T&UL4$L! A0#% @ E(L55]3_Q'1N P E @ !D M ("!WI 'AL+W=O&PO=V]R:W-H965T MMPN.$]P0 /,< 9 M " @<^6 !X;"]W;W)K&UL4$L! A0# M% @ E(L55UD#Q+)K @ &PO=V]R:W-H965T&UL4$L! A0#% @ E(L55]N^+X&PO M=V]R:W-H965T&UL4$L! A0#% @ E(L55V/H^O%O @ _P4 !D ("! M]KP 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ E(L55^Y[ R^'!0 *3$ !D ("!^\P 'AL+W=O&PO=V]R:W-H965TUA)$% P, #H* 9 " @<7? !X;"]W;W)K&UL4$L! A0#% @ E(L55Y*VE.T_ P )A0 T M ( !_^( 'AL+W-T>6QE&PO=V]R M:V)O;VLN>&UL4$L! A0#% @ E(L55[DCVC>R 0 5!P !H M ( !]NL 'AL+U]R96QS+W=O XML 60 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 61 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 62 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.2 html 135 201 1 false 38 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 - CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) Sheet http://cpiaero.com/role/CondensedConsolidatedBalanceSheets CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) Statements 2 false false R3.htm 00000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) Sheet http://cpiaero.com/role/CondensedConsolidatedBalanceSheetsParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) Statements 3 false false R4.htm 00000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) Sheet http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED) Statements 4 false false R5.htm 00000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) (UNAUDITED) Sheet http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) (UNAUDITED) Statements 5 false false R6.htm 00000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) Sheet http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) Statements 6 false false R7.htm 00000007 - Disclosure - INTERIM FINANCIAL STATEMENTS Sheet http://cpiaero.com/role/InterimFinancialStatements INTERIM FINANCIAL STATEMENTS Notes 7 false false R8.htm 00000008 - Disclosure - REVENUE RECOGNITION Sheet http://cpiaero.com/role/RevenueRecognition REVENUE RECOGNITION 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 - INVENTORY Sheet http://cpiaero.com/role/Inventory INVENTORY Notes 10 false false R11.htm 00000011 - Disclosure - STOCK-BASED COMPENSATION Sheet http://cpiaero.com/role/Stock-basedCompensation STOCK-BASED COMPENSATION Notes 11 false false R12.htm 00000012 - Disclosure - FAIR VALUE Sheet http://cpiaero.com/role/FairValue FAIR VALUE Notes 12 false false R13.htm 00000013 - Disclosure - INCOME PER COMMON SHARE Sheet http://cpiaero.com/role/IncomePerCommonShare INCOME PER COMMON SHARE Notes 13 false false R14.htm 00000014 - Disclosure - DEBT Sheet http://cpiaero.com/role/Debt DEBT Notes 14 false false R15.htm 00000015 - Disclosure - MAJOR CUSTOMERS Sheet http://cpiaero.com/role/MajorCustomers MAJOR CUSTOMERS 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 - COMMITMENTS AND CONTINGENCIES Sheet http://cpiaero.com/role/CommitmentsAndContingencies COMMITMENTS AND CONTINGENCIES Notes 18 false false R19.htm 00000019 - Disclosure - INTERIM FINANCIAL STATEMENTS (Policies) Sheet http://cpiaero.com/role/InterimFinancialStatementsPolicies INTERIM FINANCIAL STATEMENTS (Policies) Policies 19 false false R20.htm 00000020 - Disclosure - REVENUE RECOGNITION (Tables) Sheet http://cpiaero.com/role/RevenueRecognitionTables REVENUE RECOGNITION (Tables) Tables http://cpiaero.com/role/RevenueRecognition 20 false false R21.htm 00000021 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Tables) Sheet http://cpiaero.com/role/ContractAssetsAndLiabilitiesTables CONTRACT ASSETS AND LIABILITIES (Tables) Tables http://cpiaero.com/role/ContractAssetsAndLiabilities 21 false false R22.htm 00000022 - Disclosure - INVENTORY (Tables) Sheet http://cpiaero.com/role/InventoryTables INVENTORY (Tables) Tables http://cpiaero.com/role/Inventory 22 false false R23.htm 00000023 - Disclosure - STOCK-BASED COMPENSATION (Tables) Sheet http://cpiaero.com/role/Stock-basedCompensationTables STOCK-BASED COMPENSATION (Tables) Tables http://cpiaero.com/role/Stock-basedCompensation 23 false false R24.htm 00000024 - Disclosure - FAIR VALUE (Tables) Sheet http://cpiaero.com/role/FairValueTables FAIR VALUE (Tables) Tables http://cpiaero.com/role/FairValue 24 false false R25.htm 00000025 - Disclosure - INCOME PER COMMON SHARE (Tables) Sheet http://cpiaero.com/role/IncomePerCommonShareTables INCOME PER COMMON SHARE (Tables) Tables http://cpiaero.com/role/IncomePerCommonShare 25 false false R26.htm 00000026 - Disclosure - DEBT (Tables) Sheet http://cpiaero.com/role/DebtTables DEBT (Tables) Tables http://cpiaero.com/role/Debt 26 false false R27.htm 00000027 - Disclosure - LEASES (Tables) Sheet http://cpiaero.com/role/LeasesTables LEASES (Tables) Tables http://cpiaero.com/role/Leases 27 false false R28.htm 00000028 - Disclosure - INTERIM FINANCIAL STATEMENTS (Details Narrative) Sheet http://cpiaero.com/role/InterimFinancialStatementsDetailsNarrative INTERIM FINANCIAL STATEMENTS (Details Narrative) Details http://cpiaero.com/role/InterimFinancialStatementsPolicies 28 false false R29.htm 00000029 - Disclosure - The following tables present the Company???s revenue disaggregated by contract type and revenue recognition method: (Details) Sheet http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails The following tables present the Company???s revenue disaggregated by contract type and revenue recognition method: (Details) Details 29 false false R30.htm 00000030 - Disclosure - REVENUE RECOGNITION (Details Narrative) Sheet http://cpiaero.com/role/RevenueRecognitionDetailsNarrative REVENUE RECOGNITION (Details Narrative) Details http://cpiaero.com/role/RevenueRecognitionTables 30 false false R31.htm 00000031 - Disclosure - Schedule of contract assets and liabilities (Details) Sheet http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails Schedule of contract assets and liabilities (Details) Details 31 false false R32.htm 00000032 - 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 32 false false R33.htm 00000033 - Disclosure - The components of inventory consisted of the following: (Details) Sheet http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails The components of inventory consisted of the following: (Details) Details 33 false false R34.htm 00000034 - 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 34 false false R35.htm 00000035 - Disclosure - The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023: (Details) Sheet http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023: (Details) Details 35 false false R36.htm 00000036 - 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 36 false false R37.htm 00000037 - Disclosure - At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments. (Details) Sheet http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments. (Details) Details 37 false false R38.htm 00000038 - Disclosure - For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows: (Details) Sheet http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows: (Details) Details 38 false false R39.htm 00000039 - Disclosure - INCOME PER COMMON SHARE (Details Narrative) Sheet http://cpiaero.com/role/IncomePerCommonShareDetailsNarrative INCOME PER COMMON SHARE (Details Narrative) Details http://cpiaero.com/role/IncomePerCommonShareTables 39 false false R40.htm 00000040 - Disclosure - The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows: (Details) Sheet http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows: (Details) Details 40 false false R41.htm 00000041 - Disclosure - DEBT (Details Narrative) Sheet http://cpiaero.com/role/DebtDetailsNarrative DEBT (Details Narrative) Details http://cpiaero.com/role/DebtTables 41 false false R42.htm 00000042 - Disclosure - MAJOR CUSTOMERS (Details Narrative) Sheet http://cpiaero.com/role/MajorCustomersDetailsNarrative MAJOR CUSTOMERS (Details Narrative) Details http://cpiaero.com/role/MajorCustomers 42 false false R43.htm 00000043 - Disclosure - Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows: (Details) Sheet http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows: (Details) Details 43 false false R44.htm 00000044 - Disclosure - The following table sets forth the ROU assets and operating lease liabilities as of: (Details) Sheet http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails The following table sets forth the ROU assets and operating lease liabilities as of: (Details) Details 44 false false R45.htm 00000045 - Disclosure - LEASES (Details Narrative) Sheet http://cpiaero.com/role/LeasesDetailsNarrative LEASES (Details Narrative) Details http://cpiaero.com/role/LeasesTables 45 false false R46.htm 00000046 - Disclosure - INCOME TAXES (Details Narrative) Sheet http://cpiaero.com/role/IncomeTaxesDetailsNarrative INCOME TAXES (Details Narrative) Details http://cpiaero.com/role/IncomeTaxes 46 false false R47.htm 00000047 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details Narrative) Sheet http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative COMMITMENTS AND CONTINGENCIES (Details Narrative) Details http://cpiaero.com/role/CommitmentsAndContingencies 47 false false All Reports Book All Reports cpi-10q_063023.htm cvu-20230630.xsd cvu-20230630_cal.xml cvu-20230630_def.xml cvu-20230630_lab.xml cvu-20230630_pre.xml ex31-1.htm ex31-2.htm ex32-1.htm cpiaerologo.jpg http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 64 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "cpi-10q_063023.htm": { "axisCustom": 0, "axisStandard": 16, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 491, "http://xbrl.sec.gov/dei/2023": 29 }, "contextCount": 135, "dts": { "calculationLink": { "local": [ "cvu-20230630_cal.xml" ] }, "definitionLink": { "local": [ "cvu-20230630_def.xml" ] }, "inline": { "local": [ "cpi-10q_063023.htm" ] }, "labelLink": { "local": [ "cvu-20230630_lab.xml" ] }, "presentationLink": { "local": [ "cvu-20230630_pre.xml" ] }, "schema": { "local": [ "cvu-20230630.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" ] } }, "elementCount": 349, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2023": 24, "http://xbrl.sec.gov/dei/2023": 5, "total": 29 }, "keyCustom": 11, "keyStandard": 190, "memberCustom": 20, "memberStandard": 18, "nsprefix": "cvu", "nsuri": "http://cpiaero.com/20230630", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "b", "p", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "00000001 - Document - Cover", "menuCat": "Cover", "order": "1", "role": "http://cpiaero.com/role/Cover", "shortName": "Cover", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "b", "p", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000010 - Disclosure - INVENTORY", "menuCat": "Notes", "order": "10", "role": "http://cpiaero.com/role/Inventory", "shortName": "INVENTORY", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000011 - Disclosure - STOCK-BASED COMPENSATION", "menuCat": "Notes", "order": "11", "role": "http://cpiaero.com/role/Stock-basedCompensation", "shortName": "STOCK-BASED COMPENSATION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000012 - Disclosure - FAIR VALUE", "menuCat": "Notes", "order": "12", "role": "http://cpiaero.com/role/FairValue", "shortName": "FAIR VALUE", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000013 - Disclosure - INCOME PER COMMON SHARE", "menuCat": "Notes", "order": "13", "role": "http://cpiaero.com/role/IncomePerCommonShare", "shortName": "INCOME PER COMMON SHARE", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000014 - Disclosure - DEBT", "menuCat": "Notes", "order": "14", "role": "http://cpiaero.com/role/Debt", "shortName": "DEBT", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000015 - Disclosure - MAJOR CUSTOMERS", "menuCat": "Notes", "order": "15", "role": "http://cpiaero.com/role/MajorCustomers", "shortName": "MAJOR CUSTOMERS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000016 - Disclosure - LEASES", "menuCat": "Notes", "order": "16", "role": "http://cpiaero.com/role/Leases", "shortName": "LEASES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000017 - Disclosure - INCOME TAXES", "menuCat": "Notes", "order": "17", "role": "http://cpiaero.com/role/IncomeTaxes", "shortName": "INCOME TAXES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000018 - Disclosure - COMMITMENTS AND CONTINGENCIES", "menuCat": "Notes", "order": "18", "role": "http://cpiaero.com/role/CommitmentsAndContingencies", "shortName": "COMMITMENTS AND CONTINGENCIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000019 - Disclosure - INTERIM FINANCIAL STATEMENTS (Policies)", "menuCat": "Policies", "order": "19", "role": "http://cpiaero.com/role/InterimFinancialStatementsPolicies", "shortName": "INTERIM FINANCIAL STATEMENTS (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:Cash", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited)", "menuCat": "Statements", "order": "2", "role": "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:Cash", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000020 - Disclosure - REVENUE RECOGNITION (Tables)", "menuCat": "Tables", "order": "20", "role": "http://cpiaero.com/role/RevenueRecognitionTables", "shortName": "REVENUE RECOGNITION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000021 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Tables)", "menuCat": "Tables", "order": "21", "role": "http://cpiaero.com/role/ContractAssetsAndLiabilitiesTables", "shortName": "CONTRACT ASSETS AND LIABILITIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000022 - Disclosure - INVENTORY (Tables)", "menuCat": "Tables", "order": "22", "role": "http://cpiaero.com/role/InventoryTables", "shortName": "INVENTORY (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000023 - Disclosure - STOCK-BASED COMPENSATION (Tables)", "menuCat": "Tables", "order": "23", "role": "http://cpiaero.com/role/Stock-basedCompensationTables", "shortName": "STOCK-BASED COMPENSATION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000024 - Disclosure - FAIR VALUE (Tables)", "menuCat": "Tables", "order": "24", "role": "http://cpiaero.com/role/FairValueTables", "shortName": "FAIR VALUE (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicByCommonClassTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000025 - Disclosure - INCOME PER COMMON SHARE (Tables)", "menuCat": "Tables", "order": "25", "role": "http://cpiaero.com/role/IncomePerCommonShareTables", "shortName": "INCOME PER COMMON SHARE (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicByCommonClassTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "us-gaap:LongTermDebtTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000026 - Disclosure - DEBT (Tables)", "menuCat": "Tables", "order": "26", "role": "http://cpiaero.com/role/DebtTables", "shortName": "DEBT (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:LongTermDebtTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000027 - Disclosure - LEASES (Tables)", "menuCat": "Tables", "order": "27", "role": "http://cpiaero.com/role/LeasesTables", "shortName": "LEASES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "span", "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:CashUninsuredAmount", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000028 - Disclosure - INTERIM FINANCIAL STATEMENTS (Details Narrative)", "menuCat": "Details", "order": "28", "role": "http://cpiaero.com/role/InterimFinancialStatementsDetailsNarrative", "shortName": "INTERIM FINANCIAL STATEMENTS (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:CashUninsuredAmount", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000029 - Disclosure - The following tables present the Company\u2019s revenue disaggregated by contract type and revenue recognition method: (Details)", "menuCat": "Details", "order": "29", "role": "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails", "shortName": "The following tables present the Company\u2019s revenue disaggregated by contract type and revenue recognition method: (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30_us-gaap_TransferredOverTimeMember", "decimals": "0", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "USDPShares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical)", "menuCat": "Statements", "order": "3", "role": "http://cpiaero.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "USDPShares", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "span", "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30_2023-07-01", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000030 - Disclosure - REVENUE RECOGNITION (Details Narrative)", "menuCat": "Details", "order": "30", "role": "http://cpiaero.com/role/RevenueRecognitionDetailsNarrative", "shortName": "REVENUE RECOGNITION (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30_2023-07-01", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000031 - Disclosure - Schedule of contract assets and liabilities (Details)", "menuCat": "Details", "order": "31", "role": "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails", "shortName": "Schedule of contract assets and liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "span", "p", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000032 - Disclosure - CONTRACT ASSETS AND LIABILITIES (Details Narrative)", "menuCat": "Details", "order": "32", "role": "http://cpiaero.com/role/ContractAssetsAndLiabilitiesDetailsNarrative", "shortName": "CONTRACT ASSETS AND LIABILITIES (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterials", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000033 - Disclosure - The components of inventory consisted of the following: (Details)", "menuCat": "Details", "order": "33", "role": "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails", "shortName": "The components of inventory consisted of the following: (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterials", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000034 - Disclosure - Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details)", "menuCat": "Details", "order": "34", "role": "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails", "shortName": "Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows: (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30_us-gaap_CostOfSalesMember", "decimals": "0", "lang": null, "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2022-12-31_us-gaap_RestrictedStockMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000035 - Disclosure - The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023: (Details)", "menuCat": "Details", "order": "35", "role": "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details", "shortName": "The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023: (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2022-12-31_us-gaap_RestrictedStockMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "span", "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000036 - Disclosure - STOCK-BASED COMPENSATION (Details Narrative)", "menuCat": "Details", "order": "36", "role": "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative", "shortName": "STOCK-BASED COMPENSATION (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30_us-gaap_CarryingReportedAmountFairValueDisclosureMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentFairValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000037 - Disclosure - At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments. (Details)", "menuCat": "Details", "order": "37", "role": "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details", "shortName": "At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments. (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:FairValueByBalanceSheetGroupingTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30_us-gaap_CarryingReportedAmountFairValueDisclosureMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentFairValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000038 - Disclosure - For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows: (Details)", "menuCat": "Details", "order": "38", "role": "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails", "shortName": "For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows: (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R39": { "firstAnchor": { "ancestors": [ "span", "span", "p", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000039 - Disclosure - INCOME PER COMMON SHARE (Details Narrative)", "menuCat": "Details", "order": "39", "role": "http://cpiaero.com/role/IncomePerCommonShareDetailsNarrative", "shortName": "INCOME PER COMMON SHARE (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "p", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED)", "menuCat": "Statements", "order": "4", "role": "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "0", "lang": null, "name": "us-gaap:CostOfRevenue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000040 - Disclosure - The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows: (Details)", "menuCat": "Details", "order": "40", "role": "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails", "shortName": "The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows: (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LinesOfCreditCurrent", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000041 - Disclosure - DEBT (Details Narrative)", "menuCat": "Details", "order": "41", "role": "http://cpiaero.com/role/DebtDetailsNarrative", "shortName": "DEBT (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:LongTermDebtTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2022-12-31", "decimals": "0", "lang": null, "name": "us-gaap:LongTermDebtAndCapitalLeaseObligations", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-012023-06-30_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember_custom_CustomerOneMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000042 - Disclosure - MAJOR CUSTOMERS (Details Narrative)", "menuCat": "Details", "order": "42", "role": "http://cpiaero.com/role/MajorCustomersDetailsNarrative", "shortName": "MAJOR CUSTOMERS (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-012023-06-30_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember_custom_CustomerOneMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000043 - Disclosure - Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows: (Details)", "menuCat": "Details", "order": "43", "role": "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails", "shortName": "Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows: (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000044 - Disclosure - The following table sets forth the ROU assets and operating lease liabilities as of: (Details)", "menuCat": "Details", "order": "44", "role": "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails", "shortName": "The following table sets forth the ROU assets and operating lease liabilities as of: (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R45": { "firstAnchor": { "ancestors": [ "span", "p", "us-gaap:LesseeOperatingLeasesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseExpirationDate1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000045 - Disclosure - LEASES (Details Narrative)", "menuCat": "Details", "order": "45", "role": "http://cpiaero.com/role/LeasesDetailsNarrative", "shortName": "LEASES (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:LesseeOperatingLeasesTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseExpirationDate1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-04-012023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:IncomeTaxExpenseBenefit", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000046 - Disclosure - INCOME TAXES (Details Narrative)", "menuCat": "Details", "order": "46", "role": "http://cpiaero.com/role/IncomeTaxesDetailsNarrative", "shortName": "INCOME TAXES (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": "INF", "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2021-05-192021-05-20", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LitigationSettlementAmountAwardedToOtherParty", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000047 - Disclosure - COMMITMENTS AND CONTINGENCIES (Details Narrative)", "menuCat": "Details", "order": "47", "role": "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative", "shortName": "COMMITMENTS AND CONTINGENCIES (Details Narrative)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2021-05-192021-05-20", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LitigationSettlementAmountAwardedToOtherParty", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "AsOf2021-12-31_us-gaap_CommonStockMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) (UNAUDITED)", "menuCat": "Statements", "order": "5", "role": "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT) (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2022-01-012022-03-31_us-gaap_RetainedEarningsMember", "decimals": "0", "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)", "menuCat": "Statements", "order": "6", "role": "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": "0", "lang": null, "name": "us-gaap:DepreciationDepletionAndAmortization", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000007 - Disclosure - INTERIM FINANCIAL STATEMENTS", "menuCat": "Notes", "order": "7", "role": "http://cpiaero.com/role/InterimFinancialStatements", "shortName": "INTERIM FINANCIAL STATEMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000008 - Disclosure - REVENUE RECOGNITION", "menuCat": "Notes", "order": "8", "role": "http://cpiaero.com/role/RevenueRecognition", "shortName": "REVENUE RECOGNITION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "00000009 - Disclosure - CONTRACT ASSETS AND LIABILITIES", "menuCat": "Notes", "order": "9", "role": "http://cpiaero.com/role/ContractAssetsAndLiabilities", "shortName": "CONTRACT ASSETS AND LIABILITIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "cpi-10q_063023.htm", "contextRef": "From2023-01-01to2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "cvu:ContractWithCustomerAssetAndLiabilityTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 38, "tag": { "cvu_AerostructureMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Aerostructure [Member]", "label": "Aerostructure [Member]" } } }, "localname": "AerostructureMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "domainItemType" }, "cvu_AerosystemsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Aerosystems [Member]", "label": "Aerosystems [Member]" } } }, "localname": "AerosystemsMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "domainItemType" }, "cvu_AmendmentFee": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The element represents amendment fee.", "label": "Amendment fee" } } }, "localname": "AmendmentFee", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "cvu_BankUnitedMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Bank United [Member]", "label": "Bank United [Member]" } } }, "localname": "BankUnitedMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_CashPaidDuringPeriodForAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash paid during the period for:" } } }, "localname": "CashPaidDuringPeriodForAbstract", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "cvu_ContractAssetsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract Assets [Member]", "label": "Contract Assets [Member]" } } }, "localname": "ContractAssetsMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_ContractWithCustomerAssetAndLiabilityTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of contract assets and contract liabilities from contract with customer.", "label": "CONTRACT ASSETS AND LIABILITIES" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTextBlock", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilities" ], "xbrltype": "textBlockItemType" }, "cvu_CustomerFiveMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Customer Five.", "label": "Customer Five [Member]" } } }, "localname": "CustomerFiveMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_CustomerFourMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Customer Four.", "label": "Customer Four [Member]" } } }, "localname": "CustomerFourMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_CustomerOneMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Customer One.", "label": "Customer One [Member]" } } }, "localname": "CustomerOneMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_CustomerThreeMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Customer Three.", "label": "Customer Three [Member]" } } }, "localname": "CustomerThreeMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_CustomerTwoMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Customer Two.", "label": "Customer Two [Member]" } } }, "localname": "CustomerTwoMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_DirectorsAndOfficersInsuranceRetentionAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The element represents directors and officers insurance retention amount.", "label": "Directors and officers insurance retention amount" } } }, "localname": "DirectorsAndOfficersInsuranceRetentionAmount", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "cvu_DisclosureContractAssetsAndLiabilitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Contract Assets And Liabilities", "verboseLabel": "Schedule Of Contract Assets And Liabilities" } } }, "localname": "DisclosureContractAssetsAndLiabilitiesAbstract", "nsuri": "http://cpiaero.com/20230630", "xbrltype": "stringItemType" }, "cvu_DisclosureLeasesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Leases", "terseLabel": "Following Table Sets Forth Rou Assets And Operating Lease Liabilities As Of", "verboseLabel": "Future Minimum Lease Payments Under Non-cancellable Operating Leases As Of June 30 2023 Were As Follows" } } }, "localname": "DisclosureLeasesAbstract", "nsuri": "http://cpiaero.com/20230630", "xbrltype": "stringItemType" }, "cvu_FirstInstallmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "First Installment [Member]", "label": "First Installment [Member]" } } }, "localname": "FirstInstallmentMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_ForfeitedRestrictedStockMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Forfeited Restricted Stock.", "label": "Forfeited Restricted Stock [Member]" } } }, "localname": "ForfeitedRestrictedStockMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_IncreaseDecreaseInLitigationSettlementObligation": { "auth_ref": [], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 16.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in litigation settlement obligation.", "label": "(Decrease) increase in settlement of litigation obligation" } } }, "localname": "IncreaseDecreaseInLitigationSettlementObligation", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "cvu_IncreaseDecreaseInLossReserve": { "auth_ref": [], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 19.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of increase (decrease) in loss reserve.", "label": "Decrease in loss reserve" } } }, "localname": "IncreaseDecreaseInLossReserve", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "cvu_KittingAndSupplyChainManagementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Kitting and Supply Chain Management [Member]", "label": "Kitting and Supply Chain Management [Member]" } } }, "localname": "KittingAndSupplyChainManagementMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "domainItemType" }, "cvu_LesseeOperatingLeasesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of lessee operating leases.", "label": "The following table sets forth the ROU assets and operating lease liabilities as of:" } } }, "localname": "LesseeOperatingLeasesTableTextBlock", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "cvu_MaximumLeverageRatio": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Maximum leverage ratio for trailing four fiscal quarter periods.", "label": "Maximum leverage ratio" } } }, "localname": "MaximumLeverageRatio", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "pureItemType" }, "cvu_MinimumAdjustedEbitda": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Minimum adjusted EBITDA at the end of each fiscal quarter.", "label": "Minimum adjusted EBITDA" } } }, "localname": "MinimumAdjustedEbitda", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "cvu_MinimumDebtServiceCoverageRatio": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Minimum debt service coverage ratio for trailing four fiscal quarter periods.", "label": "Minimum debt service coverage ratio" } } }, "localname": "MinimumDebtServiceCoverageRatio", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "pureItemType" }, "cvu_NetContractAssets": { "auth_ref": [], "calculation": { "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The element represents net contract assets.", "label": "Net Contract Assets", "totalLabel": "Net Contract assets" } } }, "localname": "NetContractAssets", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "cvu_NetIncomeRequiredUnderAgreement": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The element represents net income required under agreement.", "label": "Net income required under agreement" } } }, "localname": "NetIncomeRequiredUnderAgreement", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "cvu_PeriodOneMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period One [Member]", "label": "Period One [Member]" } } }, "localname": "PeriodOneMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_PeriodThreeMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period Three [Member]", "label": "Period Three [Member]" } } }, "localname": "PeriodThreeMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_PeriodTwoMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period Two [Member]", "label": "Period Two [Member]" } } }, "localname": "PeriodTwoMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_RestrictedSharesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Common shares that are subject to contractual restrictions between the Company and the shareholder,", "label": "Restricted Shares [Member]" } } }, "localname": "RestrictedSharesMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "domainItemType" }, "cvu_RevolvingLoanAndTermLoanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Revolving Loan and Term Loan [Member]", "label": "Revolving Loan and Term Loan [Member]" } } }, "localname": "RevolvingLoanAndTermLoanMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_SecondInstallmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Second Installment [Member]", "label": "Second Installment [Member]" } } }, "localname": "SecondInstallmentMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_TermLoanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Term loan [Member]", "label": "Term loan [Member]" } } }, "localname": "TermLoanMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "cvu_UnrestrictedSharesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Common shares not subject to any contractual restrictions between the Company and the shareholder.", "label": "Unrestricted Shares [Member]" } } }, "localname": "UnrestrictedSharesMember", "nsuri": "http://cpiaero.com/20230630", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "domainItemType" }, "dei_AmendmentDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of changes contained within amended document.", "label": "Amendment Description" } } }, "localname": "AmendmentDescription", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "stringItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_AnnualInformationForm": { "auth_ref": [ "r499" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form.", "label": "Annual Information Form" } } }, "localname": "AnnualInformationForm", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_AuditedAnnualFinancialStatements": { "auth_ref": [ "r499" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements.", "label": "Audited Annual Financial Statements" } } }, "localname": "AuditedAnnualFinancialStatements", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_CountryRegion": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Region code of country", "label": "Country Region" } } }, "localname": "CountryRegion", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cover page.", "label": "Cover [Abstract]" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2023", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentAccountingStandard": { "auth_ref": [ "r498" ], "lang": { "en-us": { "role": { "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'.", "label": "Document Accounting Standard" } } }, "localname": "DocumentAccountingStandard", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "accountingStandardItemType" }, "dei_DocumentAnnualReport": { "auth_ref": [ "r496", "r498", "r499" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an annual report.", "label": "Document Annual Report" } } }, "localname": "DocumentAnnualReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentPeriodStartDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format.", "label": "Document Period Start Date" } } }, "localname": "DocumentPeriodStartDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r497" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentRegistrationStatement": { "auth_ref": [ "r485" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a registration statement.", "label": "Document Registration Statement" } } }, "localname": "DocumentRegistrationStatement", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentShellCompanyEventDate": { "auth_ref": [ "r498" ], "lang": { "en-us": { "role": { "documentation": "Date of event requiring a shell company report.", "label": "Document Shell Company Event Date" } } }, "localname": "DocumentShellCompanyEventDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentShellCompanyReport": { "auth_ref": [ "r498" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act.", "label": "Document Shell Company Report" } } }, "localname": "DocumentShellCompanyReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r500" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "submissionTypeItemType" }, "dei_DocumentsIncorporatedByReferenceTextBlock": { "auth_ref": [ "r488" ], "lang": { "en-us": { "role": { "documentation": "Documents incorporated by reference.", "label": "Documents Incorporated by Reference [Text Block]" } } }, "localname": "DocumentsIncorporatedByReferenceTextBlock", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "textBlockItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressAddressLine2": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 2 such as Street or Suite number", "label": "Entity Address, Address Line Two" } } }, "localname": "EntityAddressAddressLine2", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressAddressLine3": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 3 such as an Office Park", "label": "Entity Address, Address Line Three" } } }, "localname": "EntityAddressAddressLine3", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCountry": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "ISO 3166-1 alpha-2 country code.", "label": "Entity Address, Country" } } }, "localname": "EntityAddressCountry", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "countryCodeItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityBankruptcyProceedingsReportingCurrent": { "auth_ref": [ "r491" ], "lang": { "en-us": { "role": { "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.", "label": "Entity Bankruptcy Proceedings, Reporting Current" } } }, "localname": "EntityBankruptcyProceedingsReportingCurrent", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r487" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r487" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityExTransitionPeriod": { "auth_ref": [ "r504" ], "lang": { "en-us": { "role": { "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards.", "label": "Elected Not To Use the Extended Transition Period" } } }, "localname": "EntityExTransitionPeriod", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r487" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r501" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityPrimarySicNumber": { "auth_ref": [ "r499" ], "lang": { "en-us": { "role": { "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity.", "label": "Entity Primary SIC Number" } } }, "localname": "EntityPrimarySicNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "sicNumberItemType" }, "dei_EntityPublicFloat": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Entity Public Float" } } }, "localname": "EntityPublicFloat", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "monetaryItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r487" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r487" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r487" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r487" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "employerIdItemType" }, "dei_EntityVoluntaryFilers": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Entity Voluntary Filers" } } }, "localname": "EntityVoluntaryFilers", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityWellKnownSeasonedIssuer": { "auth_ref": [ "r502" ], "lang": { "en-us": { "role": { "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.", "label": "Entity Well-known Seasoned Issuer" } } }, "localname": "EntityWellKnownSeasonedIssuer", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_Extension": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Extension number for local phone number.", "label": "Extension" } } }, "localname": "Extension", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_NoTradingSymbolFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a security having no trading symbol.", "label": "No Trading Symbol Flag" } } }, "localname": "NoTradingSymbolFlag", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "trueItemType" }, "dei_OtherReportingStandardItemNumber": { "auth_ref": [ "r498" ], "lang": { "en-us": { "role": { "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS.", "label": "Other Reporting Standard Item Number" } } }, "localname": "OtherReportingStandardItemNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "otherReportingStandardItemNumberItemType" }, "dei_PreCommencementIssuerTenderOffer": { "auth_ref": [ "r492" ], "lang": { "en-us": { "role": { "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.", "label": "Pre-commencement Issuer Tender Offer" } } }, "localname": "PreCommencementIssuerTenderOffer", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_PreCommencementTenderOffer": { "auth_ref": [ "r493" ], "lang": { "en-us": { "role": { "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.", "label": "Pre-commencement Tender Offer" } } }, "localname": "PreCommencementTenderOffer", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r486" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "securityTitleItemType" }, "dei_Security12gTitle": { "auth_ref": [ "r490" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(g) registered security.", "label": "Title of 12(g) Security" } } }, "localname": "Security12gTitle", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r489" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_SecurityReportingObligation": { "auth_ref": [ "r494" ], "lang": { "en-us": { "role": { "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act.", "label": "Security Reporting Obligation" } } }, "localname": "SecurityReportingObligation", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "securityReportingObligationItemType" }, "dei_SolicitingMaterial": { "auth_ref": [ "r495" ], "lang": { "en-us": { "role": { "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.", "label": "Soliciting Material" } } }, "localname": "SolicitingMaterial", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "tradingSymbolItemType" }, "dei_WrittenCommunications": { "auth_ref": [ "r503" ], "lang": { "en-us": { "role": { "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.", "label": "Written Communications" } } }, "localname": "WrittenCommunications", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://cpiaero.com/role/Cover" ], "xbrltype": "booleanItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r170", "r464", "r540", "r553", "r554" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "stringItemType" }, "srt_MinimumMember": { "auth_ref": [ "r183", "r184", "r185", "r186", "r237", "r330", "r354", "r381", "r382", "r435", "r436", "r437", "r438", "r439", "r447", "r448", "r454", "r461", "r469", "r474", "r538", "r546", "r547", "r548", "r549", "r550", "r551" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r170", "r464", "r540", "r553", "r554" ], "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r168", "r332", "r348", "r349", "r350", "r351", "r352", "r353", "r449", "r462", "r473", "r509", "r534", "r535", "r540", "r553" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r168", "r332", "r348", "r349", "r350", "r351", "r352", "r353", "r449", "r462", "r473", "r509", "r534", "r535", "r540", "r553" ], "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r183", "r184", "r185", "r186", "r236", "r237", "r265", "r266", "r267", "r329", "r330", "r354", "r381", "r382", "r435", "r436", "r437", "r438", "r439", "r447", "r448", "r454", "r461", "r469", "r474", "r477", "r531", "r538", "r547", "r548", "r549", "r550", "r551" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r183", "r184", "r185", "r186", "r236", "r237", "r265", "r266", "r267", "r329", "r330", "r354", "r381", "r382", "r435", "r436", "r437", "r438", "r439", "r447", "r448", "r454", "r461", "r469", "r474", "r477", "r531", "r538", "r547", "r548", "r549", "r550", "r551" ], "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r12", "r472" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableMember": { "auth_ref": [ "r445" ], "lang": { "en-us": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold.", "label": "Accounts Receivable [Member]" } } }, "localname": "AccountsReceivableMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r171", "r172" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts receivable, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r16" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued expenses" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r52" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapitalCommonStock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r274", "r275", "r276", "r368", "r523", "r524", "r525", "r541", "r557" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to net cash provided by (used in) operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r269", "r277" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "Total stock-based compensation expense", "negatedLabel": "Stock-based compensation" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative", "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfFinancingCosts": { "auth_ref": [ "r62", "r211", "r319", "r518" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense attributable to debt issuance costs.", "label": "Amortization of debt issuance cost" } } }, "localname": "AmortizationOfFinancingCosts", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r80", "r101", "r119", "r154", "r162", "r166", "r173", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r295", "r297", "r311", "r337", "r404", "r472", "r484", "r536", "r537", "r544" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total Assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ASSETS", "verboseLabel": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r97", "r106", "r119", "r173", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r295", "r297", "r311", "r472", "r536", "r537", "r544" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total Current Assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current Assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Presentation" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/InterimFinancialStatementsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CarryingReportedAmountFairValueDisclosureMember": { "auth_ref": [ "r40", "r41" ], "lang": { "en-us": { "role": { "documentation": "Measured as reported on the statement of financial position (balance sheet).", "label": "Reported Value Measurement [Member]" } } }, "localname": "CarryingReportedAmountFairValueDisclosureMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details" ], "xbrltype": "domainItemType" }, "us-gaap_Cash": { "auth_ref": [ "r89", "r339", "r379", "r399", "r472", "r484", "r510" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Cash" } } }, "localname": "Cash", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "auth_ref": [ "r24", "r68", "r118" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations", "periodEndLabel": "Cash at end of period", "periodStartLabel": "Cash at beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "auth_ref": [ "r1", "r68" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect", "totalLabel": "Net decrease in cash" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashUninsuredAmount": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of cash as of the balance sheet date that is not insured by the Federal Deposit Insurance Corporation.", "label": "Uninsured balance" } } }, "localname": "CashUninsuredAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/InterimFinancialStatementsDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_ClassOfStockDomain": { "auth_ref": [ "r94", "r102", "r103", "r104", "r119", "r138", "r142", "r144", "r146", "r152", "r153", "r173", "r187", "r189", "r190", "r191", "r194", "r195", "r214", "r215", "r216", "r217", "r218", "r311", "r362", "r363", "r364", "r365", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r380", "r391", "r413", "r432", "r440", "r441", "r442", "r443", "r444", "r505", "r519", "r527" ], "lang": { "en-us": { "role": { "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock." } } }, "localname": "ClassOfStockDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r75", "r180", "r181", "r446", "r532" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "COMMITMENTS AND CONTINGENCIES" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r475", "r476", "r477", "r479", "r480", "r481", "r482", "r523", "r524", "r541", "r555", "r557" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r51" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common stock, par value (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r51", "r391" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common stock, authorized" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r51" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common stock, issued" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r7", "r51", "r391", "r410", "r557", "r558" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common stock, outstanding", "periodEndLabel": "Beginning balance (in shares)", "periodStartLabel": "Beginning balance (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r51", "r340", "r472" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common stock - $.001 par value; authorized 50,000,000 shares, 12,727,167 and 12,506,795 shares, respectively, issued and outstanding" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r30", "r32", "r42", "r43", "r170", "r445" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r30", "r32", "r42", "r43", "r170", "r360", "r445" ], "lang": { "en-us": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r30", "r32", "r42", "r43", "r170", "r445", "r507" ], "lang": { "en-us": { "role": { "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.", "label": "Concentration Risk Type [Axis]" } } }, "localname": "ConcentrationRiskByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "auth_ref": [ "r73" ], "lang": { "en-us": { "role": { "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.", "label": "MAJOR CUSTOMERS" } } }, "localname": "ConcentrationRiskDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomers" ], "xbrltype": "textBlockItemType" }, "us-gaap_ConcentrationRiskLineItems": { "auth_ref": [ "r445" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Concentration Risk [Line Items]" } } }, "localname": "ConcentrationRiskLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r30", "r32", "r42", "r43", "r170" ], "lang": { "en-us": { "role": { "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.", "label": "Concentration Risk, Percentage" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTable": { "auth_ref": [ "r29", "r30", "r32", "r33", "r42", "r79", "r445" ], "lang": { "en-us": { "role": { "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.", "label": "Concentration Risk [Table]" } } }, "localname": "ConcentrationRiskTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r30", "r32", "r42", "r43", "r170", "r445" ], "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." } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r539" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of contract assets and liabilities" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetNet": { "auth_ref": [ "r220", "r222", "r233" ], "calculation": { "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": { "order": 1.0, "parentTag": "cvu_NetContractAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Contract with Customer, Asset, after Allowance for Credit Loss", "verboseLabel": "Contract assets" } } }, "localname": "ContractWithCustomerAssetNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "auth_ref": [ "r220", "r222", "r233" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.", "label": "Contract assets" } } }, "localname": "ContractWithCustomerAssetNetCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r220", "r221", "r233" ], "calculation": { "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": { "order": 2.0, "parentTag": "cvu_NetContractAssets", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Contract with Customer, Liability", "verboseLabel": "Contract liabilities" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r220", "r221", "r233" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract liabilities" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r234" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Revenue recognized that was included in contract liabilities" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ContractAssetsAndLiabilitiesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfRevenue": { "auth_ref": [ "r64", "r119", "r173", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r311", "r536" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.", "label": "Cost of sales" } } }, "localname": "CostOfRevenue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfSalesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing cost of sales.", "label": "Cost of Sales [Member]" } } }, "localname": "CostOfSalesMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r31", "r170" ], "lang": { "en-us": { "role": { "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.", "label": "Customer Concentration Risk [Member]" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Abstract]" } } }, "localname": "DebtDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r10", "r48", "r49", "r81", "r82", "r121", "r196", "r197", "r198", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r207", "r208", "r209", "r210", "r211", "r320", "r456", "r457", "r458", "r459", "r460", "r520" ], "lang": { "en-us": { "role": { "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.", "label": "Debt Instrument [Axis]" } } }, "localname": "DebtInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "Prime rate Plus" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentCarryingAmount": { "auth_ref": [ "r10", "r82", "r212" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.", "label": "Aggregate principal balance" } } }, "localname": "DebtInstrumentCarryingAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentFaceAmount": { "auth_ref": [ "r44", "r46", "r196", "r320", "r457", "r458" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Face (par) amount of debt instrument at time of issuance.", "label": "Debt instrument, face amount" } } }, "localname": "DebtInstrumentFaceAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentFairValue": { "auth_ref": [ "r204", "r310", "r457", "r458" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable.", "label": "Short-term borrowings and long-term debt" } } }, "localname": "DebtInstrumentFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "auth_ref": [ "r18", "r197" ], "lang": { "en-us": { "role": { "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.", "label": "Debt Instrument, Interest Rate, Stated Percentage" } } }, "localname": "DebtInstrumentInterestRateStatedPercentage", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r19", "r121", "r196", "r197", "r198", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r207", "r208", "r209", "r210", "r211", "r320", "r456", "r457", "r458", "r459", "r460", "r520" ], "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." } } }, "localname": "DebtInstrumentNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_DeferredFinanceCostsNoncurrentNet": { "auth_ref": [ "r45" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Debt issuance costs" } } }, "localname": "DeferredFinanceCostsNoncurrentNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r279", "r280" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.", "label": "Deferred tax asset" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r3", "r158" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.", "label": "Depreciation and amortization" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [ "r232", "r462", "r463", "r464", "r465", "r466", "r467", "r468" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r232", "r462", "r463", "r464", "r465", "r466", "r467", "r468" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r540" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "The following tables present the Company\u2019s revenue disaggregated by contract type and revenue recognition method:" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/RevenueRecognitionTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r238", "r242", "r270", "r271", "r273", "r470" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "STOCK-BASED COMPENSATION" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Abstract]" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r113", "r127", "r128", "r129", "r130", "r131", "r136", "r138", "r144", "r145", "r146", "r150", "r306", "r307", "r334", "r346", "r451" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Income per common share, basic", "verboseLabel": "Income (loss) per common share, basic" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income per common share, basic:" } } }, "localname": "EarningsPerShareBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasicLineItems": { "auth_ref": [ "r138", "r142", "r144" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]" } } }, "localname": "EarningsPerShareBasicLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r113", "r127", "r128", "r129", "r130", "r131", "r138", "r144", "r145", "r146", "r150", "r306", "r307", "r334", "r346", "r451" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Income (loss) per common share, diluted", "verboseLabel": "Income per common share, diluted" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDilutedAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income per common share, diluted" } } }, "localname": "EarningsPerShareDilutedAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r135", "r147", "r148", "r149" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "INCOME PER COMMON SHARE" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/IncomePerCommonShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r282" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective income tax rate" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "auth_ref": [ "r120", "r282", "r291" ], "lang": { "en-us": { "role": { "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).", "label": "Statutory income tax rate" } } }, "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]" } } }, "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r272" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.", "label": "Unamortized stock-based compensation costs" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r7", "r95", "r109", "r110", "r111", "r122", "r123", "r124", "r126", "r132", "r134", "r151", "r174", "r175", "r219", "r274", "r275", "r276", "r287", "r288", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r312", "r313", "r314", "r315", "r316", "r317", "r328", "r355", "r356", "r357", "r368", "r432" ], "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." } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_EstimateOfFairValueFairValueDisclosureMember": { "auth_ref": [ "r204", "r310", "r457", "r458" ], "lang": { "en-us": { "role": { "documentation": "Measured as an estimate of fair value.", "label": "Estimate of Fair Value Measurement [Member]" } } }, "localname": "EstimateOfFairValueFairValueDisclosureMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]" } } }, "localname": "FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByBalanceSheetGroupingTable": { "auth_ref": [ "r39", "r40", "r41" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.", "label": "Fair Value, by Balance Sheet Grouping [Table]" } } }, "localname": "FairValueByBalanceSheetGroupingTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByBalanceSheetGroupingTextBlock": { "auth_ref": [ "r39", "r40" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.", "label": "At June 30, 2023 and December 31, 2022, the fair values of cash, accounts receivable and accounts payable approximated their carrying values because of the short-term nature of these instruments." } } }, "localname": "FairValueByBalanceSheetGroupingTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FairValueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueByMeasurementBasisAxis": { "auth_ref": [ "r9", "r39", "r204", "r457", "r458" ], "lang": { "en-us": { "role": { "documentation": "Information by measurement basis.", "label": "Measurement Basis [Axis]" } } }, "localname": "FairValueByMeasurementBasisAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Abstract]" } } }, "localname": "FairValueDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r308" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.", "label": "FAIR VALUE" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FairValue" ], "xbrltype": "textBlockItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r99", "r177", "r333", "r455", "r472", "r529", "r530" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r63", "r119", "r154", "r161", "r165", "r167", "r173", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r311", "r453", "r536" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r0", "r60", "r84", "r154", "r161", "r165", "r167", "r335", "r344", "r453" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income before provision for income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r178", "r179", "r416" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative", "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r179", "r416" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement." } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative", "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r120", "r278", "r283", "r284", "r286", "r289", "r292", "r293", "r294", "r367" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r88", "r92", "r133", "r134", "r159", "r281", "r290", "r347" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Provision for income taxes" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r25" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income taxes" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesReceivable": { "auth_ref": [ "r47", "r511" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Refundable income taxes" } } }, "localname": "IncomeTaxesReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Increase (decrease) in accounts payable and accrued expenses" } } }, "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "(Increase) decrease in accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 18.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Increase (decrease) in income taxes payable" } } }, "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r517" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Increase (Decrease) in Contract with Customer, Asset", "negatedLabel": "Increase in contract assets" } } }, "localname": "IncreaseDecreaseInContractWithCustomerAsset", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r331", "r517" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Increase (decrease) in contract liabilities" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Increase (Decrease) in Deferred Income Taxes", "negatedLabel": "Deferred income taxes" } } }, "localname": "IncreaseDecreaseInDeferredIncomeTaxes", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.", "label": "Increase (Decrease) in Income Taxes Receivable", "negatedLabel": "Increase in refundable income taxes" } } }, "localname": "IncreaseDecreaseInIncomeTaxesReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInsuranceSettlementsReceivable": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Increase (Decrease) in Insurance Settlements Receivable", "negatedLabel": "Decrease (increase) in insurance receivable" } } }, "localname": "IncreaseDecreaseInInsuranceSettlementsReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "Increase (Decrease) in Inventories", "negatedLabel": "Decrease in inventory" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInLeasingReceivables": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the amount due from lessees arising from lease agreements.", "label": "Increase (Decrease) in Leasing Receivables", "negatedLabel": "Decrease in operating right-of-use assets" } } }, "localname": "IncreaseDecreaseInLeasingReceivables", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Changes in operating assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "auth_ref": [ "r508", "r517" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 17.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligation for operating lease.", "label": "Decrease in lease liabilities" } } }, "localname": "IncreaseDecreaseInOperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Decrease in prepaid expenses and other assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r139", "r140", "r141", "r146", "r241" ], "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.", "label": "Incremental shares used in calculation of diluted income per common share" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/IncomePerCommonShareDetailsNarrative" ], "xbrltype": "sharesItemType" }, "us-gaap_InsuranceSettlementsReceivableCurrent": { "auth_ref": [ "r511" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Insurance recovery receivable" } } }, "localname": "InsuranceSettlementsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r45", "r87", "r112", "r157", "r318", "r417", "r483", "r556" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest expense" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r114", "r116", "r117" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.", "label": "Interest" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Abstract]" } } }, "localname": "InventoryDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r176" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.", "label": "INVENTORY" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Inventory" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryFinishedGoods": { "auth_ref": [ "r512" ], "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails": { "order": 3.0, "parentTag": "us-gaap_InventoryGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.", "label": "Finished goods" } } }, "localname": "InventoryFinishedGoods", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryGross": { "auth_ref": [ "r515" ], "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Inventory, Gross", "totalLabel": "Gross inventory" } } }, "localname": "InventoryGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r105", "r450", "r472" ], "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory", "totalLabel": "Inventory, net" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails", "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterials": { "auth_ref": [ "r514" ], "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Raw materials" } } }, "localname": "InventoryRawMaterials", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryValuationReserves": { "auth_ref": [ "r34", "r515" ], "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of valuation reserve for inventory.", "label": "Inventory Valuation Reserves", "negatedLabel": "Inventory reserves" } } }, "localname": "InventoryValuationReserves", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcess": { "auth_ref": [ "r513" ], "calculation": { "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Work in progress" } } }, "localname": "InventoryWorkInProcess", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ComponentsOfInventoryConsistedOfFollowingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseExpirationDate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Date which lease or group of leases is set to expire, in YYYY-MM-DD format.", "label": "Lease Expiration Date", "verboseLabel": "Expiration date" } } }, "localname": "LeaseExpirationDate1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/LeasesDetailsNarrative" ], "xbrltype": "dateItemType" }, "us-gaap_LegalFees": { "auth_ref": [ "r65" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Attorneys' fees" } } }, "localname": "LegalFees", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r543" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.", "label": "Future minimum lease payments under non-cancellable operating leases as of June 30, 2023 were as follows:" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r327" ], "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "Lessee, Operating Lease, Liability, to be Paid", "totalLabel": "Total undiscounted operating lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "auth_ref": [ "r327" ], "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails": { "order": 6.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after 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).", "label": "Thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r327" ], "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "verboseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r327" ], "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2027" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r327" ], "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2026" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r327" ], "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "verboseLabel": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r543" ], "calculation": { "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "verboseLabel": "Remainder of 2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r327" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less imputed interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeasesTextBlock": { "auth_ref": [ "r321" ], "lang": { "en-us": { "role": { "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.", "label": "LEASES" } } }, "localname": "LesseeOperatingLeasesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Leases" ], "xbrltype": "textBlockItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r15", "r119", "r173", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r296", "r297", "r298", "r311", "r390", "r452", "r484", "r536", "r544", "r545" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities [Default Label]", "totalLabel": "Total Liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities" } } }, "localname": "LiabilitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r56", "r83", "r342", "r472", "r521", "r528", "r542" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total Liabilities and Shareholders\u2019 Equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "LIABILITIES AND SHAREHOLDERS\u2019 EQUITY" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r17", "r98", "r119", "r173", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r296", "r297", "r298", "r311", "r472", "r536", "r544", "r545" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total Current Liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current Liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCredit": { "auth_ref": [ "r10", "r82", "r552" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.", "label": "Outstanding loans" } } }, "localname": "LineOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityAxis": { "auth_ref": [ "r13", "r520" ], "lang": { "en-us": { "role": { "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.", "label": "Lender Name [Axis]" } } }, "localname": "LineOfCreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityExpirationDate1": { "auth_ref": [ "r13" ], "lang": { "en-us": { "role": { "documentation": "Date the credit facility terminates, in YYYY-MM-DD format.", "label": "Expiration date" } } }, "localname": "LineOfCreditFacilityExpirationDate1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "dateItemType" }, "us-gaap_LineOfCreditFacilityLenderDomain": { "auth_ref": [ "r13", "r520" ], "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." } } }, "localname": "LineOfCreditFacilityLenderDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_LineOfCreditFacilityLineItems": { "auth_ref": [ "r520" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Line of Credit Facility [Line Items]" } } }, "localname": "LineOfCreditFacilityLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r13" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.", "label": "Line of credit facility, maximum borrowing capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityTable": { "auth_ref": [ "r13", "r520" ], "lang": { "en-us": { "role": { "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.", "label": "Line of Credit Facility [Table]" } } }, "localname": "LineOfCreditFacilityTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_LinesOfCreditCurrent": { "auth_ref": [ "r48", "r81" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Current portion of line of credit" } } }, "localname": "LinesOfCreditCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LitigationReserveCurrent": { "auth_ref": [ "r20", "r533" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Litigation settlement obligation" } } }, "localname": "LitigationReserveCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LitigationSettlementAmountAwardedToOtherParty": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount awarded to other party in judgment or settlement of litigation.", "label": "Settlement amount" } } }, "localname": "LitigationSettlementAmountAwardedToOtherParty", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LitigationSettlementExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees.", "label": "Covered settlement amount" } } }, "localname": "LitigationSettlementExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CommitmentsAndContingenciesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r10", "r82", "r203", "r213", "r457", "r458", "r552" ], "calculation": { "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.", "label": "Long-Term Debt", "totalLabel": "Total" } } }, "localname": "LongTermDebt", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligations": { "auth_ref": [ "r10", "r338" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent.", "label": "Financing leases and notes payable" } } }, "localname": "LongTermDebtAndCapitalLeaseObligations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": { "auth_ref": [ "r16" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt and lease obligation, classified as current.", "label": "Financing leases and notes payable current" } } }, "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "auth_ref": [ "r5", "r121", "r207" ], "calculation": { "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2024" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "auth_ref": [ "r5", "r121", "r207" ], "calculation": { "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails": { "order": 3.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "2025" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "auth_ref": [ "r522" ], "calculation": { "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails": { "order": 1.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year.", "label": "Remainder of 2023" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MaturitiesOfLong-termDebtExcludingUnamortizedDebtIssuanceCostsAreAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtPercentageBearingVariableInterestRate": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "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.", "label": "Interest rate" } } }, "localname": "LongTermDebtPercentageBearingVariableInterestRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_LongTermDebtTextBlock": { "auth_ref": [ "r76" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for long-term debt.", "label": "DEBT" } } }, "localname": "LongTermDebtTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Debt" ], "xbrltype": "textBlockItemType" }, "us-gaap_LongTermLineOfCredit": { "auth_ref": [ "r19", "r35", "r36" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Line of credit, net of current portion", "verboseLabel": "Line of credit" } } }, "localname": "LongTermLineOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_LossContingencyAccrualCarryingValueCurrent": { "auth_ref": [ "r182" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of loss contingency liability expected to be resolved within one year or the normal operating cycle, if longer.", "label": "Loss reserve" } } }, "localname": "LossContingencyAccrualCarryingValueCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r115" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash used in financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from financing activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r115" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from investing activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r68", "r69", "r70" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by (used in) operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from operating activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r61", "r70", "r85", "r96", "r107", "r108", "r111", "r119", "r125", "r127", "r128", "r129", "r130", "r133", "r134", "r143", "r154", "r161", "r165", "r167", "r173", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r307", "r311", "r345", "r412", "r430", "r431", "r453", "r483", "r536" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss)", "totalLabel": "Net income", "verboseLabel": "Net income" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows", "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "Recently Issued Accounting Standards - Adopted" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/InterimFinancialStatementsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r154", "r161", "r165", "r167", "r453" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Income from operations" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r324", "r471" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Operating lease expense" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/LeasesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r323" ], "calculation": { "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Present value of operating lease payments", "totalLabel": "Total lease liabilities" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails", "http://cpiaero.com/role/FutureMinimumLeasePaymentsUnderNon-cancellableOperatingLeasesAsOfJune302023WereAsFollowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r323" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 8.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating lease liabilities, current", "verboseLabel": "Current operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r323" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Long-term operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r322" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating lease right-of-use assets", "verboseLabel": "ROU assets, net" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "http://cpiaero.com/role/FollowingTableSetsForthRouAssetsAndOperatingLeaseLiabilitiesAsOfDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r326", "r471" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "Weighted average discount rate for its operating leases" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/LeasesDetailsNarrative" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r325", "r471" ], "lang": { "en-us": { "role": { "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.", "label": "Weighted average remaining lease term operating leases" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/LeasesDetailsNarrative" ], "xbrltype": "durationItemType" }, "us-gaap_OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock": { "auth_ref": [ "r71", "r72", "r73", "r78" ], "lang": { "en-us": { "role": { "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.", "label": "INTERIM FINANCIAL STATEMENTS" } } }, "localname": "OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/InterimFinancialStatements" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r100" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLongTermDebtCurrent": { "auth_ref": [ "r48", "r49", "r389" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt classified as other, payable within one year or the operating cycle, if longer.", "label": "Current portion of long-term debt" } } }, "localname": "OtherLongTermDebtCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLongTermDebtNoncurrent": { "auth_ref": [ "r19", "r389" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt classified as other, payable after one year or the operating cycle, if longer.", "label": "Long-term debt, net of current portion" } } }, "localname": "OtherLongTermDebtNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfDebtIssuanceCosts": { "auth_ref": [ "r23" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Payments of debt issuance costs", "negatedLabel": "Debt issuance costs paid" } } }, "localname": "PaymentsOfDebtIssuanceCosts", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows", "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r67" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PortionAtFairValueFairValueDisclosureMember": { "auth_ref": [ "r309" ], "lang": { "en-us": { "role": { "documentation": "Measured at fair value for financial reporting purposes." } } }, "localname": "PortionAtFairValueFairValueDisclosureMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/AtJune302023AndDecember312022FairValuesOfCashAccountsReceivableAndAccountsPayableApproximatedTheirCarryingValuesBecauseOfShort-termNatureOfTheseInstruments.Details" ], "xbrltype": "domainItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r516" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits 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.", "label": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrimeRateMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.", "label": "Prime Rate [Member]" } } }, "localname": "PrimeRateMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r4", "r336", "r343", "r472" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProvisionForLoanAndLeaseLosses": { "auth_ref": [ "r2", "r6", "r86" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense related to estimated loss from loan and lease transactions.", "label": "Bad debt expense" } } }, "localname": "ProvisionForLoanAndLeaseLosses", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLongTermDebt": { "auth_ref": [ "r22", "r365" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.", "label": "Repayments of Long-Term Debt", "negatedLabel": "Payments on long-term debt" } } }, "localname": "RepaymentsOfLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockMember": { "auth_ref": [ "r27" ], "lang": { "en-us": { "role": { "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met.", "label": "Restricted Stock [Member]" } } }, "localname": "RestrictedStockMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedStockUnitsRSUMember": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Restricted Stock Units (RSUs) [Member]" } } }, "localname": "RestrictedStockUnitsRSUMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r53", "r77", "r341", "r358", "r359", "r366", "r392", "r472" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated undistributed earnings (deficit).", "label": "Accumulated deficit" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r95", "r122", "r123", "r124", "r126", "r132", "r134", "r174", "r175", "r274", "r275", "r276", "r287", "r288", "r299", "r301", "r302", "r304", "r305", "r355", "r357", "r368", "r557" ], "lang": { "en-us": { "role": { "documentation": "Accumulated undistributed earnings (deficit).", "label": "Retained Earnings [Member]" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Abstract]" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r155", "r156", "r160", "r163", "r164", "r168", "r169", "r170", "r231", "r232", "r332" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.", "label": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r93", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r235" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "REVENUE RECOGNITION" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/RevenueRecognition" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r90" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Remaining performance obligations" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/RevenueRecognitionDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/RevenueRecognitionDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r91" ], "lang": { "en-us": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Performance obligations duration" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/RevenueRecognitionDetailsNarrative" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r91" ], "lang": { "en-us": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/RevenueRecognitionDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/RevenueRecognitionDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility [Member]" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_RisksAndUncertaintiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Risks and Uncertainties [Abstract]" } } }, "localname": "RisksAndUncertaintiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_SalesRevenueNetMember": { "auth_ref": [ "r170", "r506" ], "lang": { "en-us": { "role": { "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.", "label": "Revenue Benchmark [Member]" } } }, "localname": "SalesRevenueNetMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/MajorCustomersDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicByCommonClassTable": { "auth_ref": [ "r26", "r28", "r138", "r142", "r144" ], "lang": { "en-us": { "role": { "documentation": "The table contains disclosure pertaining to an entity's basic earnings per share.", "label": "Schedule of Earnings Per Share, Basic, by Common Class, Including Two Class Method [Table]" } } }, "localname": "ScheduleOfEarningsPerShareBasicByCommonClassTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicByCommonClassTextBlock": { "auth_ref": [ "r26", "r28", "r526" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the effect of income (loss) on basic earnings per share.", "label": "For the three and six months ended June 30, 2023 and 2022, respectively, our income per common share was calculated as follows:" } } }, "localname": "ScheduleOfEarningsPerShareBasicByCommonClassTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/IncomePerCommonShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "auth_ref": [ "r38" ], "lang": { "en-us": { "role": { "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.", "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table]" } } }, "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "auth_ref": [ "r38" ], "lang": { "en-us": { "role": { "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.", "label": "Stock-based compensation expense for restricted stock in the consolidated statements of operations is summarized as follows:" } } }, "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r11", "r57", "r58", "r59" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.", "label": "The components of inventory consisted of the following:" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/InventoryTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "auth_ref": [ "r5" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt.", "label": "The maturities of long-term debt (excluding unamortized debt issuance costs) are as follows:" } } }, "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r239", "r240", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.", "label": "The following table summarizes activity related to outstanding RSUs and Restricted Stock Awards for the six months ended June 30, 2023:" } } }, "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r66" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, general and administrative expenses" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.", "label": "Selling, General and Administrative Expenses [Member]" } } }, "localname": "SellingGeneralAndAdministrativeExpensesMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative", "http://cpiaero.com/role/Stock-basedCompensationExpenseForRestrictedStockInConsolidatedStatementsOfOperationsIsSummarizedAsFollowsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r2" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Stock-based compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [ "r239", "r240", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [ "r250" ], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "Granted" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r260" ], "lang": { "en-us": { "role": { "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "verboseLabel": "Granted" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement." } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details", "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of non-vested options outstanding.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares", "periodEndLabel": "Non vested December 31, 2022", "periodStartLabel": "Non vested January 1, 2022" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "sharesItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of non-vested options forfeited.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares", "negatedLabel": "Forfeited" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "sharesItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of non-vested options forfeited.", "label": "Forfeited" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "perShareItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of non-vested options outstanding.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price", "periodEndLabel": "Non vested December 31, 2022", "periodStartLabel": "Non vested January 1, 2022" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "perShareItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of options vested.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares", "negatedLabel": "Vested" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "sharesItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of options vested.", "label": "Vested" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTableSummarizesActivityRelatedToOutstandingRsusAndRestrictedStockAwardsForSixMonthsEndedJune302023Details" ], "xbrltype": "perShareItemType" }, "us-gaap_StatementClassOfStockAxis": { "auth_ref": [ "r94", "r102", "r103", "r104", "r119", "r138", "r142", "r144", "r146", "r152", "r153", "r173", "r187", "r189", "r190", "r191", "r194", "r195", "r214", "r215", "r216", "r217", "r218", "r311", "r362", "r363", "r364", "r365", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r380", "r391", "r413", "r432", "r440", "r441", "r442", "r443", "r444", "r505", "r519", "r527" ], "lang": { "en-us": { "role": { "documentation": "Information by the different classes of stock of the entity.", "label": "Class of Stock [Axis]" } } }, "localname": "StatementClassOfStockAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r7", "r21", "r95", "r109", "r110", "r111", "r122", "r123", "r124", "r126", "r132", "r134", "r151", "r174", "r175", "r219", "r274", "r275", "r276", "r287", "r288", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r312", "r313", "r314", "r315", "r316", "r317", "r328", "r355", "r356", "r357", "r368", "r432" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [ "r122", "r123", "r124", "r151", "r332", "r361", "r380", "r383", "r384", "r385", "r386", "r387", "r388", "r391", "r394", "r395", "r396", "r397", "r398", "r400", "r401", "r402", "r403", "r405", "r406", "r407", "r408", "r409", "r411", "r414", "r415", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r432", "r478" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r122", "r123", "r124", "r151", "r332", "r361", "r380", "r383", "r384", "r385", "r386", "r387", "r388", "r391", "r394", "r395", "r396", "r397", "r398", "r400", "r401", "r402", "r403", "r405", "r406", "r407", "r408", "r409", "r411", "r414", "r415", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r432", "r478" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited": { "auth_ref": [ "r7", "r50", "r51", "r77" ], "lang": { "en-us": { "role": { "documentation": "Number of shares related to Restricted Stock Award forfeited during the period.", "label": "Shares forfeited" } } }, "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/Stock-basedCompensationDetailsNarrative" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "auth_ref": [ "r7", "r50", "r51", "r77" ], "lang": { "en-us": { "role": { "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).", "label": "Stock-based compensation expense (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares (or other type of equity) forfeited during the period.", "label": "Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited", "negatedLabel": "Common stock forfeited (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationForfeited", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r37", "r50", "r51", "r77" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Stock-based compensation expense" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited": { "auth_ref": [ "r8" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Value of forfeited shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Shares Issued, Value, Share-Based Payment Arrangement, Forfeited", "negatedLabel": "Common stock forfeited" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensationForfeited", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r51", "r54", "r55", "r74", "r393", "r410", "r433", "r434", "r472", "r484", "r521", "r528", "r542", "r557" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.", "label": "Equity, Attributable to Parent", "periodEndLabel": "Ending balance, value", "periodStartLabel": "Beginning balance, value", "totalLabel": "Total Shareholders\u2019 Equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets", "http://cpiaero.com/role/CondensedConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Shareholders\u2019 Equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_SupplementalCashFlowElementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental disclosures of cash flow information:" } } }, "localname": "SupplementalCashFlowElementsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_TaxesPayableCurrent": { "auth_ref": [ "r14" ], "calculation": { "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets": { "order": 9.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable 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).", "label": "Income tax payable" } } }, "localname": "TaxesPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "auth_ref": [ "r467", "r540" ], "lang": { "en-us": { "role": { "documentation": "Information by timing of transfer of good or service to customer.", "label": "Timing of Transfer of Good or Service [Axis]" } } }, "localname": "TimingOfTransferOfGoodOrServiceAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "stringItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "auth_ref": [ "r467", "r540" ], "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." } } }, "localname": "TimingOfTransferOfGoodOrServiceDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredAtPointInTimeMember": { "auth_ref": [ "r467" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which good or service is transferred at point in time.", "label": "Transferred at Point in Time [Member]" } } }, "localname": "TransferredAtPointInTimeMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredOverTimeMember": { "auth_ref": [ "r467" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which good or service is transferred over time.", "label": "Transferred over Time [Member]" } } }, "localname": "TransferredOverTimeMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/FollowingTablesPresentCompanysRevenueDisaggregatedByContractTypeAndRevenueRecognitionMethodDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount": { "auth_ref": [ "r285" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset.", "label": "Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount", "negatedLabel": "Valuation allowance released" } } }, "localname": "ValuationAllowanceDeferredTaxAssetChangeInAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/IncomeTaxesDetailsNarrative" ], "xbrltype": "monetaryItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index." } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/DebtDetailsNarrative" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r137", "r146" ], "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Shares used in computing income per common share, diluted" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r136", "r146" ], "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Total shares", "verboseLabel": "Total shares" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Shares used in computing income per common share, basic:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://cpiaero.com/role/CondensedConsolidatedStatementsOfOperations", "http://cpiaero.com/role/ForThreeAndSixMonthsEndedJune302023And2022RespectivelyOurIncomePerCommonShareWasCalculatedAsFollowsDetails" ], "xbrltype": "stringItemType" } }, "unitCount": 4 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(27)(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(210.5-03(11))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r135": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org//260/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19,20)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "272", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r176": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "https://asc.fasb.org//330/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r238": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org//718/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.F)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r278": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org//740/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-16", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(i)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iii)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iv)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(i)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482736/825-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r321": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//842-20/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-21", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "912", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 5.BB)", "Topic": "330", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(22))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(11))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column A))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column B))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481573/470-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column C))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column D))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column E))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column F))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481573/470-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "27", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-27", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(b)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(c)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(e)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(f)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(g)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "205", "Subparagraph": "(h)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(e)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(f)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(14))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(16)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(17))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(19))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-11", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(8))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(b)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "220", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483580/946-220-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(9))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(1)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Subparagraph": "(b)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Subparagraph": "(c)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Topic": "954", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "12A", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.10)", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "55", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r485": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r486": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r487": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r488": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-23", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r489": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r490": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "g", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r491": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12, 13, 15d", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r492": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "13e", "Subsection": "4c", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r493": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "14d", "Subsection": "2b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r494": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "15", "Subsection": "d", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r495": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "14a", "Subsection": "12", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r496": { "Name": "Form 10-K", "Number": "249", "Publisher": "SEC", "Section": "310", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r497": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r498": { "Name": "Form 20-F", "Number": "249", "Publisher": "SEC", "Section": "220", "Subsection": "f", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r499": { "Name": "Form 40-F", "Number": "249", "Publisher": "SEC", "Section": "240", "Subsection": "f", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r500": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r501": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r502": { "Name": "Securities Act", "Number": "230", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r503": { "Name": "Securities Act", "Number": "230", "Publisher": "SEC", "Section": "425", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r504": { "Name": "Securities Act", "Number": "7A", "Publisher": "SEC", "Section": "B", "Subsection": "2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(d))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "55", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-55", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r532": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org//450/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r543": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r546": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r548": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "2B", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(i)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(c))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(8))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.3)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r71": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "https://asc.fasb.org//235/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r72": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "250", "URI": "https://asc.fasb.org//250/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r73": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "https://asc.fasb.org//275/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r75": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org//440/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r76": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org//470/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r78": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org//810/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "c(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.11)", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.9)", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r93": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org//606/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r94": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1402", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(15))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" } }, "version": "2.2" } ZIP 65 0001387131-23-010026-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001387131-23-010026-xbrl.zip M4$L#!!0 ( )2+%5?X(D*3M/( )"X"0 2 8W!I+3$P<5\P-C,P,C,N M:'1M['UI<]I,MO#W5.4_:'SO/W\* $Q(;;,")DYHJ2D@-R!$2 MT6(;__KW=&M!@ !$@A;]\Y,,$C=I\^^=??G___+^SMV\^#TUX#IY5C7]/AJ8Y/OWX\?'Q\<,C_T'3!Q_9 M4JGT\0D_&AE^EZ0O^A_,?[1]G'C4#'\W9CYKNH[*A93FVL H.^PGO MA:=ES[(89E@ANCMO74X?-X.?GS[ZT=0%U>AK^D@P@89XI%R&X3)!]K!VG&*&9]UQ%H@SNU+\Z#.NHO'3;_ M$7YU'[2,S$ 0QM[#?<'HD0>='V9&A>]T34%&X-/DEYG')5//F),Q,H)!@9\_ MXI_Q.TR&83.!@B]G'A(?+.\A<2P+2-<^B-J( M/,/D>>:$""42)/B7PO_WV91-!9U]_FC_"[^.D"E0>(@,^FO)#_^>5#351*J9 MZOA/307\32J &%U0ZJJ$GKZC29>!_RL62WRVN,FX)=^XY1%2 M)?BO>:$(@VY?4 RTR5"L;ZB*I>MX(-D0!>47$O2:*E4%$W7MGR_;S-.5S#Q? MW?S[[R93\+XIJIIHC6;FN(!OC.Z&Y,T5EXYYC719D^Q1;[@-QBSDNW?5N^ZU M/>A_*XH,8QK_K5S7J3+PT'\QB/_]R_'P(\MFLZ5NEV7@\TVW*V,U]U_@-?P3 M\[?;Q7S"\1]@V$WF/^^VFQ%/;VPP?_X"CH"@ M76)([4$,\MTFXU0Q+-?.6/P"2+L-7NI>6SKJ9OVCC.$;9XR>)DTHPYPHZ-^3 M/NBR4XIEQB;5D4; ;Z[)H*] GLX7-UX6NC3#IL6E@6%.S M/^S[89.E?T] :#@9BPJXJ>"<6*IL/PMR"$Z%<:K* M"MAZW0)RN#"Z (4 \E(VY0'Q#%O(0/K#5G"52I'#U4!F'>*5$;K4#.,DB)B< M34S[$P][5:TT4A3VZ8F_KE"HQ[2YP'F"M$C RY(DXR&!Z019JJL5 M82R;@K(,>"YRX FNZH9A(:EJZ1 CVLS_0U L1*S .00 $N!UC%2#<,N&*VR! MSPH!B503=!6&-Y8MK7@8NF0]J#%_;\!()291 &_&2*7HI2 Z1EJRPI",5"H< M@"Z\Q_[\IAJ)9_.) G@C1N+9Z+$=$2,M7V$X1N)QY'X(NF0]J#?32#R?2Q3 MFS$2'[T4;,Y(%YK>1[*)I V7&I*CLMD$K#&>I<7@GP+CZ0B@KR+[W[I:17T$ M+JIDLV1'>$(AW*T@MY4O1N](7>O:@VS83'2I"6I9E2XQV%AREL 9&)3,0QH] MSUP+$Q*1-/M5U#,Q\^!0I:(9YI;HS&:C=]Y\-,;J Q31MBC,QN#RAX1N/>;B M\.BQV/?FQ;ZL0T Z(*'H^63ZB,,+Y4=!EYIC_*#1T-0'9( 2A'@71+W9MY-! M@6$A9V)8KJ%E1FM]FVPTLC-N-#N+,E9_T\D#X;P;_D!Z<( M?8$!3)S\N!!DG2C8.% RQP_7R4.+\[=G*U>Q29 O-F=>9K 3C)4\FVQ&F(QDB$\=-)&EKM#X;L7, M?0V1K*SWK?>]+.%?^C+2*;(2%%A!K=2_SV9PYU^>3OSJ]-/.*^_T, .Z7#DJ7XWF:\2MF(+P[+MS: M30+FV70!WA3.+U$CZ0@9)'%NK2,.)"V+P(X,7?-*+9LL MI;8LNWC,6.:VP3*W'RRS+PG+FQOH?6!Y,6E29,N2=YW)-8#;\8JZ;=QS?'Y/ZS7R3O"B#ZUWCLSG23DG&9QS?/Y.RCG)X)SC\W52SDD&YR3/SW'2 MYNQ<(7FQ >RE\$KMKX4W46BCL:;BQA2;7]S'%M:];W;Q50+8."L!2^B^NH_N M=?# 2AR\,GY8TI'W.A@A>/&O@P..K(JR9R3-]UVEYO+PYC+6POD2NJ?F,KGF M\A#\D)K+))G+?;32;+(]]'6PP<%M0B01-^]CG/AS-1MLBGL=3)0HHW+L#)5: MI8-;I2-EH2.+ H\&RZ$/ G@=,IHXER&9A<%M#V1X'4R4:)?AV!@J=1D2YS(D MDX4V.8SD=7!/LHS9MKT*L7M!VQX*\SJ8*+G&[ @9*C5FR3)FQ\-"QQS_)AG+ MH8^=>ATRFCB7(9DMU=L>__4ZF"C1+L.Q,53J,B3.94@8"WD= &G4FP@3-E/W MGW%B8NK\2(/61%N@ _-#:D .;D .PP%'%C+N'TEIQ)<\<[F'8[G2@.V(S.7> M^2$UEPDSE_OB@*,VE[$C*:VI)L]<\GMPD]*2Z/&8RT/P0VHNDV0N]\@!QVLN M]X2D-+I,GKG& M;N*+H"182U-O(_U!%M'T]*. A:85W(T.ZDM9)6UV#WDR7\HJ1]9*>KBC^%)6 M.;)=MX<[8YA@<&* DW?D'FL(1O$O\] :Y1C]E)1-4A\EA(^2LDGJGX3P3U(V M27V3U;[)=]DT97505J6V-1XKD\I0D-4K017LVTQ?,NN$6OJAMP\NP<&CM="R^4\I.R6>G(_*=4G9*/CL=D>^4LE/R MV>FX?:>R>:W)JEE74YX*0,6A]=01>U$I8R66L8[;GTH9*[&,==R>5D"JA5IH),BXT?T:Z7U-'PFJB)H]11X( M>#=$[6F,\(VP+G.UX5NC+XCXM[9+&9NU_" $/%,\T'2\#AG4QI\_ACO3#.8 M_;B(VMB$XN [ *:[P@P3(TIY*?<@UU51&R%O.\BE)A+6F-\3-K?J0UO;8XL/ M4K8Y/-L?LLWAV>8(??N4;0[/-LGSW-?Z-FVD*. '?D$JT@6EK$IE"?Q" MV3!UP/8#PMZB:KPJEMH((X?64L?F$Z7L=KSL=H2^5,INQ\MN1^B#I>QVO.R6 M6-]M:9/IA:;WD6PBJ84 GS).ZOE.\'F=3%E^%'2I,QG[&E)7HVD]SZ4RD2"9 M\,X"9;G9X^T"2/O">'F:Y=^*C6/+S3NTB"MZIL&JWV[6NB^^R:7RK] MUWKXJ>2G/OHN#).JCI2!PIT(F.J90UF8PYP F:J)I'@8AZ!_1=#U"41I+336 M=,!(>:19JGDAR/H/0;%0539$13.._D0NE_3>PLXG5TC Z\*#G0N&/']2\&9X M>65<4S-,>02VJ-GW,)*RS"9(>>'\,A_'IEKFV+7,(;(?J98Y7BVS!WYA\_CF M!"[KU@G.!97X-99#+]4KIOF F$. MUOO$NWSFB2)&15F59K&RC$N/G1^7\<1J;$3+EU'+1+P92LP]&VC] MH7@J=:M: M-EZH3Y9L9VC_1_H$7_>PH#L-W>Q>R:H\LD8I'VRKI_#% "U!'3AMA?C/&9P> M6B$EK--X4R9-63)EEO :+5R-T_4XKW6@5PO 35DMKIK[/NNK/P1=%GH*H>BL MJSQ'Z%3*PK3UOC#I2"QW'*A[>R<5>NS,\!)5Y8OFRK1[,^W>/ ACNFWH*6.F MC!F:,?>Q/V).8[XL^YST%MY#J)Z4PB]'ANW$AM,(GDNS8,G)@KDT25!\OO[ M1WP2L',/0@.9='(X5TLVW"/3')9S'WLY[=#SZSV?G"-5 M'(X$_<_<27<:[H[FS$5Q 4>2#-E!Y3$E]-S MG4KBMI)XL&[LXY#$%:?2IC8QE<0H)3$9-C%YAY/N5Q)3FYA*8C)LXJN7Q!>T MV2F5Q:UE\7#;H(Y#&I?V+@'I@&ZB638,9!JI?QI2$@GS!:#N-0MA,ES3Q :) M>Q'!5^28IB*85)_TE8O@:_)(4R%,KC/ZNL7P0K/T5 I?KQ1.Z9\*X;K\S$R# M3QH1IC+XHB+"+9,R,WU7QRN":43XJD4P&1'A*Q?!-")\Y4*8D(CP=8MA&A&^ M;BE,2$286"%)C9#LS]Y M?$4Q8BJ/28\54WE\70%C*I')#QQ3F7Q5T6,JDHF/(E.)U"_DA]1(IA+IXX-4 M(L,E5].\3BJ0+SZOD]@\Z_[D,5R&3E=5*93/,ZJ4@F M*:^36(D$J'(9MN1^XIB#B4L$6'86LQF6G77'G3T#P/+>I\(Q8]E9S,89$;SN MZ+!LJ;*-XMMV=0&;(R08EH[.9$/+2AK>< ^*Z7S"/)#T#&1=SB=QL6:#C!U (4YP8XF(KS,SQLTL/O[#!9"(/0:IEE#LC%\#$FPSQ_EIU-8!]@2$1GX*_+-$ D2$:W/ M'P$^^!?__V?[X^J98V$E3:_H*FVL#U M_4\46/2!K)Y2^%'F$X5Y/B,H\@"^PD84NS+_]S]LGOGT^>.8S/;Y/YD,=2$C M13JE6I:",M?" %&9S!D&PIW?/XR"^N;)S*\]38GO>&D90WY&I_C;3]2C+)E#O%;FGRFH&!_.__K _3@# M+UG,7C V/TDVDDD^]\YN&_5.K4JU.^5.K?WY8^\L_BG;M5K^7&EQI5:5Y=U=OM>K.Q$@XN*CA^"L905@>F!N]7*Q3'Y+*EE3/OA;+% MJ)9WT6Q=49^-L: 2U?(D/75+3+:+)"1G,E5-M+"SB%W@KH@-'<,R;+=+/N5Y MIOL\EOGZ#_7QYV^U",.!VE UE:A86:0<3]A9?_9U-WA'Y!NRJ*@N""#?G/-P6=35_.9\-*6E MR"YA,BYR4]P4N+DMMSJUUN4O&ZY6[;K9ZE#7MZWV;;G1H3I-"K1I!U0FQ?)4 MLT6QN7?2>ZIY076^UBB?HO64;+G2P3^SX&^'77I(/O-#[HK8='#X']OE(.*V M-T\CGDDN-)TRAXCZZ_(:90< %,0'2%I0NO-BKMFQ1+#0W(VXW\IW_H$? ME2(1&@EF&L%[0TF83! XMVJ0[,P =G+VS5(1Q3/TVS=XV*4"=$AK&T@_76K;:B0QAQ^UGPR6T,?K'W?U2T%[?LQ%$%3,SPF! M189E^5+Q)9LJ>32@#%W\]T0/[,"8T>7!$"#+?E_&9L<7PS RE81$S:Y;GE(6 MA".Z(JOH9$&8+F:$J:["2V/GO;8)WG\%EV3U2463ELA6]>YO_:9^J;+:?13. M5L9 (J[)F&BL:P^8=V=#E!!PGIQAO/W2]#]+96_VGU5^R=ZP9N*L>)H>H[PL 4 M>)D:N)DZ=6_ILB')(D;,2AY-S@KJ+7#_1V-%FP#\LZ1U/,;W+XID8$YEOPHB MQ-,'@BH_D[_?1T.WJ;4,"G?\)MHVO'8=C''ML%?Y8F;-;FIT(U+'O>TU&X?R#+X1D@[5Q[6)<^:G_E!L5+C)M'##YR5F)I;XB< @5096H<^5! M6N;(T@NA8#EH:17XV-0[VJ,:O+#[NU&Q+M_=YW]'O:[IS"=G-6F 'C5-"KT6 M-F@M1%\W]6MP4$ ++/&+V'KVX?SF&M7D?-0KFIL?_)U?Z\QER"S,BQ&O0!Z\ MUL"Q5'[+X^7>[!US)T_:-TVK-(R::C.S8U>G@/N)-B';T9O-=PXJ<#@ZUH%W MY;&@4.@)B98I/^ H%;P&9$1D/6-?#= 2F$)"@;[-BRAPS8L5YX@5UJEE'0G+ M!4FK/#99\VMM,HDBP^>?#Q"?Y]GW2T1G08,S#LB7&LC)]5!35R8F*Q=CS10O M^(N?462*YN<\.OR>\!]-HU\&:4.:X/JU653AI?L_"#2D42-+=VP<*+0U.!-$HA2+/>N]QXK M;EP**8OFZ6:6:1%M(5'E_&ZO?^%7AZ1\X9\=D1JWL>C(ID+2L$@0AY2H"(:Q MTLI%@Q8F\6C1!3PE94Q&/4UYM\;T.XMVH%Z&DQUQQB<=9PTGH4\X"3V)0T$= MP!N7HR*JFVIQ=$V; MJ)I@BAK?OF2Y5JDIWK$14'1F0B#GC]L=*!6/TCLJ0G)STEES=-_RPJ]J?.JJ MA*L B.I-*'&(@/7PKD^P4X@4.K G.:U*G[Y]\XY]3PT%@^K+"GBA@J+ S[BA M"CNG?RT9NZ;@D?:0\P",ZGFG/$[!LSD*MR8Y3JK/MW6I@AU7_#-N3:(D^!5< M#_SH6$EJ-(@Z1!O8,1@?B488%5-88:KHZ[G3_F4##GX*<>A5DX,9#V MR\XJWM,4SJ:^X^Q5]H"%X/?>/:P!/X\???L&WL)0.0/A]C*#0$' % R3*C&4 M)$R,#TM[^NVL4\72=7C9[DC#6L@43,L(%I-V^>Z'PM]SA4(4/?ZKYC\Y^X7W M4P6'[C93.GW:[A_X?QN:_[?LI_UP;P)EY.T;S#C ,R/9-('+('8735U3L1^G M3"@$/MV$JF,]+(@DHU853,%NW)J3H.D8_F /[VJBLDP.RT@+#2S%KFZU,QU' M6MZ^F1$7*CIIL0&R7\>28[Q?Y/#27+."MTZ\3(?A@CG\,JMTZIW:TT]!B(S# M@^=?P^$^WJ8:VMLW7J?H*^1EV: $2H%Q$26((O"R+F"&Q-37L:H,_)8"M&8" M?@#6$RAC!'( ,^FNU@'BC@#SDP^P#$1)J"^KI(,3IZ Q\HL(!,3M J.I,'M:S-0 >1 M09 66V(V%JB5#V:B*//"RU29HQ16=A&2E\\M0U:1L<3C?+S[8N6^5ZO?]$BW M:,QO!@R 9_U&P.WEP-^N$P=5:H[-H.9-1A!-9L,!]]4OY,V*_>*25@S1Z/R^ ME/Y.].UK8&&VSZP ;/T.FI<;,_>QYX."*4V#6V"[6&_?S/I8P<:1 HD/ M0+NH&G'O+0.1IV!>>X=BP)86\*/P9,H$S_XHP]PP+Z7"DC2L#AYD@V@K55!% M65#>OA'L4YM($M\$_T;0)8/"O;NRM*R2Q+\3W@=Y-!^H5^\-&T/PIUQJ4^^ MA,1G)6WZ:_Q!B)<@\G!1N! [S=K*-IYGI18PY>'-XUV?N[$*>] "?GBP<5P3 M0+T,!BF31IBR-8 O*+9 4QAW]*(<2P#"'#6KL[D>4BAHXSJ!?0Q/TS*),()4 M=N5Z=RQ+7;Y$<]FL MRP\N?!Y#V"?T8#R*L]62V6()Q(=3>#_LF7WB..9F>05@X1B<:(^Y\?V*O_\$ M>/EK(57$HW^BFF,279]B_+GZGKQ)G*'%%2T]F\??T)S'4,^U-.=)/+ U_9Q. MZ> :QF+_M+\5>WSFGII.^TWJC6[NSVRQW"X16'4YVL!&KEJ58!$ ?L$@B- M'-QE*U!#'>O=_S'$D3I^$D!UGIQ="[I)U2G,9(ZS1]556YF3C2G"F8>@,%C= M!<8-";C#5/,[\,F^]$7T<%%F->HF&E$LR0NRH$(KH#\QI4E:8(I[TO1MEX/> MW:J")V"#[RN#DF7@J@)A\E(H!\$E)QD#1#R'-! 4(B M"AQ=!"04B,OB'JQ"'#\_64FBN(I$^\Q8GB5/<&N)G5)X"86S>Z"P3T"!M,TQ MLKX\MMF"&P_)"[HAY(;]W7J@(QI"Z4+1'XW@I MGC]BBAU*@EI-_978N5C(4C)F,Q?*&X?V/:*QH^4-N@RCW-,H%!]#_(I/ %$ ?VP9GC)2C+1$[0 MK#]H-G5-,0@QKW5-1))%3FY/J;4EM=B(MW+;Z22<3VJ2\M=,+LFWSWD#2AU' M2BD(N7'FCR[1 &P3D0'2HWEH(3CBO $;:6;(IE/9(Q0V)]2%()J:GM)H>QI% MFMN9\PQO5=^NV+:@V)5&)Y3W[2_ 5N?6(+OR',%+*;H]12--V,QY?E74%XB; M?CO&C>U(E2$HGU+RQ5$M:MI$FD"9<^*N9!6!E/41")?/"7]Q--F?)$6:_"#4 MRGG4"G#C4CIM2:?HLQMYCTZUIZ'[',*YNIN+2OJE#]4UM2,4XFZYFCC_W=^V0\;C:I5= MMF3.6[*3[LBLK[S,+'^+?K7\_MK5X&40Y(&N6:J$!]!TY["&Y;U)]IQ;GH:W M0+X7LY%BVL07P$6\QT659J-::[1K50H^M9N7]6H9WW]X7KXL-RHUJOVU5NNL MO@:=TV<)[ANBS+=I^KIG1[C8;9Y\( 6-@:P;P3\LCI5!JP MP(19L[]^/R#D915.6M55Z)[1Q4^1E2SG_ M"0CYGW?%TG?NNU(X63IZ\'DG;O%^,^"6NE#!L#(85H[E>*!V\_96S%]88VW< M6S7D>C=K:S1/%8QK%-FYPZJ#UQ/2APF)>-(L\;FG4Q_/9FOLL]"OFRU@*0$@ MS&-ZA]&C0U3@\3NQ78WF[T=T-2,5WW1VQZ,]S3S6UV%U=]X/3:-5QUD&"&5\ M(T^7[*D-IM9%EI$9",(XDRD;!C*-<@]O*Q+-KGS>?6Z5\C]ZK4+QCUDZ"8VH M%?JMW&X3J[EJH0&+L_>[!,O7FF L_(!)@B:(5-4%4CD'BDPIQK! LZLO!CIG M5.Z*ES:GV2)8SB24/>5I$K&5+&B":,?X:(?[_8!47+T[$BK/)G_1?>;*/"HS MCP_5J_LU) L* _1![QW'9&F.+])<+O=^>4108!8.NBB1/D4 :7Z1KC/VSQ)K M-/_8K)JVT?*_RP;EENPV"-QCZ&#N%$.Y;"?AXG;2I3L)&=\^PMMV]>2,IYDB M0^<+7, >PB4X"5IL,*\<$1JY#,ME>'9[-!:S!9KC,@/.#1J(-,]YFE6Q%CIFZK*$W'TI&PA8C^'LHE"J,M Z7*AI'0/3)I2D1FW M\EK-!JMP%X>4%>D\Q](\PZYECT,I^XCQM:,X9>EBKD 70FBES67HW"=#==6P M=+SSJ(U,4['S8M,U!@N3]71=/"]TGLY9+AY[%4JN/,BQ8&GD9+NIA,7.+/Z2 M S[F)R,_98:R)"%X!K#,R4\]76&8'(L'+4)D/GN 4M+9/11;Q&-&\@Q#,],; M$"+D>W^T0QI"8>2?LCFL6 ;P*M*)C[O4A S_#J^+A<']I9S;MPEQ@:4$XH4? MEC5"8"X6-XVA2WF.9O+':D&VQ=N. L45:+Z8I7/9."2*F;$D#[ $39_ >N9$ MIW/Y)VNJ.9GY+L1C, +-@P/.H17I%"MQB 5+E]@B76+R1RH5:_&S*_O3V1)$ M>/E2#-R?G^%^$02Z(SPAGYV<%P/MOB3]*E1^EO<>A !"8"A2/9()I)2)03TT M[0-P%H>09*/P*)*/I5U#CKC\+G^\<:VCL2!+M:4"-%/R"9 J9S$4LE=C]WG;E_2*3MYTUF,+6Y]8=N)+J$K/ M*N[;9)Q0W!F"GG%(="Z?HPMLT+%?$13WHD)F2N4=-5*ID*.+_'J5M 45@_14 M:5F)!6ND#J@DTU9)6#7=M#O=YU+5U ?9"\8L]B(TZ&O*V_9:.IJ)=QC/5&>V M;7_89-[0'0";9]CBUAG9',T6BW0^MUYM1(F*(T?ZKDX%3[.E(IWEUP))T?ELGLX6^2,- MCS9'V(X:+4_GN#R=YPHQ1$K5F4A)@Z69DVM%4$UPN?"NTC%.Q#<6I*?&?&,> M&E_/2X_K>CXB"I%PZ&-#1T(>Y(*6@,+F*K3%(3^E'$,7^%W+=$>#K1V%AZ59 M+DOGY[U741^#32%[RQ'9T%D5G\*V3?;T!R6 M\,L1%(>0Y&FN4*+9HZW^;XBMW2U,(4MG\[N:Y" AJ?B$Y(NF28^RHLR)Q,/= M5>M[^?;Y^NL@6FMRYDYX6&*Z4,13CBD48>TA0LQD,OI*W.RL^Z/!S;JV,%]N MJJ&IHI?"\?/X37XT')K,MX?F-DGES4LQ,RE >V?\2\\,!Y(A#IGC^"S-\VDN M.'%TW;5T"Q:D$'BU1RS9W\I"]A?K#"?M2Y3&[?=VOI1M#UEAFR1%B# K1 9L MD9,X?-6VFQ .F0A>.LK&'$G>HR3-ZBEH[6H9DB#V%- M<3LE-+O60-*$Q.T&.F M@E,6B5"9Y4IT-EO 6PTVUF?;TG^']/B\@Y/@+'2R MH DR+#F?8;F4A9ZLD*/$RJI$KLMRSH&W#XV;V7ZG/XE95JO]N#L_F+DY.;NL ME\_KE_5.O=:FRHTJU?Y:;M6^-B^KM5;;.[O^YK;>^95$>B0+FG5-9#[N"-[< M5_I^^^6VP/$=Z_PV;NEB(LGJ(Q MS^*DR]Y%Y2#(VE%D"C2?S=*Y4MRMM9>PD $YUZN%#*0_+#$P-^7GNU_F]USC M4CZ@@9D"2QG>%C-*ZRG.M['S1\@-?*72<6[@6\8,Q[9G+[MFSYXKPI-@9M?[ ME4F3'3%(D9T_JCW"X;& MT\[M'%QL7M_Y?#O'I:8..D@?55%OB> (;>X/9\KG5JMP0%L4)$, >L8$V &9 MO0/+T#)M7/VD[V.O>81#SE9Z7UY 80*A8)#5/%PMI-V+" MB+JK,F%I/D3-*Z)61&YE3X!O-SI6+UC-,-^D[G.A^$NZNNNA@1;E'LHM=J-? M+B8\EXZ6Z-W1^RFF\0Q= /V>Y=?O*'PU^]+W4YD#S/,,^ DAFL?3S>G'WXLS MF_.V0SN<+7&3)=,](D2?EG7]]S/[=?A+B[.U )="_4DVLH66_#F;2CAT=G81 M7;$X3T6:SQ]U]BTLHG9U2$H0#,:5?BNM3QH$[:PB4J/DAW7IH7Q5+&U3<=UJ M+_JEEV'3EF<.$AG^QKLQ*DNS'$LSQ5U/*C@NI.U:":*90@'X;_TY]KLU,RPD M&)=*E*X)C6^R5*QT]G-LY$Q0>#F3O5YGG%Y>TF %F6(169;.%M/D04*)NVLC M($.7BNO3D?$F$7R;&K%VP5IF:*CP[V6Y77O^6_G:?:[WU;]_1E\N83MS< M:I\C.]WEN$F"(09^C7HG7OBA-XV=8^G]Y6F.*X#GN>5FQXVOUHL5NRES1.L] MY6C*2Y%7^=>=6V1K*-K7A9J0R$GW]^&S'=![ (?WLHZ,B! MR=NV2&!+-[9M1?#B3&/V:*2IA.RD46]:__S.Y:7-*$ MC2P T*D/][_3.9[R*TLSV/-\JK@6]J9.KD26RH&ND$P;JRO7N6):Z%BB[ M:_*-T16GMP3_^(F:Q9XZ>'@ZH4S9Q%#Z : !0IUZP -2[V25DO#5Q[I!09A+ M&7BP]R=G\P#FH@'0N1J8J][H7RU34:O*]A"NZ95>"^-JIV1J7.J-BUGSXBPH M+A \TQ<&A ],X&%F"U\X6T;(/U/D?J($RQQJNOR,)"HDR>V9R]Y['JD7^7!2 M+GZ7U+O6W7U_"9FGTR^RW!+)#C._PV9?[DH/>9N6:9B"BM7XBLG1I6HQA?)9-KTW$V)J>]]J0PEP\C ML8'$0I?;,=9CO*8#&\Z?P=,/]M:1MQEG)7?@;.< MR7^J@VONYK=A/>Z7L:+0$1$S5A0@ 6/EF#Q=* 5ET\.I+?B?,8(G'I R<4EO MW[,RA?^P98IY[S>6NBB1T".MXX1"T*[U4,QI<1S)7? ?2@#Q!1Y64*X%6:JK M%6$LFX+B6]];A@4WA6UPRX-B+-N2'Y8OUZ(Q# ME H\76!PF\'Z_&4RQ6E+M.U:O.!IMH@/,8MCDYR_,Z>%3$%6D503=!48V2B+ MHC6R%!S#55%?%F5S3LC^ZG?]UOW5_5^TS8DY.]5'EYT+X@(,""40'W-]]-UJ M;EQ/KFB$V "8_CW)+.R1SM/%/+[>='V]/J*BZ?N77"^-A]@;JYYEQ"Y!!)RE M2R%VQ&]&S""=Q*[,:/N:L+$2\I=/]89VURK\JE^/$UH^79X+3ZNI"RR_2/IX M+D@HYO)T+D39+*VI'BN+['J3&LV6"C2S[76(.U16@QM#UQUEZC6:3#5CN7ZG M]^[.?UR,B_O=H;+FU&S?4DAJ(5(%^0J.35['"NF9V^F9V]$RS]&>QOW1Q#L5 MX1-\'ONU"*AI!C#;D4>@A!KHD6II(T&E[2]HJHUTN?^)&@GZ0(;Q\:-,(++= M.<10FQL9H\='93]*9B?T08LAM>NV'K^S_CV>FSSU?4W3;*M]4Z/ 21;N_,DPVBA8!U%,71;T1)XK]A'M']VW7\>(;KLBS??38[ MQI];4S;'.C[)P!K!BB;D$6 O5\BI#!4&3"H8RI/-T>J(I8A[5<8&,)[[Z1/U M*$OF$(_"_',2IDUP>3?@YID[@ +3[-\3;HK(;*G0)65LG%[H3@O:WSL_OEV- MQYVO0F^9/[%NX@AAK&+(. ]&SH:Q?'^?O>(JO/B-2P",K(T]=A:/E3_CGWJI M"?VXAEYU%\EVW\T89#OA '^"%[96,1@ND66D=V<7FDZ90T1UACIX/%*;_)NE(HIG:'>J M';AUIQQ-U"15=48OT8 M!9Z.8:'<:UEH2M'M1#QXRT(+/2#50A>Z-@HZ[;GV)"H6GA1?$ ;_D3K"$RE M3WZC[O.=86@WPH^+WR873\''<6.SV(MU()U'BNOI_K,Z6>0]%BH#Y#[-_;-% M7F<+E,ZF>O";=IXPFV'8" ZD9.A@U8 CPL1&&H"QNV3ZF M_IAUC:X^1,=KS-@<7 MI[E2@2Z$Z!=/R1->=B(RD"Q=RN=IB(CV=5"*O]'OBZX9QK6N]7&7<8>T]V%; MB4,]H?6S^_Q5*I1O?]>E[,6>;N<\.2,@46,"TV$;SWW(B=>X9>D\8.EX#P%< MAZC(# U/YW,E.K_SU8))152$2K\$)CE_Q/"I:!1P@69*H*)*T>WSV#FV M2/#1&"DTQP+-NLO7VTA1P)OX@E2D"TI9E$S<06> MA+_W]8Z2*3I[-; M-!6^TK!B!Z)%YD)QX#X5:+ZT_J*JE&@12%I4[ER.SA=R=(Y?W_V=DBT"68O& MM##C*W[SS"]XVZ(3ZVYSC$'YGY[O-MB>G4]:^CN]MM M['KX8_^=JY?Z@&/WW')-3 _M*R.F\^0 M8?IC?N(;_#U_5)J-2_Z^LI^33&?<3A3!0,0YEZ\E#:;R$U4KA5+LSF.SN5BN=+BM=(GNCI.O@"A=BQZ;=UU(U-7 MU6V\DU4+YFAZ8>XYV2-J/T>N<*T]F;H ^)9509_4330R\%TLN&5/(WD+%W5N MR([-\4AHU"^?U>^E[K/ /#$_$6N>#[:Y(VFKNKP3O]N[77%]_D$V,,GA3TKV MKE4^],5C,9(B[LP 4((NYG>]A^NU(#XRFYOC>$#[KK>FOQ:T1VA..9JX.T=[ MS.L!.#X:2YDM<33'1'?A7]KOD$)S>&C6G;/JB:'CC9XC%>&V1Y!!UZMZ_-&Y MK/]H9$>/\D%;'*[7.EI2!>*L53G7CN)(G//\C3'I(0H M,D\.Y(C)IIL_XI&CJ-I<'LBK9B==3T%<0;TH MLHJ\FA6^SE5TKK7#H-$P/ "7WH2<0A.)0,2@J^W_7<*_&4O%50)=%DTDV4_: MUP=NB::IB?8NERRRZT0;WW?0'8^Y,>-<53I[QFO7=YF,O/!W>-1/?\QO+.QB'O.L=*=?/I6\?:"]T78L9CDO?HZ_.K?9(I1JC(G9'R/IV1 MUA+FJW[]]N.V_/R]/$3'X(L$+^/%>2*;6J2=/)%EK'%E?B^B%I,3'Y2#^B'Q MTSP17DAUGU[(,II?7C+57X/[?CG+'=0'B9WFR?! "OOT0);1?,Q>#$;G/UEM M&_/?Z6E-OKFRCV12Y/4TOV MW!&JT?/U*UWC2S__K;9K=W^_YU!+7N\'.RN(3EU6W0$C;&,X'F]W52 43+Z% M>ZWJ(F^*?;''M^7]4&7;WH7C\4=#J(\U'NGSG7K#7URBNYNO[-YD9/Q M&2^VD):Y*\H>.\VG=NOZRY58VINT;-6GD+IU+]]U2:'9S*WSYX9^DKN2P(\# MEL5WOUHX9(+@CPA'TS(-4U!QO\YBV\+]E?13NKE7OY<+>VE;".H1LL&D+'SM ML*QB'VMLX4-RW,TA:8=#"LU^9*JZK4PYEI8!2SN,IAI4+=RRYP_-N\F-%.UV MK9EZAW_^W2H;H6FUVIO8".M[[5]@ GT0U_]@.3K+E>AB:>\^>V(0'U<#P5K$ M\TR.+O%[#V$3@_BX*OCK.1[^R^2/]3"^2#@^EA+Z6L1SA1QP_:ZW'T3J56YK M 9=5(R8_6\W\XY]Q:Y*-T#%=L<_._M_6,G,88H1@_DWL3KT83>U.-9QUW%\$ M*YMN:SZ\68^3R#P/AB4]BNSP+D2LDER@<\58;@9+B;R_DOLZ(H-O7MC;P76[ M!?#/4J_V[>?W\4T_'],9*2OW)2[^;T;C> MN AVM'.Y(ETHK;_>]TBVJQX3+;>MK"ZE919?U[S%,1$I+:-R+[:HQRZ73*!F M/K?Y13\I-:/W(W:63(:EN;@.!4B/\DNA21(T06XKO]YM==HJ%L34R;E9]@_= MY_/^Z+SS]U>E4-[;I<:;UV]W:_V+-_^[#-%1GRVT.L.;A[B)RQ[KP;U1H':' M4X%6HS;'9VDF]\*J%IMR[?8G^JSA6R9/LT=[UW=$?+OM63QKJFVE/,WO7.9T MS,]'4P#W$3[!Y['[9A]6>RF1< M5I?DA[!Y1!NV6=C+*C$$S7$D3I^ M$A@F!S]\Q%^?59J-:JW1KE4I^-1N7M:KY0[\T>[ /U>U1J=--2^H]M=RJ_:U M>5FMM=K_]S]%CBU\>ONF=G-;[_RBWE5K%_5*O?.>>G?;*-]6Z_#Z^\\?>V?[ M%,#/1-4!RRJ*$T 2%8O_AE6*[M^N-\XS7)=EL]WGW,V8OWK.7=QI0EZFL%?*BJ(ULA3B@#NTK**^+,JO3UB9[O./^U_"3Z"3PNU5 M<=K%8[_A&\*C2#<<+\WYQ68L\$-L KW?)X4"?UTTCR.70_MG]65)>^Q$!6DZ4;!F@]Y/K.^F$D&-(YE MR4LE!Y$AK&):Z4@\\ ]\@2V4!Z;H[;$^1^#38]4%Q+&Q]DYVTL7&U!UV$<#] MLT7A:]7:9S,Y9:/9AR6S&9;+P**= ;H+2]FU[L7S.3I?7-]=L G=(^2HA<.M M=T+_HMS&BO3%T_LQOM>W3+]F7*]T$[>^FX.CBSQ/%[+K:_5'@OMWL2 _V(7; M('D,(/Y[DEE ?Y%FB_CFBO6UI)5(6O +8K!9!T#_SOC-$2W.%';4XN^7.T3% M-0[1[!TTS[T?C\W"38%GZG]BO78FG ^$;Z'!<,5?B0>?EDM,8X"=5G5^SQA( MS,A/F:$L ;9.*2 K)S_U=(7A"JP/=))S/;H5<$E=P1H]L>&M&OP>=#7/T25^ MFYK_^^/#Y<&1%:1J^3"Q9]TP+"15+1TH?XUT69-(!<\][PY).!9"JD&./N@^ MU\OWOW^@BY]??,?Z[O_>S;#ZFJPPT\/+((T\[CHH9%_G%HK1=MY#$7PFU!+L MVP'5$O3O):"UQI>MWD5'YU#."VC7(3(POHU\T\@6*-M0%48;%&<+="[$G=G[ MV:1SI!N%-E=2>R+YXFU3*:633>E8$@)$O7;*A_6_B^O\[]>.R(.( MT"["45R?*=L-GT&N;WZ+LDNM^]RL_KF0.+DUF QC/*;!O]%CD[++E:"+0XJ? MJ[K$OGLG^##WU;67VGYI^X1%#D:8Y= MW[^\STU>,6PWV\N]I2$SL;&YES8Y4U(>CI2Q%91R)3I7V#)Z>'6DC:9@LJ<< M:*$(^C=+,]LZ0>MPNJR_Y=43-HI*6):C62Y>P@7YKMG P^"75LC.O^78F\[D MMOYXOZ^,;/ABF0UH6BX+#'9+3%*+3:%7D-R"W^X5GKESPJ*R%'-JABW0^1"- M/"\&CX=%5)"^9=?HVVW*9(7&S66[.'G*?XVU:^$%E<8N(B^-K;T\9H-KV=4OJ0E(XE MM<'R!3K+QYW^/W[2AW6V"VEM+($RM)-TE-8?W!)]<>P\C,.[6!S[BZSRP^-= MO6;$U/H559WLFZ4BBF<.5B;+[50FB\%M1?>MX02XMWZ1/](R68R>*#Z+)ENB M^6T;M5Y= CZJ-&T\KJ9-SI24AR-E7&6R4JE ,R'N=DU)&VDU)=+DY[(R68'. ME_(@N%O&B6F9;$O"[DRY+)TOYNE2<4L_=N,R6;3)U+5>97(/7DVA2:'9!IJ@ M@+"P<-%UJ$,J'JJ_E7%-*[?8& O/VY]+P4>#_FWBNL6C)^:1&TE<)XG7?[,_ MGG\.'W,;QG7["-IB/FXBQ^3I0FE]YWW$PKE@Q>-SJ^,[.B+''/#2]SWC+9YP MA*?98BE4I'D /$;E(N[E2(<\OLX;6K[L6\5CA*36V\LHUD<^O*[GD,= M9/K+:TS_7+/9J'RE_/YVF\V;4=YCF7:8Q=.?Q;/YQ/9GA5W!VJ+7L79&S5Q2 M&&DO\JSV*!5Y?*?TB^TP6\#C81&U_!# -?'5AAUF7T8*8GNYIVQE;VV_+ZC; M+!]QMUDLX=U8_*UR-YV_XN7@A7:;+=>!$8>+)9I+M^I(O!KA;UHA2 M2N^)TK&$Y#R8LA*S_@+FUT[ZD(XWQZ?=9@F4H9VD@]MR^_!.W6:U+8H+M>ZS MW*S_S:J]^_Q-*>I,P]9G+D1>46!VZ!2+Q>7\-?I9^7F1SRN6G+B*0LPN(D?G MN#S-A#C8]U@SX_$Y7 1WKP9O<544GC(8C/.PD7$8=WI+]&YH$R(^\)H- M=7?( ?IXML-X&#;<$\(7NX*.\6J%_>$YGB"=SC+);%,+Z?9FLTEU>P_-.#NP M1(C*\E*66+X_.TK'IOO\Z^O3N8G$^M?K7-HNDH!VD1C6-S/T9_'BI MAQ/MRXWA\,F/L1_-D%9 #T/SQ5/J0]1\4E(?DM3Q'$]4!-L=HD;PVDD?TK7, MK3T+]+4C\B RM(MTY/.':!C)AW%_%QM&Q&9I5+I@K[+%*&\*C>-,HG!M)-&> M2;1;ITD,WFHO=SVN7G\9?;D>'..91/$ZH"Q'%[@"S>;3,XGV>)!-; ZF37&DC:R+:!]G$N7S=#&?I7/9+2_W>TUG$D5)UZW/ M&*:+N3R=R^WAMBO':_UH"O P?,+__WGL#M_7L%/(,C!<1QXA@VJ@1ZJEC025 MMK^@J3;X]OU/U$C0P>$YI?"C3"!BW5G'9_'-T4:(:F@F#&)J5$7#3BU.%\(G MXL(+N*YY(:O@C\F"\O:-Y_,9\8(UNW28Y3^9#,"!%.F4NA8&0*0V^FLA\!)/ MJ=PGB@1*IQ1/93*N;$CR0]@HQ08G8VKC4RJ/O7GG"_>%/';GMU^G/3#C10[. M2D7 (M(7)F/(9+[EN@O]1'4F8UAD61=ZLOB):H"8V!HRQ!'ZOA)8)@\_&"G02K-1K76:->J%'QJ-R_KU7('_FAWX)^K6J/3 MIIH75*7<_OKVS<5E\V>;>G?;*-]6Z_ 0V(C>V3[%[#-1:<"8BN+$LT33XK]A M+:+[MQM7\DRMRW)<]YDI3I1\I? XG A@4*T1S#LACP#SNOJ"RE"A44$M8.)D M\\4[0@\1OB*,#6!K]],GZE&6S"$>A?GG),S)UUK<;7QNL SH1O 5EM4G*Q58Q:WS);::)>\AUN"QWYRX5 M);C\C:Y__LG?CUL%X6AQ&?*PP^4LZ9>4S"/"(:LM/U!6\,C2H&O@7$O6YIU,?S[RLV*9)Q=4K.R &N:@QZ$\71H2=J ;: MT_*YV)C#4R;,^6SG<$4PAM>Z]B #JYY/;L$;KJO-,=(%$PQ@&8**!]F4D0$> M,GQAP7?.C^ QEWN&B>..KGS>??Y>516NJ-Q;VKH-#@&9YS48VJA!%-9#]17M MT:#ZNC:B-'RM.=Y\*W??1[U'@9E@WDH"S&=XN(X.@7FG^W9!S?%RS/;8>9&9_]9G9KP M'@N5@G"?YO[9(M<0^KP@4]L]Y<#1;):A^>+Z&O)*# 3SXC'BEO.VJ^]X.4JV MF*4+(63@Q)*OO4PL2 MG07QGX5016,@B$Q<"?BL(/RAK$KED0;\\FPW$\H,-VM$*NQ%7RTT;Y]^;W,H M8SS[*)D/7$Y63\[\*Z($5:($WU(.NY4N#+)CMR \3S.E70_V/#H,1F8G^"Q/ M%T*D_#<72W_#A'\]S;Z3"U<'%JWC LTF(APBH.RT:KT!NW .:*="&[]R,7#H6XZ/RS/%T,<>?'YF(W ML\LPN)E^0>"8&[ZO=LY[C,@ESOXM:\ _+.-L?@)5)++&EFB6W_N)Z?O'661B MQN9Y""_C,&]5GYQ!B*,C6%@5V?_6P9CWD:[C\ ;' QWA"1$[U\#;;4>&3_3T M1VO\]/?O\-X<)L/6N9![H0R&_;",$PJ]TDK86KI2C^?S>#[F*?"=CD=MM M)V.04/ ^H2!QOF'O([S4!.S67F+JX4P "O#ZGFJ2=C%B]>Q02)P1.AK*1IJ^WY);>27\JB"!0VC182 MD?R >TJ 4_A%_^&WE?_[]*/ E/\F1FER!9PF?>>NZ3T61O(),Y/@K OG39V% MQ4VP-4VS87 ?MV//TX4\/KYP&[UTX!M\MD;?#@I]B6?&L@6Z5-C5,UOGURPN MN*X:EHY306UDFHK=VKE.;J_19:G7NOYM_#RPPK>EU5T,WB_DBBU(J^RN;(_B MNBF[K<;^WL("GLXS#,TPR4U%;ZP'M\!L9%Y:/L?0^=(.)R&MJQ0M+A=WH^!I M?LKFL&(9('I(+V./)UB"!_TQJOU]Z.N_DG/XIBW,[M*P!(O.HAS?+7$\MA3I M\9O<7*$ )O<8#X':%8T1QE(,S]+%[/I+(S:2T_(:<_L J#I,LDB!$CF^")[ M_7PN_9C4(S_Y?B?;2@RJ#?LD>5;40^K>3&:ND*79$#ODDYG#V!R'T7N\V2Q+ MLUM)WSJ/M[A2!*]U-!9DR4W#UNRL6%F5FN;043Q+9/,YKWTO%\0_^;N]W;JV MA9B.[?6YZ3X[Y:'AM>W)CF[*>F$(LC>YSK(,S;*'/M8X ?[Y4D6%^_,ZRC/DQ%-FCML[J5K/SE%F%@ .WC M]2LYFN<7>U<7-GQ';=9P#0+X9[K*)49L>'>5RX\&[*^'0H*-V#1O3RB?T?H9 M"WY)I@%;1/W>S%6QR$3@1!T=*J,W3L51?N5"UDFMA@I>+^R=%4;>0 M=#DM4F%!7KZ+I-5^&'QMW7[I\V@+@7Z,S6:]&(4[; MK"I2KZ!6C6]_MTD([255.ROI7M;65V9/FF"OI$'\&\?R#$_GN5T[:!,DT9OC M,WI1+F7I$A^])(MD.8$>-[#V@/2!3FM,S9[B?+?::(_^_E+NC?/O V6;.V0B M-]KOJCX)GGKAAK@["M.]N=VW5@Y:=[S4J3'OH>(SA9>D->\&1ZCE]<;7G[*P:9?2 M"H=9,XP6,I#^$"">^?O\S<_GKS7M:F\M2=O=411@8V%=E&XO+!23'? >@LW\ MZ2G!]N<\.X>B#6 MU MNB-SJH9&0J52:U6>A^7'[G/M\OS'=>E7_R>_3;]'>(]A.SW$?"";71J;G]62 M=!VU]B"BD.2-VQTI%L""\EL>[?]ZKKY9XQ?M2,_H%1A',Z4\G0_1J1*!"HO- MTPFS42ZYF\Z2!2F/9Z6#GW>=O#S*Z4\?6Y6.42> 8CXZ4W06E M!W_MRCXE_VYS8>*ZS]_OF8(N?A\]W.YMY_FV[HJM%K),T R!WD4EW3];8 ML_#4C#U=4J*Y$ %^&DG%0\GH.@IS-,_NQ1O9Z%#D /.&]1,.J&SE-!-,">;7 MV\:PR/3.XVU3VB6IX\523O@4:/".7#V%)^;^]M*D>NJ0)(TA@MJ;PDK#IR/U M?T/8%^](PPT.W1_]9&_;X]KH>:O3 \04O7=1:8AU:XLY3_5KH7&CO/6[%]J MZJ"#]%$5]68#*%$>=Y]%Q+=T2>U]_YJ\\Y-=!Y32<)$)?C9A&>0PKP/7,I>A M-_YFZ!Q7I)G2,6Y\WPAGT1TB2>?R#%T,<4O!UET9U]ZR\'+JSM'"[OG(<^*F MW?5SHURA^2T7I8*..DE173@D&3=CR-*1^_XK*!5[+B)+\R&ZN M&\+3=6]Y ;!=18[.\T$B=YP\'0>G(%BB&OAMFXS*[>YSY5[HE;Y__?-'VR;WM,Q8;>?I3K.3@DGUT$!65>S?XBH]X8BDN[%]1?LNT MPR;*]EAS3I&?Z3?@S8*L649I?"G%8YS0 M^D+3Y^X(GU35^M\2\TNK]0^[,WWJS) 3A"4"-64.D>/28.6;,L563#%[>*>) M0.Y,S!D-@3BF6 0>^(X_ W6F@ M1ZJEC025MK^@J398M_XG:B3H QG&QX\R@4&2.^.RK;K],> MF/$2/,Y*1835Z<)D#)G,MUQWH9^HSF0,BRSK0D\6/U$-T,TV,AH:7G?>_])' M]RW\"T;CYX^ D #*#ZV4;ZMU@&(]S/SV?:V88U@ M+#&T,X0,41ACS:E;Z&3.;VCJ T&5GTF4-U4L\,>Y8,A&LW^-3[.!.)%\91FR MB@RC"@/J\AA_99_8B\_PQ5$-O"S*R.@ 4.>*)OXA+.@:]^),IW^L\W:?K?,; M-=N\,2Y\S:4QLB^Q-J U% 48"W?3$*<)_^UX#'8]XGTY6)YE 1P2X.\[0V>+X:0>+W#Y[K-PKW_3ODQ:YOE)D&V_A\A9[D\BAJ[>Z-1:]:NI M;%/SHNUS.N:=B9WE?8%QHA=H1W[FI&-B_^\2RWE !?.4/E5@T>N")5RS,;)X^O. M$($O-P+X)YCRL#J3K*]R7:?*2-<,(*]HXKP<_?8-Q!@?J'?8,^:83^X3Y$_V MTWN:^@EV&V=HKI I*(JE#R8T-?/*SZOZ]&D!HB!0'A-*>U3!AS2LGB%+LJ!/ M_-/39"\^ 5!\^Z:*'I"BD2W.\)T^UNP4_9JQ8%;J'=93"'<7(@6@PCDD=QGV MXAVX:/?K1S3_C66XW[Q]H^GNMYJENTOZ$#>M]L<1HN?GBWX_7\8.J>SM$L/^ MON'Y^QC5IH^;!/+--TM%%,_0%%8=A)C@0Y+G#/F)&@'D0P,7*F'TQ4=QDH : M"@^(ZB'D7"6FPY-C2\=[!4PP*V_?X+%T2W%N%M/1P%+LPHT+4!N)EDZ:2LD3 M;LL0!G0D&P9.8[@,VJY5/&I2%;!A MEU[:6@R0 JB894_!VPW-LW,JDGS71B M"PKE0XP'MW/QA"Z1?1R/LCFD!DA%.AX'_X+&&,N"I_3@31A<'BOV[?%X,;>J MC)\A819989EH;>'M&W<-MQ_:'Z@OY?*UNQ(?!J=T!2)H(]DT9[$)4VC&$G1^ MH!S.F/)#3U#(2HPA0N;;-X))59&(1CVD4SQ+N^0S[+G!;P#ID^Q]AH(ED77, M#!>$/)KJ6;C413!N4@ZN(0117/+ZR ,@>/31$3DC@9P_YJ'$7H/+H3VDR*!1 M(+(= NAX+'\9 BA&"1*, J!@U(R$/VA^0DQ:; 80F94"=E*0@'7@"]$%94"S M(.$_;4[&B*)=5M3&LDI.7^_;0@AS0,2&'Z0)\E3@!U?$N30@E@;==:H+/"\](H'*P,76% MT#O7[^T;=VA8*: /WZ4C$OPZH/ M9/1H:SK"E$,9]7UOX1PZL7)8@^DSW%%I5J]4C.T>THFF!!/Q@6K.(\* R29DN,$ %F.+ MD*;"@F!4@5+D$;$0@%=X>$9Q>Y*"P;>=N0I9<^T)Q)^P9;/?ET6DTPYR#)]X M!ZMO;-OGQ+E'?'W,MV AQYIAVUO $&E$74"OX5L^_GXZXPP>_ 8(VT8)X5W4 MLNJJ)MDD7X-.PZ,H?O+;!AEK!1+I.WA\(;+BQ\L(W"[L>MEL1)H!L&\%3.A7 MLO"[*9N6SSEQ_!%;0.!G2Y]*Q062L*,%^A)("4BNXY^)]^*+)#Y0..*E3'E$ M3#[^EP[2T9@YG*DP$Z,G$1%][@Y)F!> *B_ZP#/C :DEZG]G@\[2S(5-N/P- M/I^]EO((.X9=N=X5\5!,GF>ZSPU],"Z;58.Y@! 8$())X[WAHB1,0]7<-'%T MP7%TL03_Y8(:1DD,C=%ES0-OS$J-C5SPNS%OP&- 3-"6?S"A#42"O!GI\[.) M'>("(]BZ"Y3/4!X,0>78XSR": TG4X'Z.),9FA\.19=4^&C:'LN85(VQ9F=N)L-U7T^[WV]M;A&NR#&A+Z A$ZA M^SRQI$GU*E]21_R[\_I:Z0@,7;O<=I]DGL[@8.^0ZFQ?XMF?<]35G$ MR K42)/DOHRP931US1C;21YJA""4E6A<:8>@09+M ,UVH$@<3C;VP)LBCGQE MG%\BOG:00QZ8[@BM)01=_3[Z.^IK1FX_6F(%/+B]ZZ;%UN]'1K]PT]\//"LJ MLX6T,HO773CFRFST1JF%'I!J(?QZT$U^RRI[_,R!2^&&Z#ZKMWJQ^F-2O9'W M(@U.MT):JYM6P[A0M3HPW#=?&_IDTN-;A<%^BG4.18%]5 ,[O*>4-89H# (2 M1"!OU7[4&K[0[L)\!CO88ZH0LRS:8;9M_?-,WDNT ME]L5_/>T&N0/BG0D:F";GTD6E\@QF'&DXM#8)@72#?M>5XUD@05\M'PTGDX.K"AANGL[)67RU)) M>$5"!Q@)N84$-[7E3$XYLMR*>T0GU ?#M$DKKV M3QC>@8YO-W+FLO-@#K/8.'+I:-_YZ_2)P_(P+! R>N@FT:7A)'Y$$R=M&B\G_ VCH!VN T["^H:4+Z>G7XJS^",E M6EQM'&!EI-I98DE*8I MYVA(F]GG?[6K?9Z.M27?6PWNO3"),;,!(FT7SL6?M@Z=L;%$E_>P ?F ZUQ^ M M"SNMPB^@(< N,85DI^:TX,P(?M*Z7H,' BZ:JR0U3QP=>)1H"/FEZ(..-BU'V/Q!;A@( M4LEOWV"FU*PI=F"J1Q F&(M"P(^D; Z,2C!M/FH8>2,(4GT28PPU2Y&PF@7^ MZ9$2"#&Z-ML[-4/,XI13"G%?)5U!1 SLT8>^$;#_-?NT;YZ%H3$%@QTP#UZP M9>J*YXB7!\SHK!F_Z;0>&#,IIGM+(VDV<"MR]D.!08?EHHWBHP=07'P MA,5" R_MFA-V/L;(,0BR>>/V.MXJG=CQ@F,7O6SE>%::R M[M2G!;<@2Y67X4G&BM'UP(D4R:H?1FQN'>L+7TLR/@,>OIYSEN>M\H*#[:HD M#*ALN\"XMD#DVZ:JS9*N8V#72\GB@HN'RY"%.WY,8UZQBU/#B'G"TSRD_"G@ M,EW_[1LDB$-2''^0)>Q1.AZYG10!#]!IHIK5:T2W.RR[!,4Z<@J5=LH34";; MQ^0Z4F;*U^Z#I.7'O@7W ]6>>=TI*4X[-^QO@0:8 M^K.&^^T;Y_)#H(N@ZQB_=F9[1/H=^G9QW"'&)VJH/<+"=!HS@8A\G 9Z R>M M/>-EX/X7WXBN1E FKDZ94)*&$]T>!*YXX5:6B:;B;(X=HN-"M5VLQ'I[.J;; M[N%IFR5B\D(L7MF3%T\O$/YTBJ1C':LFHN'\/0]$SCU-MD1H[=#08U-A+IEA MVQ^G^RE8KT[#?S RV#F:TTEAS--L9L5=A3WQXDK=M06/15HB[' (<_ TSO6Y M0S@5X70NXFX'(K?+?IYRF_ @R IV NDE@.%6&9<".)=AMT-,NXNP--HY"2?_ M0-QBO!3!($.0FC!665B&IGB<\2)5--! %3KM(.;0<>[6UT3JUN,\_3BP9-O[=A .8R,/ MX0:V:(ZEPM1_)'DF69VZ^SY6PL3%/H4=N7IJS[N&U@X?YF,S#Q&V O=SRC2F M(5F,*<-X0D!L!S @=O$\YB$^!,$JD:2I<2/II(F]01<7'#7#;DZ90H.#.,L< M:FZSLH[;YVR+ [X-CN=F')I *8$/([M)#Z= =)(4!73VY2>GVW8:>SGJQX-P M2E?PM;#7;;_41\0!<[P;UY(;FB+-^@E>CZ[=H;G$S[0SJ3Z]:--%"(BVW+0J M(N%V5P.>9*!C?B'-M.;R.*.' M1 &O6<;G6QKX&%T0/]-GF?MV)X;K2L\'2$23 D%$6*\QCW."!<-U4NJ*X'1GCV6"&_7L:!'9IEZ M)4YES!K/%&&T@9L?$TQ[1X4!UE$1=)P*PL_ PF!:T?B Z[6.U9TIL-EKMC4] MN :B9E/4=K.I \- "9! WG07;U&FE5Q%L*=TG'VIA"XA,"SV,1R>]$]Q\)I M'7-LI&^/EFQ[/5XH8GLX&"FZG59Q?1'3CM7DOKU4VYXX9 _Q$/G$K[]G!)7,E$#Y* MK#.O$O VHH5Y3 H\-:\QDQM-IZ4>;.)>C:5D6>'FF#ELFQL]R6!?U$/ED.< QT,=4ZI[ MA*<;*DK2/$>T2F8S0%$94$]LD:Y5?67TCZ:P4>XP),++T.WH9M?^7!&FTIF6O9WH!FC!5,DA."<7*,HP8P9=NN,EL%/!+1\J MI3(V[Z+DZI K^VS'Y'OVC.G),+F*1H>$.&!8K0&@%#JLSY+HF8%YU'39Q-EV M6IY&DM*,PHNA$$>LR2@@$B/JQ6#?1NG?>>:3W-JR)1[3_09:"J^X+I>5^(NI MXJQ&@ZNT;T]M!QRIS6:9R,HRGEG"DN, =8O7>"EH_ "#B^^.(_.:<'+ASQ:J-%<) Y9_33[:5+ @I\D]:_J;=LBQB&=X_A5)M).*2/DH6@)ATLX> MX8(<[5>S"8XKK@&.Q<$6U=CIOU7"])"]L$VU;I*C8#&O/:;X$QJ"E(/&;?&N M0@XTG(5%WST]%\9N20@8;\N9/5"='*,S MC<^ENK,=34 ?=K].,[#91:1_[BE:9]@EX["T73LZ-UP=XET18I@WZKG-C)MX MODOP17T+Z$X94>),2)J7#!(1 )AY%^M&$$9E,%VKK^/+1*&T9)II?16[#]"R M,E80E>DN=M)F/CA?!(/K<'B2#$O/R!$/5*)&=ZD9PO;Y,;.+18W\+!8QX5!J M5Z"".K1B$YKTVS;#<5!AJ0(22BS$J%[UP-OR_+(_\]S4=:-XIS>5JJYD3(G> M<-=0[FOK]7>KKCHPB'WJF9I[=55W6OXGHBVRPJ?B& MT@ .FEAH.5L)=P<;,.$/R=^)*YB,_/H3Z>C6TB77TIU -5K&2\6NB32PP))U M[$I7/DJ4V4MR",@FT\M+Q ME;"H 2?Z@(SGC#*]0MT=). Z8]<2?9$I+0LUS,(:$/E-7/]6- K\/2BMC?-D MM=5&S2%-:\^D#C(INU#@#6'Q)=-4F#A649@)C8"0%1:W$R^ N7DR+PY94MR: M@1K1WUK<^5MQW<6=OW43R" PA(IJ6@6DF!C+:;G:N]5J XZ?_N M=']_.8"%9Q*:\>^I## G_9]2'%<%@)"F0P&MP ):_89T&(2)X;[_[U].<-$\ MQC&G]1BE\ @D0U$\A67_VS2X?_ZUJW#YUQ'8GWCJ8V&MES9T%VJ^XKH)[$'$ MQH+K I(8]Q8BB=Y$K"2Q4/%/6>CN1!.XXDMV@+,JRB!'\I::]\_=8EY_S^Y7 M:S\VNR^M76BQ9$6N2^^L"F,F)30:=CW&AFD,#PYNJ0W\ MQJA1?UGI734;#:L/HV>U5Z1\;V/2>DG=5BL/QV^/+;N.(YO47_X5BKXE1NK. MML0*PWK=96@'-R;"LG4U I:U;*'( I\1LWR^.+_!_,Q##[ZU2<&I$@.<1!M. MXFIP&@U_W8N/IJCD>YL-)]&&DY@8G(I\02CRQ=3\[ML;!*=,+-1)B(1+B(4_G/=DH7U_\/OKQ MO-EXFNI7F@2>BGPJE>-S<;*[%62W!U]W4BJ=C?)2-,1B8'G!#1*RW!-?%G1Y/IO+\X7"JAUTX\-"_B/E)R\6TK7K MYNE]4WU_D3\>"[,EI#BPD.7A)O*IS'SZLRXLE#]2^/%B04FW?RG7J=I=L_WQ M6)@MWL2!!2'/P_"\D,YL#!B./E)R\8+AO")#8;9L$@L81#Z7 M3_&%?'Q]UI,P)?F_'6*&NU"'=B.5V@@CR[ER%X,>KNR(QPAFL]EB^3P3W@*P MCT-@7T8V8MM4TF2Z262/G"VRKH+>/2I?:P5#[4>V7VZ>.!5IKG@R?S:;A M\N3G7IY ZVQ4A?$C,7KR03);1(QV'](/;_U\ZJY5V'R0ALIYB8(T#>Q>X#/9 MXN<%:>J#A,FH()4>:T?*Q;5Q\KSY( T50!,%:8XO9C)\/O>)05KX("$W(DC- MTW%.EYL_,E>;C]%0N3A1C.;Y=$'DB^GY2O02&(W1G!S;!=RZEG3^I68&9*H%S!X544LWPF%=2X\=-@9H$& M4I'%Q,EM:E(U"\6*475/']>)6H&9*XEI:&RWRJ1QPJ%1"F/&WXW*'?'LR2*9S1791W+LH[ET4]RZ* M>V,7NHOB_FP+W:HH[B#6>S==RXH6#W6J18<6KEM77%PN"3>;/6*=% VY:==9 M9:6;]JFNRSY;G/.T4W#O!G8(!0/+ %<\-9Y2/[J7)Y?"9D7(3?O6V!<:H:M9 M00_-Y8I\(3-?.MR@P,M$?&3Q ^S4?"G_JI5>Q9ZZ60";]HLE![ < M;^C8((#%D\),< MO'%RJKEOTDGE[M7L3PHG[ZW-=_=&$D #EKFTD( A77Q>F)]- MMK7!"'&X0A(060.Q^DL;Y :ML]23WMQ\K$:296/$JLBGLT7 ZOQ,M:W%:CQT M-7;I-Q"KA>;KL#AYK(X?A,W':B2Q.$:LIGDQE^&%["?&:AR1B D(TH%857OG MG6SNXH?\U-U\K$:2L&/%:K%8Y'/)T-5D+;9;$_&:BG3F-RW MI.'+V=7[XV_'L[]HA%C$HLI":E=5&=<-TO2G*ZN\(&2<_TNP9G+=U5GREO10 M*M&V1+1-QIW5B&!_[];5-.'&:9KP>0KIET@+!RNBCD/FQ[K.6#6%6?, MWY+3ZN?DM&)QNCB$-?Y^HPUO#?V=])#HC;G_>*LC%U,!9@+[4%Q'XIQ(0ZTV M!EI6RS%AQ&L7B#3$,6N#9!D1:JX^6;6A9 PK,%EJ0J B0AX(?V/2K[U?7IU> MIMZ4@JN0TYP]B,B>9D_8RY!*YDW;9:ERIAB1(QU@/0=0L142Q^D3@X7"89"Q MGY2.YOIJKP<_8U\#TJ*#5:UV]S CX+'[MX7V!F']G5ESC_9H2!JCN3LQDE8! M(XWV,,.6N=AO":4.&OO2D&ZZ&3+,:Q;G13%I 8&.S M5\5 :BB/K :- ])RQP-T/\X#M+7E07I+FJ$(>!7DX=KOP?G+4#PU.I=JP2EH M=ANR9]8>V=<@J&1\-$ ?F$KK&XSW!@("H,Y?/SZN3?WKWR%&9._OC17),*=$ M)WH3G"XS,T0KH=*8O/?>NEGCZE4U)^Q MKZ"GD3AKO02CCDD?)=*KVVJ;UL%(;0U_3X2'-P5;\)DH]*C #)UN&ZZF3*PQ MH]TWRE"P\Y.)3<]TP]MLD)T%E:6QW5+/W8+3]QA/9B#Y6L8.E9;=K]/]V4/N MQC-]D-7QT_L/&('(WD@T41!4.O \EF[0L7N8.)J M\\Z =\CYD8@]JUH];-Q)1#A\Q>HYS=ZH!_5!LTFM 1 MV5$&O$\UL?2N:OI:N*;N^B8<3N@"7(\=)M@M)QI#G=4[QYW,N<1HC'[UE!"/]G?2.6E,LA>3^_,?[8JD.59#634'/0GX >RQ\IW#7H-TQM^X MKBK+("K^6VMU%7G4(Q>IY017$0QF)JS-_J4GF/=73Q:?*\#F08UO).W'Q9\*$G82_$*EBY27FB0U:$-.@R6CRZ=/3 M:/ S%/B2R133Q+5X$;-#:Q$6/ MW49O*AV%:E\K0S0-]*7K/CDY, M92,L*L/=V"2^7?*)"\':1;29S7!F4=83']\R)QII9P% MM5G&R:5]9"F^F!/Y5$X(LT5^%!JV%$S^J6P;GL0#03Q(1[5P3T<$8<6R#)_- M! 6QQ8:GI2BV+5\3DFW:)%L4KJ_RIGXD]\09)/LM).DD3$)(@$@'R<[1]W*A M$(8I;KV.,0D=WK"[8H,F">);X'.I+)_.!E5%C_E\MQ43%AW8*EBL2$-S?"HE M\'DQ*$!N-5@$TLV4XST IF"MEO8:;ZAUH)5#FU:V4S\&CX.7T^(H'ZMX:\7? M8)#--RYU*(A958OSB&%E?N/8>FBH-Z@J>6XQ6UI98HH?1971*S:%QR2HL(CY M3#D^GPHJJ;ZI9'CK8?6!A#TZLE85A@52OK<@Q,_@%PT^/&Y,?C^?W)5;-YW* MJ+-<\&%2[K. A&S+\6+ZJI7M[WG"3(A)&<\)W5A#$@6E:B1B3K8B7@)=&4VI M1P(H6.2*I(W0?R/X!N7148-A#.JKTAOS./S^WIPHJTQ4)<2.HK#6[(FU\@5^ M9_0[4=!R#P^9)W]G._>N!6Y"T :L)/),S3SFV.^945.'0=7:/3%3Y/BFSJ48 MQ[E,A59?*C?]HG!UK-5;:]C290.C9VUH>GX0FO<:1 O(R3#^\KO M_+8%Y%AG5M7@6(:Z,:ZH9JNGHX,X+ 3'?>]GO=:8O(HC+==I%84?PB[B9F[$ M3'\'C2*64[;7%6%,WZ@F:JU_?'U_6;N\<$PV/BOT&6._BF M;5^*,O7?SW29NTUY48> F_6US3Q^TU^"<:%.Z*_P07\YG>%KR?\?9L<[C/O8"R> M:B9JU7__>C.:/WMWH]#:ZCZCE35+\HUX3\[VBSK^>L[)DTC^HXY[>+"(YN?: MFN5M@1%JHSHG*+AB#83W@3#0Y&H^$YKO]B$G.!V.L+9#%&,[Q$ +XG&0\',G MO5V!DF2H((-2)WGU=#*H33">:?#[;'Q2?IPH"?G(9Y+O.$0)6!S7MU:W'4$^2%\2#GD3('2\6T[PH+,C< M-^&0MFO,;<'3B@0WS:?2!;X0V$X[63P%DN12$$D^-733"A=BM!B(\O7D*OW6 MF#3O1W=O)^=G^L.LJ/A%94AOT%#17TDF 2I-%NG8='=D.LEK138["?*=P'*U(EK-\#O2:S*+ANTF1Y5006<828"07_$XQ%>-5 1)] M76W(:J-O6L2Y?'Q7[G7+O:NV8XZ-7APV7))>/WFV5XT1"V2UT?/:DG=H)'P; MOD2\#E.(2$8"S@@97LC$*K'$N5M?5YK'#D!S ;2RR"N(:3Y=6# &_H, %$B/ M"T'TF&2,4B&9D=^WMTKYNO>S4KEL+4%^PV3F#R2^/!8'B8GPNF.(-RJ<>1,$ MFX120@6^B#6: ^LSK[)I*T:YK_SZ#CV1T+-JS#N?*8)RE8N#\X<>_U3,V\S8 M]R,@LJ;\X]>1^'3>[RU=>'=6O&NN,1D-Y(NS]M5+[^5IZ4_,JN?[G;L9D%)_ MWQ +-5JAR*[Q*PAK*?*[9.G> )2RE2]3T5?8THJ^"44I.U'&-VVLY*204IXH MGO6PB&Q9-X=FK2L9RI%D*O(M*]D4%LCL-NZM.')C\GIV6C!;U5_]S/)W8A>^ M[(0O9Z,6 4Q=]TK*Y?E]24YO1OARK7Y3OC@X*M6.*USYYNKV^+I6JE=OKKOI??A+_^K0UAN@=-7"J6IG,62TH= M:Z9"TL4,Q1S"06. M8DON!+ "*^3Z%_@/WTK.%L?L$*))E9*-$=]6!-)I)), M%IQM.J'9GR]">S7:MTHIK"7,'59 :^!X3B!PL1'4H*F4*SW*DY/Z\5!9J3[5 M6A:SZ>,YFUUH!'4V:EZI1\/ZA5 8AW;#6OKC&X&Q;",H1_.LFLG6ZN\_EM$ETQY]?7U1=<0F'CW%M%KY7CQGSM]__CL_L@+>C=P%FZB3I75;DQ4PL"3T[V'TN>B)L\/77OVQQ/->ARR-%UR3/ IJC@_1CA3Z%JW MDUB$B^4+W82EH]8R:3Z563"E(WD8_N% WX \D$3D_?5 .BWP*3&F"A$[2.]H M]Q(JQEJ GLGE^$(Q)K5W!_3U?&Q;L1ZNU*Q-3DGG8RD(O@(2Y^9U1U2*)@]P MNMVS.XX8537AZ"=F$X$&1<40+9K!;'1K2"2T$Z6OK^%%"\*\;=F MV<%N$UM%)*%$+*\.Y/E,<4.+:'U.Y&TWP5NR_\*T=T H\D)ZP82N'?#^:)*W M5*.*:9*7PQSP6&JMKM0]1VA,;NZ/WM/WC]URJ[5<*E-2*0/1)M#[F4$CRE&;[R_AUU:.-2K$-(' MH'0IH,J8JLGI<'CP)UU3#L:*9' #DKAR^#'9%QMW8";>1)*Y CO=US5V;/:! M.>=)4F:XTAN!)9#V3G1!?6G,-4D63UN!Q?L" "#D!1,_&P9*JG4 MR\%@G*8/.:G556%!\M0'S1F?]'<,WIS%G=Q(V M"IK $_[WKX.I< @0>(3PJ_)!C##)3%IRHDW_B?IIEN8_I9\HJI2P)YDZ',_L M)20&)M/&_]G&Q)2NSG_4LQ6EG&P^K9,I>]*8W%>OU)2HIY7J,Q,:[+9"'$T? MM?-:059C,P<*23+XD3[JHZ$Y!#J&+Q!A#6E:B"@QGU:2#HJ?LI]1S-FRUH.K M-33:GA2'$$1]2$;'>OK]/"BHWB*I!BU( M@]*/_\3W]]Q'[N]%M.WP!LJYP_+GQ;)]O+-P&S69]F_#]8J)OU3\^(^]_/\[LW1]F$>'#L* M[Q$X-&!#8LD3VO%9=>AL12QP0U'R?]LI%Y^_GT)]^MN0>QYNOF'#=,%4Q<24!@$D2^F%A1@/OI>?*1>$=OY MS^=:B6H6\N-O^,[-@REE_MP[N*!>L<;[Z=8PTH>%+;N@=L8EU_.>YZ< MBZF[^V9YW/MS+T\,#,R[KRLQ,B&?XE.9+;LG:V1DV<_&R/QW\N3TL7=??[X: M8Y?DB'?RHX/AMXJ;Q7!9O5PM$TO*X,(ZYZ+U^^*$PSTQ!&PT39K#NX]BM.#< M!UH0KPF]D-5D=,_7A_O,:'!4.DF)-IF@\_A8SCVG55T26_WARF=!Y/,!795F M-S+\Z/NQ1IX=_UW[8*6S,&S]?M>O7G])K8VZ?.NX>]NA:XJ'A?1VR=!S^%6< M'H=U\JLI\58\>_CUU'H6C1W?^F@QUKHLN2)?B*<^5YPGLC[VN496F/\LK-!_ MK].YZX%^?C'IM8M1[_5&:*V;S@_CUU;CMRUMMH?4SB;:"/8_+QQZ2?$@ET1 M OO9WL#U:KBB>C[1VJ]W@ZKC774E1ZZTGYL1GY 3%HNE7.;37H#% G0V_0+,(=*)!/=^#)'VBW_'OQ_>'^_O4V_IYK9A M-6'-+^)!?;B4:$N(:3Z?B:FBT"8K@UO Y*8"XSX1D_,3D*N?G=AU9&L?)!??>_YRD MW]LWOTZOU* 8^(K2(@]R:7\4_';6E%MG_F#R'METKLBGA5CJ\V_4G5NC\)'( M_8V0XG*_N8V)L-DX'# MS$4QWTS\EG\:G3\1EAN_9A^_E+UH#>AL8U*]_7&BGM7KDW1G&VM E\S]/;WM MM0_PL.-2'ZOD3JPRT$&U4ENZ20I&VU4#W;6C\90XR8&>R;U))F=3(U\-U(*+ M"!VS,L.PU%>UI01'^-M0I>7#2$<7]]^Q%^FU/GQ4 #@MO:/A2AIJE=$84F-W M\'XAG>>-L_:MX^3Z&7G=\^YB8JN8=?66+^:?X0LS2JI'0M)4'=(9%T>H-";% MT?-#_J';K-6+"57&])6"_#\'!]R)JO3D;]PM4+7O,-3+2-%:0%W%[[2L%WQ; MX X.+-HAJZ\A[&"J49;[RN<&PZE+GR/D>Q!((?#QZ8ICTW0#GYMB"6R1KL59 MR_K.(;O\QI4,J:FVOG/7 %"Z]&L=%RF([K?^L5[#/]&29K#\@)T8P '34.1 MX'(H@#<84^J]26-SR4T@"W,?EN?#[AGBU.GI)%)_UN9N%=5L]71S!/0LI(!L MRAU--_.]QN1UDI8#\XWN>0I0".\FEVF,'B/3UIBFS4$%F0B6?S& MC08#Q6A).,G_-O_-'8;69G0.6CQI3/J%]YO;^M.)V7^VMVT^QTUPYB>EZAUW M7[K\>>Q?P?QB@]X#F*F_S*M".R4LK462(4\ +],-PB)A;S1 (K:+^,M5G_&S MU,2V:#6E=1AJ? @ =PD\/J6U>"R-.<(1H3]?+F71?:OT\?Y375 MJBXT)D>M]\M:;O+:O89%E(9>2934G9[2T?C]/:PWW<;3?L65T?87DMGE.:G5 M MF$R*4M17TEI) 4Y+=^/Y#&])>#@:&_@T1$A->N F.U0%X=8\EK-FA3:4DC M6K6?-J8 T? .UOL[VG2$,B\TT%"U4#T'1%!]X/JL6\RU4^HT+53&#>W.45_ M?9[6"-5_HU:(37#_-JNP<)G=PW66]BWUD3Q\RC+4;J[X 7",;RT5I3F,7DL[ MZ"S65%A_J<\D6B@ZG_G;:0#<4]IP=XI^M9/-E/U2!;$*K]A!<2JL=J5#K-E< M%-F)09I2T/X2/1WF1OX@AQVT;U7S2C1&L.%^3!5'M[T+45VUQ0>7A=QMK6H$ MB7-7BH3*)K'L8JL_5=2K: M<2UB-[=EBH\MKANR\9%LVPON[;*&.5'@Q9S(Y[(+]A:.M]+IQEZCW#JNT3%0 M1=02;MKV.S/NT%.K^&S^KEZ6*G].V4O@]'Y4[IVRE].Z5OHZ35!90^41#3PGJ4OL=>OGBM2N]OO]N? M7&#U=S-9EPXG\OEBBL\O&J[TA^APV77%FQ1T> 4C+QNOMZUOUU)16==9.^1)7%;C_^O=!X12&)>)==3EKT6F* MO)X;F>AKA1>?E2'W,M*'"A$)]O= ^FF->L2];W(T ]0SAXT8$CTL48(,H-= MNCK_,7GMIPLC;>4@LT7BR=)_9#Q9>A=/Y@D!E0P-Y=Q;Q2#AGV&Q9.YD^]!W M&I/W8NGH2J^="<-L[%#>9'O1!H6,Y2.%C*4:D_/C7V_Y(Z'YF$UO1LA8];I\ MBY8Y,^")^;/BF'[1ZDFER?678U0$V&OF]B^61>'S%&@X.D0;3'\(> M#.%Q6(!"?@O_Z -;I)'VJDE6-D)VVQS#&EY5O+:? MAUGYLU?<*JSKC3*9#LU7*K&O(*6KZ],M*5R),@&9KQE/3MRD^N,].[@V;@7Y MV?;3!\QT9)+M<=,6(GO/WCA_D&;1(Y\DLCQORM]D^$NN7A13;_VZFLCR9FK/ MJR\PK/Y-QE/_9J6LUX]:PK3\FT3J;IA1@/R'TF[K['VL,_C\0:%T$P8D!J! M=%V<:S[+6C>MCE\;J;6ZBCSJ*3=MOXY!"/C1F&*EC,))6%BYIX;T,N,U)B>E M]]K3I5E]&#^OJ,4(AQFTOBT2;IYI3'[GO)/ZO*$@V-];1'#11T8H M(\*\1PNCR.1,0&"OI[^9WV(.%(^P(5ND]JT2)K""$W9F\8M,L=P(8LCOEZ7< MZU7[N7O37[-%NMF%A]=TSKR1)\?1J_-%_?@F89=758E^V$A/);7:*(DOP8NRBK\J_)#EU6D\68TN$76QYM%3= M;2H@+-9M@VH:W#^X'TDDY$2*@]G"':WY!->-VL\U 7R# J\BIWUMY]JB13=N MY]IVY^:ZKC:+3+F+QU\KPRK1M&&SL MTV%VO)!)\>F"L,/7#E\NVB7$0KLRA0R?3RU8^W@A=*R2&?'@:_D7DZTOX&@3 MB K=?2VZ:E*8$3I'W%"EICE$;#;4H\;DM)5][#U>R8_]IWBUE:3ZE\VJ=54- M=C?Q&#"KMKYYO::?'AV?^6NQ4L+XD!H"P(. <*D%4/B?T$21XWEWO:&FA,9@ M( Y2@6$S3C9(;2@-2: #<4[?M$EY8IHQTAJ9L),'!S]=BZ !"W:_N1LQ+;0? M?P[?VN[H%-R*+QCK]37L2@8&@JY90@C&U93RO$Y89=8( MJ\K"U"JL\/U*L))&S_F6*C;E=N5-2KUJMSPRK*75YPZG5*I)B!&>,7VD7XG6_A F4T<3)F9-(Z,79RPK" MT *TC681@U^_G?W5^M<6&0 M_L.I;K#%_*&NF-=8J%^KI8LE\L_H59%CNV<7/TN8D@ MWE4Z^5\/1^_YR%(!6\(F&D8JUM1BC+';./M_>N%CG\I(:IZ8Z4P^=9.]>O[L MQ[YL\-O&V>L2DKCV:OU_.SE/YPF<_]N7CTK;*@AYVWWW98+%--'#O).#/][5 "=CMT?=ULO;VKK]QZLE,!XM)[UKG]]// M7/,]M[%R<>1@L9JO9 HIPH/U=T**%NRBR#[=U^*]*HQ%IH!%=N-Q*>>NU?-: MK5TM=<4E[EN"<6X_5XIG6_ 4UR4$+'38:PT02P6*#I;8((A\1BSRA6+\NL*G M/:FD8J[FGE0ZE>6+Z?B5^4][4DF%,32)YP[-+=Q\8H+?_NASKQ$I1"5G+N MS;N%!1! MB[JYX_%2#)A-W,PDDX#0UTP]W:'DF(O_%/7G;K2 M"^UL'$4-5JZ)L-67:H5:/;,5I6RVP.>+Z=5N3H3SW4$B<7DM-BM'NLBG4JD= M)+8.$BO5Q9E#)P 4N:RX \76@6*%8C9SZ$1*X,5%"R.F\[Q9SM7% Q,6#_G=+B=$V)&N M5WK.@=XI9B*2P$_K$%KH+!(36[/I#)_*_NG.N47O15+R8BZ5XX6H2L3N-)(5 MU(HY/KU,@,%__:TGY_1;/FY,7B>#EPM#31<$QT/IZ;H[W5]WJM_.K&;%A<;D MM%[-O-Q=CY3[\50++LNR]B:UE>.C^I_1D?9&XZXD MH]7EQ QV%A-RWE:FI > (F._RJ%._E+JTW9DV( ,W0VDE5@9GE&'7*EC*"3L MPNEIV\.G#9/<9-)_W5! NL:7CR3M^2>04OCU]6'I$-N1U72X5JS]G\'#<#@4 M/EM&[,-,I-[^'OWM%WA<8E-I SWAAK!T[)N)_Z5K8/UP_7.SNN&REFOL*==L M3N!*]]3AF#WX]9##MKW. _M[UA,PA@H[+/5Z8^RE^JK*K,6GQ!G*J]Y[1?VA M1;_?TR6B5?35(=DAOV/^D>Z8>AO,'99 M0O(S'#?4:F.@Y;0<9HD AM)BQI6*'322-Q;&61N+@G%>#GK-_N.=M4C?-%DH MC2'+^=^3<7Z2==IGXF1(/U6Z*VWV"@]@)6M#ND<7Q[78ZN8)!HOLE%QI8[P!H98E4S@<31N 0+-R>%E^-Q M)5/7%"=Y%:<,JK@U9QZ1HP %P&G/ TC8OC[>];I P7L M4T+RA6$ I^$Y?DJLO-#@FHH$)%@EM-P$BCI$ @7T%',KL 'R ,:6@(*I*,MP M'4.5>23'LM*&(R?$GS(%'R7])&VC'1:8ILTU9[% B:N_*;TV<#?"" DI9YQQ MB@FZ+^O46\Z!_40.24:8>HC.A#0%)SW &<,+_%ISS'T#MOB5@S4JM%H MQ![B8T[& P?*ZUH;SD'(?S?A%=4DQBZ';?6\A!JH"NS T/6H T98OY_:',WA M9,?O Y5F!U5@6D)#EEEF:UJT,EO3(!E&HQ\VVA'L)4WVT9.5*-BD([?KO5I; M:YXY]76G/;&4'R(I@_ROMA&S,G'P(&?(2')P$:;PF2^,QW'5%FU*= MYI_!7_]>ZZ]D<*O+;&9*363 ]/0D MK64A;FRS:V9Y:0UUO)<":_X\[!KZJ-/E*DJ+75C!XEQ3<,W^L7"MO^EVJ?1:[E'7 M2H]BX4]#J[T)JZ-5*/*%5 2TGDO:2#+&#*T9&ZU(R??W+-X"4(4!4P4R('VQ M!&2Z%_@:YWZKP*=SKK?.1[WI;]64P=#+RWBB&,6K5 MTH,N;[2JGL@-(!$ M%&FB0",K*!6Y%13X"WJK>V,Z #&]?5%!P(&_F2/0:^PQ0#+D-. 9I@GW\RN_ MOZ=3Q:ZM&J 6@O"(QZU(\ I]C^S/=S*7+ZVOUCA$>)J^2:F&8@',UE].%,5W M2Z)+]^NX+Y/;4;,\&3=_=?+9,.RV7D??W L*<_/YQ/N5$!J#:)&=3:GAQJI# MT(0G:+%4%(QR&!F&%?N@ 4K(%MAVW&-TOKDT4Q#8@[5>GGOKJJUND K-$0T: M1K7 +Q8(^@7\Z/!-)_8=$,L)6 &=#C1=?^"(8@"#$+Y@243,0N%(]U/PS&\A M/*.1\Q/62)WRX GH9 *S,IP56C>Q0 ++:3[>]])-\UA&%3416R+QC@%8ZS:?3 MH9'\/+#BCH),F-)-M#",- (JQ_;::ADC=)\-;?,)M7K83Q##+&/,?BIMB;\MWHC6?GWO__GX( [ M496>_(V[E3K*=QCV9:1H+>4;E_G.W4N]$?IL!>[@P/*BRNIKU"POMUL_AVY? MGV,_1\).!H%1 +:7V-,/?3HV )^;"F5A"W8MSEK6=ZX^'L!S)4-JJJWOW#5< M%[KT:QT7*63<;_UCO89_POW[[S^P_("=&, !TT0'Y\/F@K@',:4>F_2V%QR M$\C"W ?G^;![ACAU.CO7L6Z_5Z >*-LX7F>>,^!H5 /M\B,BGOCNE%;U22MI4H]H("O"OQ[:%([?5_5B!HEHVO+5(Q7%8X9G\'P)HY89E&2 MT72N!Q([C I4PL]\2@[SN:+#(4&OT<'*;*P['(HHK"J&XMZ.#(7Q)6_-[F4$ MZ+-C_?Y,_O%X?2S9BN/5_(7-8AMS%A*F%[KS()>4IZO7)X'$'W<,J/]A:/8C M'K]PF"(:V]"08.?0I-S61P8V%.F>LM"A5UR'3D>X M5)(_:;W=K95^/=SK>F[FZ07,Z,..+',8K@$%'!DW^\1:7]$52[&M*4,K,IQH M[-Q0>@>2(]F^$" 2MC;M&[&IX+<\1SPE5::=,[:;*=]1@B,3AZ%-E.A9S^XO ML8R(:!I#D$$Q%(<^27YF=]/"Q.CL2AK]JKS_NA?MVW_M[ RCD#(M ,A)UI1G MX6?.:A?+F9]:%2RBX5E##$+A8;B:S6PG\E=.LLF])"./@4TY/JK6*Z7]/28* MS@",GR $^:1\;*#$OG+<5(>RU!AH61K5$2]()N7W'^6?U[=IH5"<(O^^A48@ M^=Y)KW;444,RLC-",L*.%<@&"\F@X188](E_AR-S/(V6U8W'VP""F8D2NDLF MIVKH_IX31P!JDC>,C,D2Q/;BBC? 5Z]AH @Q"!&L,3 #:G<7B6;.<*C"%0S%4 ?F;29Z>:!D:"FH22P\? M2(D"C4XS25'0<>="*1C;B0:$@'(97 4(8$K;GP>$G8?RED!OFC\(1F>O*DK>Z MT@)Q!_ZX@H3O0=10_I_24;78FBC'UQG['KB2[6BXG)6?$RR&A*]2%,2TL FK M5 ?"Y7UADKVYD&:N,G*,PU*7.$,!3T!^(XK MQCDH'F%*:-H"1M"O&A6C]=">_)!# L6B2D3;0B>=>,-Y8 E-GB Y& ISRGH@ M-!5R_TED)=02':4!)2#4).RX?-M*ACDMH2$[0J@:698,8PP;[4I;"[TJBV2> MI8U)\Y?QVGI(]6QTEZ9GO53>F7?.41"_E/B^2OB"!4Q5XT@Z26_L#LDOAQ2]]+H*7QR/SZ.Q' M*]]IYF?BA3&"V 'C$\)B!PR?+_LN]]:8ER$5'VSWM%"D?IQN1,40KR(*V6 MY1ZETWU[MD3P@_D>D+ DXK[_0CT!Q)\]@JU#"1&CD<@?5=,<$0&GI9M#\ROQ M',"%I;$/IM.S:ZT82;8X1W:5VAPTXB:@/(T='_4#JSY0<.MEBQ8 M)X98))V+>:=8_KF;]JU%I^^(Y"YC6:$3XH'%+4)NT9;=S\F94CK0(T?\\NY[GX M8_$MZ#^1%I#]^T,KBJX*N5G"872N[E=C!+X@1NQO._NDYU9M7V#]5>T:UHF) M[Z_*%U1 W( M0*06ED4J7LWZF^X#J-P>G5YW+Y].*LNTBYQF"/%"-!M3>=)Y$LKR[VX+I;;/ M/PF BT4^)2Y16#,0X&$U\!IJ'9 [M)'[>'WY/FI?3C+]S:*LI D&7>0Z_W^2 M-\5;*WU=XM#GA/3X M]5AMJQJ+^E,UOQT 57L6TT>JI6 \(S5HZR3A2=.'BF/9#K+.A5&EDB:7:9K3 M)0YZTX1)D:HT9I!==_*:?7Q\>;T>J[=/MLGMQ)H8YYJ79T:+8#%\0O&@--3: M!DP@+8;:VH+K%X3%WD3=56K]G,BULT&AUZFTI5:"6\7,E7$43LGS&2&T81F& M2$:)T^ ,Q1Q@IO.KTAN3.%UJZN(DKD6=F/M[+I]H#)L_PS<\N;HH%WZ+6D?( M9Q= MC73>(XM@N]V]=,KY/E".E38"<9Y*9ZM9G ?/<-S2G,_M'YG1F=SF=FR#?U#U1>2:0SC[)9<#[0O.BI<' T-_A M*@[A5_M[0)0'%)%-1M;ODW''.:;E)C;"E9,H2R:;MBUKC%V?*W$'\$S45_O!Y>9=.7LMZ\N[D(' M/G?B":9KSA1_J>9S135;/=T<&6%!"![9.,KK M(/^FSK2S\]?Q:[FP'M1O;<>,=(S>RWE=)XJ1^F44&A/QQ\U]-UUJWI\[OG,V MWV+^[YFA(,FOXJIT?G/'E7_6ZC=7QW>U/Z.-1F5D6 6W3?6=1L^9'*W6[6%, M6'1O9)!J9ST8%].(*$?%)AE2JX6A7BSM=I8!;>J:.[E%"^5Q3HUS-#X"\MN% M-3_[ H-KP+;-.^55T48*" G34<730R'E]XU29HN=>MI3=N!*>M(-ZU'3*Q99 MOW95(RZ7FS^K=\W^TXMC$_1\@#/@"SR6'+QOUE_G M[0<3MZ86'5.N9VBWV;^)&6:6_+N#H.&J,*SVBV*YV1&>+IN?'(*+5A2> T$Q MM&G:WZB6&736AUQ4"BN"-H<$%JNZ3I/8_;W9-':F*#43X*(-J+=]V$,]0U^+?_ Y8T2FG?I%]OQG_+J6[VPJLF$EBN&,K MF"OG=MCR8,M=V/SA[-?E7;]PU/P5/\-=%[H6+E ^-X4_$LO]')EH)9]E<)HT MES]$J+51J^-CK6&)&#(__/*X./[O^_?:Y2^U==$)K?(;HZQJ@3YH.S:#WXOA MRM(TJ(YVH K1D^[O,D^37^:E'*(GW1$]Z7:=>E("V(M;) C7DJ:QE]]A+T0: M4(V[UD,QTZJ,BI\;?;&+#*&)(\$BZ8ZGNB!XHH\,N^'(82I03"R]O%U+SR^# M_EFR:GMBH(K;2AY>DG,:5)D=J$+DO[?3ZYZ9T5NEX\*6PBIVP6Z6$3M(LMM1 MK!#)+BW?YX\?.H/FW%#\S816[!);.+*X8(%M?X](;(;2PY*[6"B(M&,(%MK^ M%.OD\OMA87"?"8>Q2\*AB74!2#S9(7&&*&S4AY>7DY?+R_H&&3F3 F+L M/\:>M<5OCPUGT#EX+*BWF94?.G5Z44NMP]&R/ M,C)++0XRRR\?\_-94>962(:]R].'>OKQ=-3;8I3%KFF$:[PHLUF2W?Z>7[23 M1TR\BV*?GY6 GV],,D/E)5_-GA6UY_6D(L>?LGVIF*:BW P4/$"M0VH#F6') MVFYM;?:+C$_2YIVIC!XC[E,NI"*E(Z=:4S.FR>MYW;/ M& S2@:7,UYZ"?7E9IMI6%=(P$_ZD6Y>2#GK(W6A.LQZ!>NL$WMM7^5UIC8CC$G,4 M%: L,)BO03.KG.CZ,NGS/ R?-$?F;/5QAAV 4WR"=](=E-/Y7V@,M.&C&U( MX,NS-&I"=8[M=RJD%7"0=6AR^4LV];>KTW;&:0)X[/V8S5T7I:]N?H8#D?Q. M61J/%I:0%K;^8Y!U (ZF#ZT:,QR>*'Q9 M>9-Z ;\BLF:?=OOL%[=)CE#W%]@K]CQVNJ=TR2?H#UM!KT1)I]JV@@>0&;2 M(S/'DS3T48?6)B+E-EDS*0:[JF9W%[=Z? <,;UKM>'S+\@)4):S\9:2R-CP# M"9=(YC,D0)'>K9J>-OH!3(J&ETIV\F_I1W"RG\4-[R8B(#GI%B5A5Q#W;(#[ MN;^GNJB&Z2,;/IKQ63;'ZAD8+SFQ68K=_2SM:9]FLJ37&&7L@)?#/>0^$I@(X?94 M>=+KS=;H^4=^?;C-Q(+;K)#CB^$AO!]>N'4-^O"E*C5I6T[:96$\LZW:/"5Y MSFB-R2]1D"N7-:>M&K5L&B(D%-TUP7 MK:N^FL7!4^]NH"QQT79MTQ(#;L#A)=+\!B!;X/.%T%)""_*#RA(@]?1+O3.$#N@4$22"^BJ)I$Z].("V1M45W8/K^Z?SL_28_NSYYBM5(P MR]A!3VD/OW'%0:RG3;JFHF$1U&%6X=COMK#,CW\XV4X"Q#D^FR_PQ:@-UN<" M68P*Y)^N S]^;\&C)1(2T%"OJPU9;4R4=_/\Y%Q^,HP-:Z".R^+4_H#$S*C8 M; 8C"/]THOUE!8R'82&1ENSI')]*1X5[?/OS-22D+;B_>\A&H30S>?LM_KC+ M-D^.2NU-DZUOX2I@A-$KMH,B^5/)4/)=S^H%64P(GI+A**F,R!>*$0W/RS>P M+C8FW>NSZXMHWVJ%:6PBT.($(<09P# Q+R0?E52U4O-@=$B MHBLE9S%G35BA*NX8B*;!_?.O5;<@IN]0;WQ2<19I)QUN\OJB_'[//)??CI3- MV69/UOP:]EJ,M-=S(TEHG;I2TR1EWQKJ46/R\J9>')T43X71'"$\P)Z2:)(- M63J=\&) \V!JE<"<-7UF[JEYV=D=2MPW[9^F0C:GH:8$4*8N?AA"<=@YJ9\L M$V\P-[ GGTFZK>5?_P+'8X4(>4Y3AG'$^D109CX@SF>!60D?&PHT$WF)6#7X M7";'9PJAF;'K"/W:=M04MPTT+'%[!=NOF.-S46V_D4/$5C;6)LE]PLW]JPT< M]]<"N9N[J.JEH\AX!!/A5'Y/#:HWJI2)E:,E+[2X5A2'B+S5)RW.-P:71X:A M:$R001_WY:2>J[!_3-'\:7;*3P[HE;TVQ<&FH2!P)8U2W&?29[" MI/!9IQ;VSKIX5$!"^P:Q(C_BD@E7+HH"7T@M*,#$>=C;!)"@N[CY&%E17@%\ M"'GX7V@:Y=+GO:P_[EK76G.I<+?7.:J,+ZH_F^H,*AS.>#^(#E_J6N> 9O:O MD1+/LU"M8\P-I;X.V)(@P!E>$#&;>T%E8%T$>!-PL;E$=PXT5J2[63Z5S_-B M.F)0YZIT-Q,E#B(EL. W1FZ'-KE]N3YJ5]\?1AE7W-#J0N]4"%SB])?&Q7T0 MQ?7:1SY:^EEBBAM*PS<@X&(C*/?6XVMS>4$REL)"$;A )F*NR1(

^)?I2!>O]WT-U9CL"BQO"H("ZRS!9F"\B4$2@.'4 MK))J1,2VJJE-%5)0S:DB:.%%AA[8QTKT6W?6I\@?Z_ = 0,(Y>$C*^9"W/&] M@OY04VJ/MSFG"\Q#Z*Q=1;2F)CNSB-H,6G=@*JUO\L@8DU3H62"?O\"__A4/ MBR$5U#C\0&!M"EHA;>[965&JG(%EQ]B9!52_"#BT<*'&MZ8*^\8=?(*5<,5# M"^B!0$XO/U#+K8OV\?6M&GYZ@?,./[Y(]&;^M&/@=7,*P68/0S,R_PX\YDC% M76%7'Z_%WD7?.!YKS6TM[EK56GI?J4OO>#(]W80-"ROMFG-A<]9KC4F]I%\8 MYW6AE6GM"KNNL;#KO,*I@A"IYJL )YC.-5/YE' Q+&Q&S=?J=?GFZIBKEW[] M*95?Z16SJE9B3:26E?B$I)F66"(U5TE4!XEBM!3 ,==7AEU=!OU5,93F&&AE M6S%(74SIG7.%/7K"'$ESRI;>T>!4Z$?:M,H3O@3$QF2ANO#H<&BHS=&0EG5B MA3N'2G^@&Y(!7U/;\#GZ:%,9OBD*+=^)8Z#-A/2_;*N:I+6PH"@IS\DJ3DJ& M,2858EGA3RS4'3)=C92B50VL^FG5%R-3;=+:4MZH3MUDK^!:8"?4(?T8+/-- M,F3SD*M$W*,^\+41/CGQ*@T%O;-4OI9(% M_$#+W<(1F6'[AE]RC].DAP/(QLPW ^-9@8O+5"11X+W6$$0,+=))XZ9RK:ZD M =/'F=D35TTW MBD80]5'?=:LLO'T@J]9.6TO"R\[6P@W0KKVP15\J@% P(0 M)9+T(1&Y0<((7:P/AC"%.\*^IP] 6(,_PRSAZH#00$N]PH'!]/JZ@7:.9P4V M%6:DD:*V9&HFWA;82!P:=L+ X:UJLT&;\J;"W_%MLK-P^R;6;OH%O %@MH7U M9?$<<'\,&6O*@O#A2>W"71[ GO1PCQ&4=I_7$:S1&$ILJP>ZJ=+BN"H6U;5N MN57=[Y.45<6-)!6$33Q+(DPZ2VT[-5?W]\*+KMIE*X,K41:"!))CNHM'BJ:T MU9!:JGWSI'>1+[5+;:=&Z&W(7.<+O"&?3KJFJE@LS%*U@RM3'D?O M]5;MLO\C=51<\Y;%5EXUSV=348M48NM'J M[X/\^@$<3V'5(I9O*BY?#W@V>GW%53/YHY^WCUJM>I)>/WKC*;**1=I"/2M! MZ(45&<0(XY(]#E!^.,!_A8-;-:E4"2..>D.+@_IY8A 7AQ_08##-;('%HJ0T MD PL(-_#LNS$EB"#(!G4(8]^FAB_/#((ZKR.U.+FZ_0SUKVD3YN<.6I2F97T M)YCZ$)L6Y>BDL8%3J]ZWWOT]6TAUY:LB#V>%X\T1R'/LN_["S(AE;W5Q?,-- M*$0F'GOWV+V1=K(2;3XXPEW4VVVRN6/R=L")D&K/!LF6H_\B9$C7X%VK<*M= M&M^"@%7[V=D5UMG!CX Y&T)E6VM'/H],0T5M5#5<=\8VF$41:@+,?FY)YMCZ M@$UFT%A6AO%4;00[>V-O]?R.IY/GULGU[?EU7W-).L=A*YA']Z+/+&;99UZC M)_$PO-D[)8:.9N512",=YMRN .0YN VCH6Z,IT:"VS&KFUGPIMYA?Y46Z&MD M/TO#$P6T?:E7L[[B>3@"#LH_CFZDZO796=T1&&IA4UX.!PM->;T F='0,.)! MXZ7%MF#,U.%H?W?_5^H/OE>828&6UV=\CJB A .COCT AOM.7@+J.U,2O+<( M>E9.].Y2FE)U8%/W $!)])7B17)+&DR928=V 55,>>[ M)$J>MI"+#-28O-_6[U^.GO+=FK)S4JR]^YP8M?MO3X^MR]4_Q/WCV,S0R#O<*NT3M[Y4HO[B4 MWLR1.O3LT6>0_:-M1VE_S^/D(!VT.,9*>W1KN"] #?$7\/?_JO_>Z;*A=D;* MA'L]Y,JW5:ZD&+H)I!*;Y>$D07 ZY#GT\/3@TJB@[%_KA\!9#EJO0&E38NXK M4>O::H]8H_?WD"W]/*P=ODDZPW*W4DR83V+E9XW!TF!/;3V0/8PG=PS>=^L'>#-A]PV1TE36^2>- BGY@@^ F^9(XD8.XAB\@^> M-PA""F$\3'2=ZOUD[00V=!P1;Q/Z7@Q.:NJCX=3.?2=;\46-,DF\"ZY96HK7 ME03O<6CG(4>!XYTH36.$'C A0V2F5-C^@I2F=!3FC+(L0)HLH:OP5=6IQZ6F MD-V'[PL"SPGB%^GK%_$KA8V0M28+3V%O'?2' >E"*XJF=.#2 SY!0D?93!T2 MUV$;1$]JQ.FK)HC)1,)S^2RI&$H'[QN5-AWC"1$$X5*A]6Z$ M)JO!H,<&9L<* \+9:'11P.Z'@1:J:8R;S@*M0S['1D$7[AL)@7_ -7(&8^NY^FOQ*^,[.[&X$\!52 MS8,L[E1_U.N0F3"[5^VXS.._^])SE-.R".24D\^R,!H*.A$M>KH8:&_MZVRB M)7$(U D/EK901/.>HID2*L/[>[+4ESI(WBEP<):6)_$[&D!;%C,UCN. M8=.9#YW(W,K*B\PCT*0E'*2R!T+1^I>XM)LOS>=2J9F6+#?/=*V4SM=AG$!( MGX!5(XELH?0/Y!Y-D*^@1"#E/A^!D&,3;4<,I5P/3FRD$:H+/S!:B]K# +E( M'P1R(/G6"=M_R.A,41)DRV@-!?.@WB MOHRT>!R5F/_8J&0S2J,.7+W]O:SUI:@;CD%R/PJ$E5I MZ!WTOLH&)2%B-06VA)Q-T35'AY?G++OE,.AK@2=6]IU8X,>)[#5]4&7?04E# MSG=0OO.E!X?RF&";6(E*B#*[)ED]ZEO$]&X_FF;!W?M[-_3U@0PPST#+T-^L6$W2>KS94\TN"Z@<=K%+.6A.>-*' MVVD@6< T5.M*AM+5>WB/*C#4JX2RJ&4K2L)&M%D<%+NG[.^9KEV0[5U@5B'X M+#)2$K1*5&\,6A@BR2&1$H2X +,"O:8U)$DIU+%NZ6J,X7KL3)C',3))>$43 MJ# 0WJ[TBHY/T&,8N6%&'BLLD64%DUO$C"]]0B&(:@^+X)HZ,$*B=, 5!$W3 MH J!-0![*F ,+<4["L=?QV93ELU,#B4'HW7]'>ECWI#^.WKH=NRI@P/ M@RQ]8JHHNBU]C'M1-I.RHV<##'\PAPB6OT.N.N0(93*H48,:K]R(958LMXE0 MU4!R5N41$'F7M0"_1RT&U X#GV%V [?90*A8[-.M^X,R3T1+_%L;1FZI)#1Z M-!Q3*C_2\!2 &< "NK8)Q5249SL^]Q5QYS*U>31^,CG\KQ,L[]%9,5\)E6& M,UHJ.&\<5.!Z&3NP+V4?LYR(-T!5>!ZG]:;T>F1Z3%6WIV"KZCH*K%33)^R=F8?V]\28[YA MZL04>7"KT8[+3TR?-";OYJ/Q0S5:)^/DTZZF%;^(^GWQC]3OBSO]?LO8DXEA M.W(P?WK0=7F,?-_/H!Q75!7(Q3MA4SDA+>2*_R!I\;$I1]\0_-RJ-@*MJD\\ M-DA,+!ORD 5.V5ZI+[51NZWWGI&A:&,\)9CG\?)[#+DN1,3R &C[<) @V(9 &$1.3XR=R3+2V?,G\2;[SX5PBZP)2*O'S M+49!_L#[2TWLQ#Y5##*R,X2X=$42B4!N-5Y@RX@P@[0Z\2A6R*+USA<2.T&5 M(T8U\$M5#>IZRYG".]3Q$9R6WP"'PWC1@.IG]O1VUCVI/0$+; M#1'80/4:6@0>J?Z1-)$D(U1D2V7%3 9%-F'*LD#>BT)U,TNB"YZ!==W$1&/ MVTEX"W$(XD]B#@RW\\C9)$]A!9IX86VRJA%+K.RRV;C<-I9L()-T>9>\TY5D MR\6+((?;:"BVCQ<0H+54$&>HDH&ONB8UU)D_S"_'N2\Y"X9$,YC9,M2F9:UF MWDE<<(XM&-"UT(IC\V$2)RF9 -UX9P<-.SG $XP2Y#";[;2#=5B)24&>.3N@ M<,9Z?=Z[S.+>NQ!_J]^MRCQGR!D\+D+7ZQB%.&-_X2=Z'JZ-_D1W>D;3"N9S M9 :0=,R8]KE; ]"\@( 1!E7?1USN9I>_F]5("_;_TO)PID7WUW/T,P[E@S&Q MB(JOH+X8?HM(F166 @T$F0'*S7[A7??C2,UI79GQ%"=PD'G(U;J@=\A41PCZ M+M 3!S%$H5G*#TKW!?=(+17-?J4#L(,\5G[" PDKXPQ)*=^@H*F*IUUZ1^J=@'#&,OZR M0HYE_&4Q):S=_YT>J%+FX5?3#H@JV;*=!+M%1;OYW>;99\)2^+('0L[^5W[I MHM&%[,QH)]CV0,F45)UR@&K]B<5C?#[*LB(1(6US+#5]?\\5[7+3[+%?D[M? M18 27-]1]6>,_X K3D**;^E-(&(\LUT1\=R;^T,&"@[]X)*+_/A@.K\0.0]6 MMH@VJ[/P_L#,(3O;?&9$":T18=4*(Q1=4HG#%6,T[ .]FT:!VZ%:5@34FT< M8)4TE63=M($+<29\RFQ+MA$6AYRB5]DY09ZL<$IPSG+G]^2Y>"1V?ANB3<'* M;#%F'*&=[.M)%VC*9V<'@0<07$N/[9D5XD_Y"][=F85U%CZO!_.'.3I)7YYVBY_YO*@)!4]D M:!=5Z8/$A?L_=5N.";IL-!?C7RT@UF"!#'2,MD*J8INGW%-A'.Y@B MS&[ZL;]'J<6, M#8&*)U#,6K%KJYQ%SX8&=BU?9&Y)%,^?@XU#[DAI22-3B1Y+:D>.HDG"#L0) M"N>SB+]NA:T2S^FY+A9]1"$QJ3T(/YZO2I)Y]7G M]>3TSP@ $E)_8@20F-K2"*!MMST1&=^A[F:KKPW>I52J\)=%I*H@&' B21T1 MA.] 2ZS:JC8[J=# 8<(Q\#Z60*<>H_4?E^ M^;H7N?65O0A2&TAGC_!Z&/2;5JL?TL[C&Y<]S" XO0V V"\WIJ;#^LJDM76L MIX/RB&R#"A@+&I-8P5V9%/<#5DU]5+-2F^?7C48D:OJ0%B8&P4(G,@!P$2M$ MGE0V1I_C)RE%!Y?]A%:NYBYUG60^U^SM\%R_K5[F0U?1N)'I.D58=1^&/_C! M(F)8C7(250R[8**:.S(=++GRT?$%.]*S)X3UPM6^VI,,_!I,UR1V C0:8TR1QNH\JC+*T>VQ M-1"KC7[08PAS+ISU1=QF)K/V%4EC%37PQUMBE7#O__Z>H]P!VT!!W*D,4,P> MPN\D&54$G!9(TRRL@13X)K8^$". 2(^HZ&J5ZD(#*RF^&3Y9EF&#>0!4HS(' M(&BP0IB2;59'\@*@E)5#KH8#NLD+6M=="97,(&RH)HLVLRM\TZ@=%&);A-91 MK0 D>?3S4YQ0VR4M]\7A.1DTU8=(T !QD)V11\&D#8T@FEI]2#E-&('6IW = M/P&GH3^14O'4_<(F9GC+4F#Z*E?E.10$]O>$DBT*W,'CW(E$M35FTREI&D[Y MCA!-W&CKXEW807ZDCBP%SW1M5?>ELE^UKM8A]Z"PK"1-YW3'!(D'/8(?6TZ1 M6/(I)W0"SQM5#XI@>IY]4(N:].Q(1 F-S0A! PWM:/=(P7S?-HXT]R] .R(M M" RNI1JM41_3LK TO]["/"=2*8&8Q&SPH(_%BYS/PVV.L-L!$(XP*6^KU_>@ MT'X+6D=R)]7!-U#1Q]N%(3@T?Q;.F(7$H<,+@&$ "HA3RF2^V'<8@H@^]E^) MY0B(5@MS7&D'",?0B_YX@P@T^!@)P3 1S,:S@A$W.#>,]:$N(RQ$;&!T-SX+ M4NL;RTPVB99EI=]CW-[8! R:6 4&KK5%X^BH/&6/>,V=I>$CKY*!.CV)$M T M"7US..Q ESDG#I#J!NV1TH-5:_#_V:=@J@XWZ/3T)J[('4%(PTSLN=%:-V,L MZ:QJQ"Y!SD EH4 2G")&'=.'\)]XL=E^(D-3.\3CB.8R$C"$O2)&:)=&_YK) M?6&DY^;XRF)67VDM%3*NB.3<.E^=#-Z7GN ?[*N>P9PS(&U8,/JE3T,R7*^3 MD&A-)25RAJ291D5!4%@5DBOL7*V)56XJCJ"!(\+6LWQ/[S EU4#:VW)>_5DK MG=B4='^O&B!%ZR3FS 2:C/89^\:272:5OV6"=KC1I"X0SD#O&%+?TW'#?3ZN M/Y!C?*;%D8A1%$,&B!A!:TZ#G T'1:I=; M34.P21&H+52@*=_<5RL'0O&SD,A9D2UH.;28 T&#JQBXY;!206[#3 #%U?WF M36'(9 9)DI^LDBVDZ8%4$F 5LJ@TR:@9Z5.,!,.UR*)"<@Q9!E ME';)'(@!UI+Y76?$4Z8MT:=@ E:M(:29!LR,"&XDC<&S)E*Q@#UG*'W0/E%9 MH.D-^WO6Z$@C9:4/Z\#P D(SL',2:P[$=12-A/F8H"W+^IO&>>DGTF&]/^9I M'(,,U\E$A)7S4VGS:V(?)H811T91LM.XKS QO45,6ZTIE5/^XY#W#L>OX MSM-1P%N6)8@$/V + FP2Y52,M[; &E:C9F8V7\<434Y^2.MW63Y,E 21K1FO M)#A='3+^"(1J2,1P6'G/[CT/=$QV%)5A4K:Z4I'9T A7!,('<(C($T MIE*A33:]&T9:%UEF#$/!N6%@FVF%,)%2_Z0I$8VSM"N+$-9.T^$IPQSHQ$N! MY4IL,D&,'5- F=HG4U&\,GJ85,^!4,\VP9:Y$R:O'^]V;_Z+$0H:=I)PPH?_ M!,+K+6."Y76FW*TDFLBN*63Y\.TP+3OXBP1IP;-67S)W !4+'[ ZLCE>9.84 M0\I)&IPZ#CT, !VR%G4DQGXI_1ZZJ6R$,P1F^\HJ\23H-!]F-\E9^1W,X* M1&O^>P1_Z^F=Y&GOYN["@\)4:H4)$K1Q#^AA**ZZ2V,XPHNE2+*2.DS^L.OK MTCIDV%5H1&QM3;K+Q"NBFJQ'9@?$F0YI7$(?PL8&"@MGQ? /C"/Q?,8W.I"O M=TM0(H&UM)&B^^JXA0ZGL::!5K*1;VTE&HG O!*:C TV,6E,5N%J41&IK@] MU,FEC/(D%E#&?A5D MU9CV1KI#8B(%'B4UT.K D37*D4')D:SVKM;L.!JGS X.OTC,KDC)#.YE!+*? M@C\T)8 "3RR6:"JVNEC9%BRTD+9P961LQ2"B*I TY!,2::SI[C5*(J0E3AL1 MDRYL!NE;2A0;&OC$TZ@S[^G(.J K?4,*&0&V*F*@M&N$66M9F,$TUE!',(? M&<0A[((X-HOC4#,+31"P[EM YWIJ?YEVQJ @C>F]Q"EO?ENS8I1LXY/(>62/OA"7%QWH63P2'_]R_QKXW95_L2);VS>$E#MS5PO[9G$]UD9PW[ M*$;:Q^G>/--T_'_*Y>/CDY. "Q],&6S2([KCP"B!$<0PGDU^IVH88O&-.\#G MXMQ_JAO,O*US%B/\'7)AH[\>WW+^L]!*2!B?-8_\W][])_%Y</ /W>\M/2[_5)(_,5'DA4S<)Q:%M# 1,?*7-H.86(KW$ILU&Y3S>-0ZQB3$ M(E&XI8LBCY72EH/;,M=Z\W?= GCB&Y_.BG%L?#)RPV9<;R+=K^=NBX=9P(2L MCT ## ?:NAC1$E-,GEIDA10OBLLRIS51BZT_Q[70GZR0X;.I6 C_5$J(VUKC ML1%.6P.]!IBDC#PE3T?K8N%ORTM(K52V:7Y_SVU*EX8^B]4;K3U&@F*L/H6T MNH8=:];'VFH8=>&*N'.LR-R-9_BPD6@0QLRAIB>'K^RL:9'3J3;><):X?>?+ MJ0VX?ZXLK)5MK)D[F]K.IK:SJ>UL:IMOI%FW32W'Y\7BSJ:V/38UH<@+Z?3. MIK:SJ:W%IE80^5PZL]E:\J>TJ14R?&YG4]O9U+;)II8I%OET;EGFM+.I;9)- M+97F\U:1T,]N4YMERG+RA)W4TYW)ZM.;K!*W6)5M7.V,4SOCU,XXM3-.;;ZU M8\W&*3Z3WYFFML4HAI/A"+A9#QNX8/]8F!2>97UK"^.R5?WU)BG[[E$IJQUOESK"? MI:&2KL]M5T:\G?U,JO+<2>-A5\%"K=?P4:P?P>H1<><2VB[L#/+KTW.[NIA= MYEJ5N2,TBMWJLOF5MP?;W_M2DE\Q!UKFZE@D!$MNLF>PP!KWI7Z0+M#^-FJ+ MJSDU_Z[<:>P7ZA#?*.N]'G8V(Y5!!EBI] L;ZQ)[YF*;IROLD EK.#D0$%"RQ*C9@]4-7E8.@.A+>:P/7(O@Z!"%]?V]I MJ$:^#^S:$7%("JJ@X_20H^6_SWS*64L9-<%78N&7%\#Y+R2M2 M1*7O+T'AKJ-A%0 Q29=Y<]0?.-7IL&6EIX'P .M1,G[!2E $E9 _A G21NNS M^B)POK8(^WL+]D50_[7F91=HXTE1#LE=*-\JE6&=MN20E[#R7\NS#[/&QX(I5C$85F>$U7KV\///<[7F-[+8]A5B*3-: MK0=Q^'F61M17L$4VIKV#Q'%67.6"60U(6!ZNF8<4;@]0JQW)[ I\C^:9% M+-%3.,S]36NR6\_L[^%W'=YN*#V)U=VQ'B&TR\.^D>=1LF+]UB\E\J0$=6^, M]8W:V FV.<:&5LYXM@3FEQ'/2)?[JM8VR.)KHX'5(8"KT4+-EGQ]5KVKU6P) M&X2#44_A2G9YJT]""X+A9*KO\\&4$?EL+L.+\+,'3.DBG\H!T%+I1<&4YDD MA)A",!4/4QL/)H3(QT-C5DDG\8\LZ23N2CI]$#VQ*0DJ<78"FJO^O(G$8W_O M/T(.+CNFCN=F,#&?.<7+L[)\%OA9.AUY -%#<4AMO/\4"\#!BH3@Y [3/H+# M+4EO:/K=7(+#+45O]O>F" ZA;Z<7UU,O$",'5QDE7X!NX_"5SO)"/L,7A6(H M5YN%KK3(YP&BA70JVNM!V!+Y3+; IPI$-LH?9K<477Q$H]64@2+0/L$]P)QN M1D-JJ .%'KMJ."TL'FX>;BVA"TW%Q/#EL:G-MOI]1IB[,H2G4GI-*A3]!^&: M0B%^66K*%PIY/I7/K$),"V*:+V0%A'LF?9A?#N_$2D>,=+=2"PLX1S!*TT#0 MRQ*UK[F>)!##2LZZ9K?.N[J[P:/X3.TX%H9+AL?"3L7LDL21SR#[SN26IXUY MX/T9(8U0$5-3:F/"4,&JD;1!S:7>46$/6R97ZH"(.'8ZUER6;-UO!ZJ^NW%3 MD# '8EB&SZ4B4X\IZI,5\GRQN) H9[,UBBBAD.;311$1)8B' D.4]8P/4=XV M:SW]33&LXLZD'U1' T5$MEI;G(YZ;7,(X_2YTUPV10%P0EI?72H2&OWW]X[E MSI]X\FE>S(,0GLDN14A$X%AY7A"7(B3$(OV?= :F(! 12_C_[7WI<]O8L>]W M5O%_0$UY7LGWP32Q<)M)4B7+=N+['-O7LBOO*T2"$C(@P,&B)7_][>6<@X4@ M"4HD15*XMY)8)(&S]7:Z?]UMK-,YQ6._\:YOEIZ[B!UJ2R*'>?NHW5JPN)Y. M4=HI$13[8R_"F/;]TO'=^!2]LH4%5HJR=JN*)U"!J,P5O-B.@*C128M?X-]F MOT?7$6H[Y(ZQ(09VC"C[S_J# =Q8B!?LCOWKB1#/JKW-Q$6=G;5 5(P03#?@ MG;4,?=3OZV;77K>SJ. ,1MU--J'I: M3_6E&555^2B/2(#I'TX"S(\%BVRKJ3X'M-++D@WRR%2,T(H!5D[VH&>:NL^%&>K\'UR?+;+(7 MMY&]N//S,KKD2AY81G-@A\]=I@$GU=5[EM61<_8,27?ZL#_0S>%CV'/WZW_\,SO?MD%WH'?[CV&2P]RV/90HU >$ M^SV=/=M/@4&]/[)TR^H=8B;W5BNV4 GP!PVQ"#>NL_V""\?!)K9N]OMZ[X1$ MRY[89-"S]5YO<#+;MGM2&^I=NZ_;]I-%RX$]LX=MZ^F&.=J^1%ZVGO7F\A;7 M]S5!C$,AHE??2UG/"?FTBBJ[->UZ($H&]E/]LL>^#6=] RM*#ZOW87OCO'Y! MI'5F=@W=-JI55+.GC]M30[?Z6&^DVE[:U:X^170O&MG;#;]<%"7W)C&FE4>: MKRRSY8C1J\>55BW6NMDIG<$D,Y35-@)WS4ZOW&F!7VMV>K<[G>';FIW>\4XK MY.!&(>NG%V-?D^YKOG;JGT>U"68B/5"^5TE;/1&V[53_!M5;10Z94;N%,O81(^]=.K55!.1;"+9Z8"^I[@8_FGH^[?8,Q&3B8KE:]T28JR*2+]0(E;WU$G<& M_[AQP!(=%X@QRCPEQ:?C%+@)CD86S_7PJ5LP2/'(?:!0'V98^>4M7*#)Y-3S ME7?5]^T6G"^&S"VA4[,VU<$>"IBBI7@;@$BJ#E47G8Y<$ 3L-2Y##'- M0!R"JMB<78;D<")67W.X3?19NU604&*\ 2A,VS!KC@?#R6TQ>QVCWD,+QI"W M7!XXJ\D1B4)>O.@S?";[&7Y=)#-)B;FCF-:E!F*.W'G6V>B.B@:HBZM1;X1*O%)@)^L2%7PKF7V;+>< J9L"%?KK9\*NP&-9[1&^GF M:+0Q7PY[';,N6Y:NGBO8>"_WOE8/^%>>B1?[4P M2KLEA\''L2U$$*);P;D"B_U$[-XM4T0-=?1JQ%X$$/9$#T9GN)H>!GIW9*.P M%O0P[)A+Z6%CKY)N#$SR%Q(]]%\\/; $_"@=ZF]_!IES_3SSJ9.F/UTY^;ZF ME\!BDF3:&GO1.)W%"=^O(O?/U",2ADNC=B?ZT.04O6H]@T2.][(PS70X-I'! M^V/E[]EN(.\+.3CD+[A?6H&!F\)2JQ(,7EQ-I4=@F!]1>NDD:K(\96<'?)./>B[?(<0@8/M%M-1*C\?.E^Y$35+1CQ#:8C]55C11X:E M&VLRCC??J)>ZGZ8^,'MZKU>=4[9ZHPXT13!O0*_CK!/-.X)+UG"D#^WJ#+FZ MZ]MUTM>S:=R#.:.^;O575S=YIC,ZV!2R+VZR Z;>5?['DUND[Y@$!WU]8#R" M '>U7X^0$\6I-"=?:W8]:Z0;H]5%ZC;;[;VE!/5>)-R]=Q)P]X-("?I8RW&. MH'%7NPM3QM8F3..3!CMQ;+X8?2&?A4G]^3)V:(W3$^0\=[5^N M=N-,--,NMWY7QFN[E8=4D[?<+/\XK;9U=9KO)'4)85+AT3PIW_FEBUWMKW7M M[V[@(HB<&GU/9E[@Q0DV@[Z%O?QP/\<62;%V6GYSM?;KW-J=PMHU5RP]BZ:L M#R,2M-C4A]V^;@^[Y38W_=& FA,]H;F:T1WIW>&0&U!TM44&<"IPB1?'=:]@R^=2),,7C2&)=')$(HJ?W!SV]9PV+!-'3AU9/[]J5D-:^ M-=#-;G\YI!5A7/!M_4G7AY36AKL".113-!&MTF/TNZDRBC;HOK6".#%$= ?+ MQ?]=H$I%BR6DK8/J&V6[%P8P^^6[FGOY*[-OZ88]Q%G!_)+(&Z-^BI,0#")X MW]3UDC2B\%8!JUL'2,Q@W8U.[1% WH'=U8IUN#LF[_9&K4+Z89EI] MRFJ6%2==D656.N=3$SFLAS^A+0QT)E=W6IJVO+I-4SEZMD$9Y471:5M#W;:> MDL=A=+%C'"E2TY)=>7/06!R\4G]BT_HWB(1_@__2/+F^B$+>+$ZHPUN81O"? M!./L)(\F[E4"EB=9B43 MY/2P7TKAW[)9P1"XSE(N+$G";?EA)AD;G;K;7(VJ$^ M&(Z*-(CD4[MO?15>&M1XWR[K6:'%EO$/YCH4U3"I,IQ7\*#*)*@\-_0/AG=T M%8$_\,HR<:=N1$N ESDQ:567+H-*W6)Z'M]YG$1[[X[=V16H3,N0"^&Q4:.* MR;+G4?Y5,<*R3<)WR%UJMVB[:3+9316+8Z37-Y6K!,6><*D*5/9S-Z(E+Z^9 MD!^-SK:C?5Q&!N7?BHOPN#2%Q;5RXU%MFOJ%BR$^7'$J(F^/1";]BQ/NPP > MQCON+)WQ,OGLF0RDW9AM4KC1_N3<*A5;5,KTV9/DVU_?6'QQ7)KA^S34P5U.0?:!&;Z!W!Q3T>=7M=$>T&YBG/195C/R4D 2X M/Z5X4\\8Z'U+/6JO>E3."\7RIEZROC72;;M+KG2*>ZYTTVKO%F8@M@:G1Y/9 M,$HP=OQQRD4/TQB-3@.C;T-],")-@W_VS9YNV@88TXC?Q;D@5@,X9D?8/"[)LO=L;UE^!MGP!IV&%5S#5NC*=HNJ! MW=6MH2'XPAALP%+VT-8'W=Z&++5Y@3]$)_29ZRW;Z/2WR%(U0CJ5#&5A%7Y3 M,52WKQM@%^V=H5;OY7)VZAJZ.304.]FCOFY9HX:=Q"@K$@,+Z#=$@@T,?6C9 MJPMCXE%-O2A.M#]3,++A&-&@QQ-R$.0F3>.0*5B$_,$&D$VI+KDIE?QP@V(+Q;O!*N71XK MSNVPR*:$FBP3CU[!>&[> -Q "A3.$:0TUL-NMWK#SE"^V7"SCL_=GZDV\Y($5_84S][ LT'(!+V,TF+W-C;W/GL70@*^;LEGYDJSC2S3]/2BA4'2MN84;;71C]@0IX M+-B ^[/H>(G!JF_%]A.F/@2;N-\UEP3G%B\IO>% [QL]TJZ&28#4>M5!ZY?P MS@\*5J6J\BEB8Y1I,!XCFI0*?HY=[Y83\*AL:!YW"C^+4M3TR_.22H/)%\,/ M']1+U0Q\#]2.[R4>E8J6-'-DI'.D%,_BYL*);]JMCWYXUTB71F%%,I>>2N?P7'SCS66H M'-Z A8CQV8A#_F% ><18^[@DT 0&'SXFPYLF>N7X=%&*;UQ7K6&.=8ZQ-13A MZ:]ABM<86AJO7F:*-]>Y[^(7V09G&T"8!* 7N-Y&H$'(RZ0]$)+##6AY[H0B M@[*J-1^$&@,7B%X N-NA\V793@@*H!4XDH#P[?02(7JC":VZ0 Q V-$LWE?9 MY1?/Y^_KS GG-G'Q@+R \3:W;I"2 S56 M1QY23A[^&T\9^/\Z4&F5,]:VZ!-BS8O?P'WS(@ MK8D'2X[ ZE=1:D619W YNR$*S[V4,'O.O39/HWD(ML!K=DJA-$-/(!D55%J M!!HWOK@CRG;1RR0 +T[P(![*)MK1SK/* KKF)129#F&A:$!DU5 ?@+MN:1DW M\/P42P1X04F&XCSPEX$KBLO#)3V"SV<@/A[0+Y5@4=4X<>>T:11OYL?#-,$W MP#'!>GUA4HG5J9V1\AC.&S."PL*:::GSI&&U?4W[DE"40H^2SG%FJHZN8#S((W<+;R,\#P],'&[LPLH& MYWR5ZUI(O3-R:T)E@OI'*!0TP;/"P-2S16)OJ0, 3+RT,SP7P6AJ& \N/:!) MA*;UI<. ,2FLS.,BPJUA@CU-^U_8LRI$&9V&:0QW,[S 4ON?&9IW+C,'VW1L M"K _E^2F,%O@]5SR@$3T&,@3C]&=+!B%0%\1HDMEE19.UB>C#L@7KJOT A^& M"0C9E#*@43B2&IIX=N\&JSK,B]6[PZ[>'Y3:@V/\9D )0$L<&N5.X'V]U^," M!R.1.>#%ZC?E-HM%/P6H5T%55'8BN'Z#Y,GIK!1GP']X<9QRR&-)][%,]S-9 M-Q+H&3P+[YS@CW9+9!Y_=,;"R=/X%_8W[:]!N_5/)P)-;]K(K49?SZ,O-0H@ M49P9S=9 .Y]Q9 XY[;M+(,O)0NXXWR3)7,!?1W"Y=6:4#@#OPML(=D.%L_\) M1A$:W%\ZYQW4"I/D"Z^TG%(KF#\_0'R"FPM51O!DC4>%_ M>06BC4AY;J*5B"9"CN)7^=D(0GR034<8G[NP1M!:<$Z4:R$<(MQ8$=T4MZ%_ M2_X6?L@/'72HSF9>(@77*ZNKS? :#L;166XBW^6S[=9G>$HU/F$OZRLC>XJD M'KU9=DSY@9_DG^*9JU?2=V '.E&<%29 ZX]AP X!:;U -'Q84A3@R.C[^-G2 MRO4T7,*6V@^PIZ; 5H MH&A_ UY]#69>(K)4\'=P04C)AS 1\/,JO+=[[\4),4+&3SY0)_GR>"!R;B39 M3W,\ >O_ F8LVR%LSMC:65;N@DU:.?1"L0W\-(="HHI(P=B;@P"2/D+Q;#;D M'7LV'&^"ZRX84J]_U\ZN7@LY@1-%05%N7Y?S+TH@4J."K:P*>: '8^F6 MX$QBKE?7U7OP'T34DX3\.DY"W U# #=D;E;97 -*>V6,]&$W]^Q_.T'J8$=0 M0^RD?#B_2IL?1 -1/7@.*_"UM4\-J2]?-EP*0K7\T*4[3VBB"F1HLXOX%6)O M[:4KM>7=%6S+:8)Z!?\FW[5P68N;_,R9N#+A2_(9M2J=S=D(C5S4:^W6F3((?(Q_6[S27L_%K+6?3@I@W M>[P<$4TD]\+4I72&-(I$\3BXO@4N$Y#2MQ\08E=##N@Y+W2E3(&7RFTTA[2/ M!F'-[K!!++"%[XO+7+;&W.<:<0&\@T[:4%"AG/>1 YM@;O3[ ^5=B%U8U"3_ M)DP<\29YBJA\CX5-WU%&AMC50VK&5/_UY2+O23BO:(?R MJ.GN<,N7E)]>!4[[7?M*[9GCWW#82Q8>"K!FCO8"6-N4HC>&ML%@C\&PC99B MV)8 R@X.R7:L4F-?TZ[S:DKN5#Z)G+[,+IQZ.39'7>H=B<2F-GADXWG8N![] MX.A4AW\G,1O#,CV$=J,?BH(#00CWYYA<](%F='HXEM$1U0HB MQ_/9DDPC&"H&^:7PWR*2QT:GM"5]-S^ 5GX_EB/.W@^F?[T!QMER7%XNOEA=IOB2C>D)I" _EC&YIW.D%M%*FUH79DIE;'UVWZ T05$%V6>YW M^.07>$\=4ZW=6F^K"3O;%*D9:(NZ]Z(:,9FZ(OQ*-P61L\& $#!NO2SZ3YLG MCDO1+T8*! &?BJ%R\-,F*91YI:1W] &#W& EIWCXB*/S_67WYQQNCP+SR:(K M"+]33B-R#.7]0GS]_Q:A9^T[&KG_5[,ZO:[(5\]]CA??8OG.B"X2VGVVZMG"\.:QB=0?6X#:4^+M=AB^&DF+38(C54!(CRL@T#3J^X M%@#7 \@5+2+'LD3;=;DJ@58R/9_=]5;XM[FC_"._PXJW3[\OS$(X$^BF*A$"[ MQ:X:.50@0ELG[EP$SQ"6#S=:Z9U.O!E^BK=;V&V)%'3NG&B2(?:*("ZZY15 M7/3#.)W#/1#^ZK1;GZ:5<^4]@UNEBUC'/'PV+F-H"#=T1Y! /PP)5J8>$.$S MD5"T7/BV6RQ]\4'U:1Y(AF^-8;QXBI8$7&YYAGJ^%\P\3# -&H]$$!'&5[*K MOEA;'B9)*0FNG!GV(T-7/8WCC*E\%F^D!%9/X @I>LZ8:EW#X%""%[-&Y>\W M1RE4?>K:K:]7,!H38R/.]SOMC^@]] +@YAD= K)L4M(>"DS53_!,#LF78M= M5RN>HU8Z1F&0?0+AJ@V0E?_I!,ZU@O60-^&]%X-HPZJKG#!S#GS^$'O$^1^5 MA(9!6 A(().$(G_-C#'T@&D27L"?@-5 *9C1'R[[^66O-L0VA#-OC!*0A8_(4V3#0J1BY*^5 MCBA[1(X-CWY#Z$DP,$ $SMG6A3>1DX)SF% >YLR> !T85#V45D%9CY2RZ,5_ MQ#APYHD1@[)W=^;\.R2$%CN7VZVRTQ:!UPR>*/5FQ1MP9EM&[M3'LYEZ]Y07 MX(UE4AC^;N5+E$DJ7])N%=[2T?YU0YF2$X6H0I.UZ$O$O*TX.W%:=V;PHJ4] M<=6TZ$N1GT4);!3L2:BK[3R,'7]/X8\CEAG;%MOT,F_RUU_B\2R8WSO=[N@7 M*;C1#&BW+$(S&L;OVO_ U2SQ$J9W/&/XP)=_HUG@AS$U?CR_"M,$; ?BT.]P MZ%7:X!%0EOZ.D"P5^)0J$J%>Y17 E<*88O)OJ+GZ;UJO8R,F07[JN]/LPY4% MTJK0)\=8+P,WVOA&&D$2.41_2T^2C!>P413Z MG%B<>1=5(CRF$Z_\*4+GQ6_+4; /]Z+AQSE89]]3'Y9I6,X;HW&W$U$M#6XX-UW3GM_O^QQ MJ!_-Q$?]P6A;,]_Q9$$6,3 T%'E/*-L#[GF/:&:;L"BX(]2A7 M]1W]X#+5D K_82FPI)95NL3\Y F@#:H+(U< ,61Y*C;*J2R2EY !BC-BW#YE M3E+GNXJW.RG8L9'WGV)4K62Z*Z/^=[$3P62UFFI$0R,:7J9HR.ZL M4>4+[,CF)J[**D\#R7TH-,9_IAZ;A#K5$X2'Q:#; M>B!4%3L? @NM\W4=YZOWYJ';005,Q-F1HD+ ;H#EGV=>(B.ZM9UC"LPEN(2H MG7A#FWEQ'J'W+0K_[8ZE=D+4R(/F9MT&,:5,-F$,*(,LU*8IJD"9!D>:,$ZO M_DVW,;[J42Q1\)!P/7,1/LJ/@^E*;]\5+YL2L\@C%\OD?A4C)I2)" UC<3^7 M?UU*W2*WE/05<>% Z2K"D:E>J!?B-;()2#R#.Q@/-!UST=,2>17Z?!*)(0O4 M)G35_^S.]6]+#= 6X4A87-FE^@/CR"-9GKFEV35,6!DQN(B;O"%/\S57]_L8 MP1V5R@4BDN;,[!K6:T+&%K $P+,)$^HE^L"IQE^[]36Z=H*\+4C9&*#L)G M MY<<(NZ5J&EU\O?R:E:7Y5%7UPHMS^UEP"H,B!?4X]1!OC[YO! @3>TC&A!-/ MJ"F-4FMW<%G&(V!'+:JV^@=1S 11V4W .*QR M).>9=,YIT[B@B.F*X."-X KTC]101;-"UJVHH[)TKDTE+QTB;=+)AZ:XT#[' MRKF$>*;T\_>KI=4)V%X)A7WES=:[$-HMRO82"3KB6H?:6E[L6',[TA-"741. M16L=_+3?IVSA+]:JI)CG)!;%Q7TF"TQ84P:,PI3 3S ;;H+-:;C&6[&5)5U@ M*FSUYI3WEVIUD?-2+%C87U&B5!C830+6_CEQ[0WOSBW>[);=VC:XZ]"57'1L MID8J#)9BZ)A#H,5\=QAY-1+31'P#5DKD_GG7(?K6$#V!<3 O*Y"DY$JNZVW. M'RVZX7"7B;%H\UU9%DZY=-&R_O!G70FDX@+3'E9 MQQ=L9B/V\BK%[CD3TE^R-922=LH3E'M6'<.Z:1=/5(I8='JLG+-L6U4\)8ER MRQT$;.>$%/5MZ)U./X;5]Q"[N8?P/<1L[B$GKFCJW4.J$?>&0MQ_ ['4;GWZ MI+W1OI(/\%/FZFRT_QZ3(,Q2$H2ADB ^@T;SV8OLHMZL;+319#\<3&SUV+(? MOF-;/)? K63&3%PNPP]VCF$N.NI5/XQ8]/@@FY#]%;)+AZ@<@CB&B2=::4ZP MJ?"DCK\@'R0AT^I_E)TI B7(<6PHI<;8'T]=9L5Z):LJ!9!9.14 M15PS*]%8V*I&ANY+AMHE&6HJ$?HSB-QK+^:ZTY?H3L'C__!GBB& 2RQ)["4R M3>TG YJ$J=E(W$;B;C>_/FBLJKU)A-[2@AOOW:E#:N G=I^_= ,/5$,F"1JN M;[B^X?HCY?K^TE(:_\2&4K$>%C2+WVE7S[E5IIT MBOQT>[^6CZ_;Z7G!/G"9@GUX$5_"3H&-MI*M/\35[7XA[RGO:+Y@81Y8XOAS M'/-6:S#L?:XO_?3^XF@WD3O]ZR\W23+_[>W;N[N[3NR..]?A[=OS:'SCW;KQ M6W=R[41O)T[BO!T.1Y8]?-OM=@UK.# LP[2ZW6'7ZKYU[T>C-T;G)IG]\C>C MVS'^\M;9%J\?Y1Y(89Y M/9_35!AP/&3D+C: =QI)5T4G[KUER&.VC([Q7T=(Z_DUR.QEJVMJ%WA0&+3G M?.8'[>+&NB"JRO]V8X/H-J:S:9E.1BGFTI&+6)I4LU4:2RMDW M55GW/$NT$-^^;FAG^;Z;2LR8(&:.E'C,LIP9=?N;R9DEA-503G'3C:[1^?3E M$NGD&&CD4^!CW.[_O_O^&:P@;%XK:]"^#\K#5PIZ+TBXO_G&$A/;#N<>61P\\VP_WB1L07O%R?./.G(SRFM,NGO;%^><3 M.NT+QQ^GHO_29R_X PM0-6>_[.S??_AX0F?_'CM.>,W1USKZS^?O3NCH/SM7 MKM^<^MI3__;]PPF=.GHIX)0;:5_G\.UCN3U<4,$'"GSG['YQ?Y#&/U\@QO13 MC,ZOOP#4M_VW%]6D_[:['6MM4'5+\?/U V[OG/X+JQOZ(@\1]WG;8("]+@97 MDT8!%R8]A17M!J"QSQ6<)XD#ES6!,()W(O,L*QP$9D1PG8(T>?V;=N:]IL;=E/^++6ES M"<"7^8)CN2;>JOCF#99-+M3&+9;#1-<7Y]B=>?EQM,(P[QR?O".7-ZZ;T"8L MU-7$%U5D[L%;E[^V,/L+)[[1/L*VK9U]NU4Y_=N:XV254D46U\:;Q2W6SV! MS/*F,CA+1L[\B9<5->&/D!,>@?OK-[@_QOW9#>ZO:H^/XTW9+5)\GNI$5)=%N3+&G.[TP:X=R(DCS!G_Y/%BV M;*ZP%_CQ7W\Q-][FK5[1$0+UX?O7RQ_??UZ0,-2U3U\N#M;C(@BLU]T]IG07 MG:NL'9=-?_H,[<%S[.PAD=BNZZSBQ>:W=NL\O8:7:R9?]:RMG.(VY_GNH;-R M3J5+QU7YTG$P&_XV?BLA"Q'6F?V'\XZ'$MT6)<:#3VCW_-E1T^E3T%'?( MO@Q[0MRU6VMAOSG#7Q/_=_B+R_"H%2M\G5M4PWNGQGN-^=F8GZ=H?IX'DPB> M^MS1WCNW7OQ"Z:^17T^/IC:$]"((Z8B,T(J\CZ,W.[,UH4%=F1756*&GS'Q[ M,#AKMK<<-! A@#T-H K(S%9S_ZR]NK5CFDXU T7A_\S MQC8(8\DN2]:0-7LH9)0M,W;/(T-9:^R["B&%L30U0LB6?9NQ%$ICC;)FS;XS M&?L2\[J>#^_U?'B_O/AAM/]HT+D'J&E8:85@;/+LNN9.P@ITZ">8 M*CV15#^.G'X+GZ>YU0.*@Y9I"$[DQ6M!-1SP#OJ_6JD"%EJ6 MZYGIMW)U'7>:2T\!H/O0ZEO;)G%%^W;^,VHH1+9(5MQV#CI>"O[E1FG1&@LR MCW@G2Z ]?;"O+6SRAQUW$J^018K+^Q0;N5)1#Z]]Q(;M$>+,O9"<\/5&202;Q-Z+1HDMHH#5B\O$ MU,*NN_/.\_S.6TED J?2-ZBKC0!;T=4)M$DKIL3C@O+X4[\-LC3\*QE7_^[7 MZ1VI/:=>O8\/1Y >+:GM";B ;>U\MXV5L;+OXP,4P,"[;DN+ J /Y&;O:R,B M<17:\D&QR#]BUGM8N&C^1<;P=JZ?\Y:Q=6B1=I;W(G\%)(WO>V+6>B?JF'FC M&AX0KR G/CZ(O*6(MK48AQ_;"MW9@U7H.T*[7B8L&1$;S9KW2#>SCE/L M]( MR[;W!UN:+%GNE.[J'6>G(G$[#[+&*\0ZTK5MA](SWI*+^BTY8P "AB3 GRB0 M.;XTJ #\;!*WXJ< PFIQ^VOKUH/9_AQ]&\Z?XOM"VN[UE1(\\)/ETH=:8CJT MO^./TTOF70FUST/J5S)41B>_SSDQ !:C(+AJ;38KEDF8YPXJ&65<&! M?DK5?=)0WH?-@ SWZR/)NS%);N_?A]L6ETC;7/^L1-*"B:B7>?^O[Z\-D3NY9ET0/TH!$,ZV&M7'60?2OE!-M,YE%F5]7[8LUM]TG%+$N.QX$?"O7K]*JVBN3C$S_ARNA+=476W% M;;@LU.NJ_L8\)6:Y*>VJ"WV\R.S=O8AINHFR$P3)&< !AD4S,RFSG7@HL&92 MU[8FWMMK=3=OT2"MH"T3/YVX312/5RSPJ#A)G^S>%1SC6]>N6,PT[\YFJ22;Y((CGN @M6;;R MK>I/P1&G0\;K&@%)E^57B6]LN[L? V3-O X'35X8@3/_*S'51S&4UHL,-9B8 MBS>3M# 6,M*D$Y9S*GTM4-J"PRX&L@RO'9RJ>RS[1%XH.I"SVDJ0UXC!6C/I M:^&\974C.J_[7N6(@0\5S >:YO[@X^ALO@3Y<_GP4*P1*9]'=X0-?/ B4$Y- MVSH@Y;"\?2Z@]B#CRYWMM9J^C3>V:;Y9XNG5)BW^98A ;9\QP6&V9U>0IZ65 MN;HQ3)5#!KR)HSP0I>B<2Z'TX*J&:Q]_I!@0@T+803KLD#L5?+5VWH'2;U5" M?$@]-VH0Y3G&7IKOGLQL#RT&6!AI=;[X.]7+W=B2GN_-\\F9T6OV)DUJ4[E? M,J\8^>J5.QC'\\'H-Y5W ]\MNV*&13#>\&M2A]B.G1;/2$]F3"19&O/#<>;A M6AE9LR0LH),I ONSDSN2+/G#84:]),R4VP#ATH5O$JJWF580%M/XAH6R)VE) M4NM0/P[R<+2MDP[,S6\NK,&EX_L1&[(BB2B?AW2?=+Q]G(6>=I@5^:1S^+IU M&WJG#QPP##ZU+W]VVQB=[IX0>Z2!SZX4.2F/4/95GV@6\UR=;1TC;$9,3TS? MCL.K%@5#)!DLC*-91PW5$ 8V5JBBA>^(.)E.PSTL!>BUU0Z)G$-X[#>?G+"[ M'EA-8O="SS*5=QJNQR).L"6'-ZLTHAU)I"MM0EQ(B=S3;?1*#SKJ PXZ.V#$ MGV"VF_29XXJFBZE"^% P)OC ^=/+4&="Y=8$S%I(=DKT05-TL@9BQDM\@W7F MP$,;:=PDM9KCE2#%L"9',CFT(9_@T*%\<3X^Q;08^*MCFRB(P$]7==,+YAT% MV:HC]V9#48%BI+T*]88E;K!LI?S1W\)ST3F,?A8Q')+)R=G*J."HT7=LGL$C M&TO8YWJ1*JG) M*.Q0?H:[J*$+?N9J^A\_HE!E=LU>@QRPYQ18VLC_M*BW$[31H1PIZOE9<6I'-J>+7%9<-OY M%.+#- M[A-!_0[T@H8'$=NAWPT+?QW=[1U:'"SN65FOR"QT 8HCQAFA1UH]T1.!5SJ2 M%/NJY\:7K<8D1%=,L?#AAPH+'&RC=S6#C(9S-8ZH\=,Y+<=MV8Z%VQ>#,*M. MK=T!;%Y/GY!,^35I;C0*EI@F-WWUJYQ1/EL9I5%=4OUVLZ-6?>"-98"1(:[" MN(_/7UM[O'?9. /74O7P54.PGU(5_Z=VM'*73W?/2REKN.,RVL2=M4+V;4>L M%WS_-NENQHV>@#RF-BT+:W;PF5.LBG(HX&R MFA#DU#TKGTD4/EVF0]:;X08P_LP^92?!-KM>2+]U[-&?^T;$1[.SC[8$H"OM MO9'KH95=TFFG,DEV+G7):*XE5#[]&PB& KB[#47[HB4\,A)QQ_!-!*J[)Y"? MLQ,[5IE#,"^Y7-WST6::H-_062M#[FZH4E-?-=JDL_CRU.A$1KGTV9. WNJ) M^YX$1885NM2T1-G;N '16\&HM4)^_U;+? FR$KBDN4RUH6K*T]-AF8AW%!>; M5='08A%%,8 ,[KF%*"N,I5JTRZ MGR3?J77(-\"C;@7#O.B,G?!I6Y=D8I66]3*6K&1 (,\]IUI;9RY\:TFE1N\AL*J(E4F*N#W#4@#=YHG[G>;&=X#U9&$_]. M0(*NR^9RHM30Q ZOW@\_BZ 4YEJF.W:I/Q)P-T,SHN)4;EF>B1#2L<.'$LK* M2=J0L%&RLL"4IGQ>87!R2VVLC.,.XG(\>O4TKR-"+&."&*="SS1IORT,2?W] MSG*$_2RS**$SZ6?EB./!O2X!KV92S<+CE8/=8C_%>8'!O@)-0:>BI3\V,%.3 MMI"_X@[T,L.'+;&$'J+ @);%3.>8QL$C7V39ZQCB*E1=20">PES-$L-3%1HR M\B"A.T0?8SI*P**A=I^*51>?&,Z+ &;YXMV_\HFG8^""K*>RIGR^[W#2_FI,J$7,PTVRIVE(,9@NS7CV#UZR*()C@TSOE# OBQ MQ+^:,O8?4$L#!!0 ( )2+%5>6P&G-^@T $U^ 0 8W9U+3(P,C,P M-C,P+GAS9.U=ZW/;N!'_WIG^#Z@ZT^:FD679%^?LLZ]#ZY'H3@]7CR37+S<0 M"4FX\*$ H"W=7]\%2$I\2I 041U_0LZL[O*I-1U1@U.IT*^N=/?_X3@G^W?ZE649L2V[I!3<^L=MR9 M]R/J8X?F]J$H8;G+&TB"&0$+=V@-V?U:XRJ58UZ M/Q#7\MADV-G4NQ!BR6]JM:>GIS/7>\1/'OO,STS/T:MP)+#P^::V\]5Y^$^O M>(]R"/N#J^G#]=,;ZX]?B'TOG.NW[R?. M57-MT$_VES=DO68??Y]?S/_]>1 T>1\H7B/5V>>6Q>NS@_ MK]<^];HC15<)"&]6-G4_YY'7KZ^O:RHW(LU0KJ;,CJJ^K,GL*>9D4S/DTAWT MU.4"NV:"WA*; G'B-[4@,T%*)>3;W'FN0 ?07EQ&ASZMS MC)<;XAGF4U5IF)$@YDQD"2$Q3505ZR7AN:1!5J* )5BJ0*+7(+LFLV69\^IY MO7I1CTJ:C_ZFC+FDF#!/ZK*J_?SJ4HY(FSC$%6V/.4TRP[X- GSQL4UGE%@5 M)#";$R&5DR^Q2797%BDX=ET/Q@$,QC!%IBV7%!1]DP!)4C%NF&>3,3"/Y ,, MQ-P69%ZMX8$MJ2!JW56"QUA=46T6F5&7JI;#<5='53G*?"DD/*J2M[4T<;8F MGQ-KX/ZDGI>,<"BN).I"0E@^)-E=UL2VZ=M'%=WRMZMDF![UX[,ZV+6("_7# M _=L:F%!K'MLR\$X6A B>-3[>^FTH+D /*2])!$V@WZSU1^UFO)I-.AVFL88 M7NZ-KM%OM-#H?:LU'J%7$Q?[%H4FORMQ/!+'!\R@'Q9$4!!+%]1D(2V$+Y^+ M,'J5:+5$_ #$-QW/![/!4BZ?@)]=0[B@@!;2W^LA/1K#GUZK#R@/VFCPT!H: MXPX0 .9]8]+L $V)\9$8CQ8P5!:>;<$ZN/7%IV(-$SHUJ="$O+B\E@:\.48# M1N^-8>O]H-ML#4=_1ZU_33KC7]&K9JO=:73&WY5:\7RM:&"^:-O>D^[ W])K MH7YU#.H-8_0>M;N#C^6XWX]PQQ6$4:=-79B**;:W8 6([LC70O"M7""#VVE[ MW&<$7CK]<6O8Z:%VIP^SB>N3(3&]>=!N@$U.NA8F/Z0Q M&;8^M/J3%OQM#-[U.W+.+*$H,HB"85,8G,.:U7"M+L53:@,'9&L"BRFTX+E. MPP.V;CPT&F-DC$9R!6OTFZC;,>X[78"J58Z:(LL&HT-X;!T9LNA5!X3Z>=9N MP1@9#X:_EMV=V]TCX9F?JS(29\F@*:P"\-92%65J05%/0S$:#QJ_5.^-8!W0 M>X 5@5':K$)DVI@R%?,-L-B^:O7^1;KWVT9GB#X8W4FK[.\"PP./Y($P4'7' M@WBQ<"*72M/K\3;K/>\;/ ]#P"9C\'CCQ9??G=G^7 MP,P:=GOXK-7=5^GN[K9@4BU[>9=='^,5X7%S'B1H]7>.,ZRL^-CX5/9ZH2_E>G_Z[5;Y3>UN%Q MI ?/IENT-.BT0,LXR;OB2NA55'D9!M0-,8WQU(Y *\S5@>HBXTKGA)O0JZ#& M$I_#XTYQI#3HM##+^-Q[8E E?IK!J#A8Z40M9#+^^"8P56)P5(0JCLAN$BU\ M,IYZ4;2JA$LS;!4'*)VH!4G&D]^&L$H0#H]E)4U88;X6-!F'OR"N5>*T/\ 5 MQR7VKH5#)A(@@UUEI^N$7>+=GDC1ZOA,2" (P91=?ZR[V20"4YOW,9,GS![) M/K$'0+&(."<4="L%' M C)#'O_VUQ\NZF]_Y(@%;" KSBR:KI$9LHODX7V$76M#RK8L(T?Q?+-1T5(Q M=0,D^89&@TY',2[U@B:E7='U_&A M&377*'$@[[OXO3CI\Y#L.9O0/8AD\4("4Y?_6K6HI72:*%6-3*5_$ M)R(!HZ!H#-9Z$:N(2WI03*6$9HQCR(E8ECKJ;9A&E".^81LFIE!W>:FYASDR M&^RY88*1IV(])+;L^K$W\(7\(%E^MC[D/E>.14*[C"?,+- 8-J*K'LQ8"]YR M+6+][+OD\EQ^'+O#L?DF[6II;R;0E^/H;'4-5C\AOZ# BF$D/.1M64;#T218 M(FVY#@8$"OA6RB\5G=,5/D"8T\<"X!S,@)J3 MC@NC5WT]S\\2=NQ_@5$M+ V1-$'*BD7RH.0JZ<,,H*"Q M#BB-YM[9GXT7C$@U+)H](4OB#-/7DLBYCMCK@<_R]M,^8MX(12]:L7[#]K24 M/A,>;X>SL9!<*FW=/2\KDF 7"RQ #O%W2?21%!ONE&]%2FDR4/. *.0%;R):M264=T)4Q;,#*[JYB/?C6ZN/8WD/ILY=@1 MA6Q@QP7%2CG2'16V&U6!F9FI)7.!,E0BISHYK]4BWJ,*!!6R^$.L&23;@2F] M]O4$AR7:BH*85^(8$;VU9>0&P868>*G1R,+R1U M<]-(5NC;6O*V:'A/WRA]"W+#\A&YF9NI=UTH'ER%WO5,5=6.(O*M&I6KRJ1J M_:)Z63];<6O+Z2%,;+OA,":B5[[O(AI/X,'5Z1+;;[PGMHYKB@N[RK% M^7C*U7'7NXI@\C(PEP8QENA=_7+"#1A6ZEEC9?XM/S@(5D'!=+#YI8 ;RW,P M=3N".)(2Q/:A?[RKA)41X%DAS3#G;(4Y9ZB) 8L[N4.N:DB;PDQ M(T$RXQ3Y_X4*Z1/)77!_N;37C054V\,NGBNZI$R:Q*$.5T/NTG>TZFGR/F0/'KV MHPS0 J,P)/(EV4=UBI(]J-8&;LHF9Y)/E_?QDY?'>RSYA'F7YWURN8]GG"+_ M;,XI2M!Q329W.YLD M^-MQNU30N6IU1(0(R =3.TR+Y#NBW '2!GG3X,>U((-,Y8_T!'T0Y#F>2P1F MZQ?I 8]S<#@(D]M6A>(FB$Y4-OEEP0.F5M-GL.0-EBW@4QFA(FZ4=1_9\S4W MH)!.G#M_OES;+;]='T"GQ3RTU*E)'7']D8I%9%^4!#$!UF.R$OZ"L%,YY\:;%T"O9T^H:8.&F6PTB,]#8#Z1"2'421$7L9> MEH.M)/%MS:,!;Y;Z<5>RL?2IM!,U[.&Y2'EL>013$)7GU!]!:^9D*+F)A-E/ MI@],7) E#+NO( 1>!8<[\SC/S_MOL@MZ'9P\&I(O/F7$4@=1C3GX"I(NIOY[ MR([7*5A\6"^N5(;UNR\O>VB!_EHXI4J9S%,5I@E=;PJ/J;.;LQFH/N,=%^8+ MV?B0"*"%&@U';MAMYY2#RAQMU+Z:Y+>U8+,.'O\#4$L#!!0 ( )2+%5>A MX$P,RA0 #F 4 8W9U+3(P,C,P-C,P7V-A;"YX;6SM7?MSVSB2_OVJ M[G_@>:NV,E6C^)5Y)#.Y+5J2,YJS)9\D3W9^VH))R,*&(K0 ZUEYUA-FG%#_\\GY^[,3"_L.=8G_^/GD M?M:S9_W1Z,3B ?)=Y%$??S[QZX>N]!J=K:VJ_JM'_&^?Q%\/B&,+].7S3R^S)PE M7J$>\87>''R2U!*M%-4[__CQXZG\-BF:*_GRP+SD&9>G"9RT9?B6*,IO(>'D M$Y?P;JB# DE[Y6.LTA+B7[VD6$]\U#N_Z%V>OW_A[DFB?*E!1CT\Q0M+_ 3V MTJ.\0PWZPQ %Q MD'>_3Y8()R#1T%_\@/,".K:^*#/1/D;9Y8@;>ZXE'P M3?$3]D,HZ]!'GPC[K,!57N%8? <,.8'-.?1\VW=O"'H@'CP(:S!<6?5(G((* M(+MXK:1PI]Q1GCX+J/.M)V*>*[(9L&FD05M%K:,@NT:$R4RF DNNW)%8@5_Q M'68@WXKZTCU5$E1>Y2B8!OBARL]N%SG*,V_1/RGKASP T5A5GRDN?!0<-QB, MK>KYV4)'M(,Y>JE\>$')(_FPU8H$TE>#%Q)N"88T,+31<6&5-1N.2G<0&C6 MZC?04)2:HP>O$F55M<8CEA9*_0:.&[VTP)64;C*2:>'2JGO+=EIX\@6/&'&T$!05;=BS#G" B,?'B(EQX%-U;E*WH>-8._5@# 11 M)]+-'<,>Q0!X2CQT>&'^50_35Q8', .XK[W5O<;"D;HR[J@.U M!J"AR%239_T&CN-SG25V0P_#>%<1=O2HVJNMQF-N3?WOT]2QLL0U]:.YAS3* MBLD)PL&H)XNT(^B1L6]S34;RX8OX%5]3-L4\8,214RY0=.173Y.-^"Q)UB3Z".+R.6_8R8 M"U#9C+S<@IDO^=!WL?M[Z./+,Z&P?3QRFX":M,V:;J)F*T=!;@<;S8 R!]C! MJP?,+L_A@XLTT8RG+FW'H2'8+ 023)X$4U E^? .OI!_K,8H"!E\ J4Y'OG 9BA[QGL]TWE#$ARI[[(Y MJ$( +S-Q^$H(#SUCC44'PM[K)&1%&?I7Q/O($@^&: MU#;VO*.- 6LRIJK2P(QH371ZE8_C/4+AJFZ)3U;A2HY0P>M)9W4/79>-J=]S M!)&>)UQAG)KXC]%8U@9SV'3NK[BV7;7T]"9R)$C

!T!9Q(-SRAVCSJJ?#[V).LQ+2:2F;:M2&=1$_*;]RF$F(W-K,C$IPP9EQR MC*60 D"&5E2HF0^RH.=07@W07L1N3PH0,330%/&W<([V5@?FV/B7I\G<(=>\ M0<%K=F$K\$YN8:TT&/Y8(4IYA1L%5&M NJ-E2AZBK$I[?$Z7!Q1BS/]Q%A5) M,5WYL-*:<"_OAO/)A_1Y>1Z='T^&5VAV[O1W?CC^/KN-G@WG>$G3-?Q MEY1\RN15YMG 6=MO3,0@D[HA$DZJ8.@\#&^?F)6V",JI]=$S+0#5)4":42S& MVB8'=W5 9#4.V:ZZKX6NMH%T-OYY?/UIC&;C\^F'Z\G=9'I]E&V:BV:#J$8I M"+%%P>GTW&YW?H='M[?CN%HVN+]#5 M9'0VN:*CX#B\%UDGG]QL.YPU!;Y!P^_&DQ5Z=P=**QZ<;NX8Y3VI2@-M52"Y M?@J+;.Z>624PPXQNG4D>,L?LZV#JOMU-9_\(3J_2#*IC' O.; MF?A=2W7 L&5$V[=0K]<"'J0".A<&[E4B&%H?Q SIZS-3..6W?*%*!8T(88%\ M_&] ZVS_6=M^VUC\=ZE@NP;YBK8J7.HBWQ]O<-HA]0][J;G?S\]&]V.+]#Y M]./-^/IV=(BU_=Z=X3)*R,]1NL9;NVV3@%G%)XU=P+8&X+MO "VL4@CZY,_1KAM^B@%P;#'A$XBS_CL+CA-9DGQF7WL^T1; MB)11DCGDS[/H> T.<('?B0@P*8"AD0M*Z=L_T^%)PCI:D,:D<]:@[&,?WQ*A M>-T_5KBI>CU..L"8SHD[!STP1!P ML_'CZ._3:E7]>GVCGI8L[V_P%KB4'@: M(D[ZH_]@2-5@YBJ0K%YP4#N#Z)!!"P0>>*UP4&'=SUEMWD&Q*7MTC)P,Z M?I)1(SB7!L&46#4>W8*(Z:@.M R(Z3!H!#E,Y!K3H14'PR0[1LTY(ZH"= VG M,,D>U&%2"4PQ2U"'7AXRR1RWF.Y&_PE@R#K/E\ND%)_DLUADJGS &3NDX3R( M#2S#KT^^@WE=YWQ 6!8N0MJ.8:W*8,O(CNE !T?G>RVKRR'%0*.SY;5YI 2 M7A>C[3'!'S].[O@I,AX/S&*$)]/&"WR-,V? M>>HA?H,[6HFQEF"W#(ES>;2JJ6?-QF[Z<]F>!<(/SENSQ\M5FF\P MOL7D*9GC[5F ]FF!4GX;HG@FJ[>35UT@SS7SY1 M![.H+K1P<]R.^\HP'?]XE:?N^X=_'\#N?S0C'19CV_Y:U%>N;.@@P(_'H3)' M^;HLV$8"4YC=?A).Z!8(XDC0Z)EO-+ !A T61?*"EM1Y?2Q8#FTJ];=UAM'[ M-R>(],2YXN/&$1HXYGF:SJ08XU.1JE/.%DT073 M>08"EE)1EEU*WF."WK_EO[X[$7XK.X_WQ-[59-\^H5V%[[.Q[8HY M3IYX3V)E-+^OHHWX<;4B^4NR%/WI$=.RYA$A&]:?JD+O\3Q:B\ME>>=YS$DI M[H3+HI)]XA,/^+THM-^M^<3[;?!.U')?>J<\V)[Z_&S#/AKEV7E*5Z\#'.0A M905R?H>;JW%LW0L"T_'V02^=/JRFBY(R4G0?\\3!143'I&:M,)NN<+HYH9,4 MH7V#1P]17Y0YM[00VI'8F;1GZH7.HW2^%E,:3)_T(^OH?%.G>X/D0#_3M9@P M_6:8D>HNXU8&P-XR"+C*;ULV!;#YH'MO*/H:UQ=NH746+>D$PA=@L7P/Y#>( M=0I(O4 5.EDF6+-=+ ME/*;X^J+>&DWB.E,D.79Z9R1/TVY-Y;7[Q7B!>L(M#=U9YEG?-@>HCPJH0ZT M-K'<6$/7QN4C=W=FTT_M+SH]3K:_\ AZ MAA^BV14RGZBSQZ*\XM&2K7!T'\)4DKYO%=1 [=^SUA,+3CP[MC[9&BET+Q;! MP9EB"A78(;H 3CC'T"@.,&QR "F=A.ZHL FR3KS^*U<+'VFL,>HJR?"DQ$O= M9:IV-0!TDXQPH%RC YUV?: #J,=4$=<-S[\*U POHR03=['QF_AHFT_OTT2@ M'[^P+0HUWP)FI-^[OFQSPB%?\*IZG'&>.5SI7T[/ ML\U=A^Q]KVZRVZ?2 7:-6OC0T[T[LXB;>GNLL:(I M'ARS!U3*02>$JNS7U3_<#>IWH1MUQV%W,%N/F!UIO];K94KOO#;T$R;W>8&O M--NY.V+7QN9/%]O;YXYSQ]+QSI_H;U0VJX X4:*Y9=DD#X6' [!J[_,27PU M [_Z8+4$.^#I(N573\KQ[@BL&*P5,KZ^:&KA MU9.@)."U]#UF]K*H=>U8#2.&KUD8==B*\H!,R0HS70>0R22@#C M9>\$6W?M+VD$4?D8E3RT+\E8X!/])/44D7#5&JVXO4 MR :Y^TT%5WGI6UL0#.],Z"1Z1<\LND[(P.'++SGY/,EN2#['A94P/>$@C%$" M5E*F(PF/,RIX?=(P&3;FK$C^0($ XLUEDB4%7:A^R//8RIN>* $K>=.1 MA,<;%3PI:K&200]," YK/I#7@.&0&['U*<&?;4_.P^$$ M.V!5'T7$Y E;^:%0",(5+7 E;R1I/QSZ47 H$QENG%BD0ZJ_'9E4@IZWFR7D MFHV[]G//6\;N?;>-35O3)RC#9?"N>_"4 H8PI2.]ZU4GM- %,1WE16 Z9/'L>L(O?$*4*1351\X5E=798RFQEV5?7:@80:U^X6;)ABZ#X(KG=EB MKJ!(=V1(CQ2TYXB"Y795SB/L36"\-6MEZ>K*YJ =HF"OW>U@%='I9WN7 M"J>#'N(;%"5 M;NS+Z9&_X.3AD?[OZ F3Z %_H 64%]0[;[*V';LE' "\RG[K7+%'Z^U5=1 _6/^:U^\86VV3OZA3 M20#7W1S6XKUF59\H7F^_W'U^]0SW-2'ZA72U4&M5Y[>_O@X99)7J^&I8WK W>[_0+MPLSJM_ M7^9D@1/O>\*VM[^F+CRP2H^RT61^]9 T/#?;CT>SI!?-P89WXF'HVIAB\9TEU)KYU8T+^L M?XTAHL>&#(/ "LMU]F5LUSWA 5T5^J(ZZ.Z M #!'([:&*LR\3#+Z6Q*EM_6=\>>19)HP9E25)[M?\(NV[ M7#Y(T$HDH:FK0Q3L-XOEH2JBFVEQWU+!#&4',T4QYM4%5[T"K8LJM7R4SM>I MV!"FSG$U^K'L\VR4[ ^/P3O3%5V%WM%%*%O5?HS*->&Y\&=X)>JBF"YN",6> MK*)47( 5L^'C,BFHG?_ $='4_/[%^NQ(AZJ$=C?:MTPPG>A AJAO#J2RK)

?>,TR?\,<_*1]V4LF>90#N!WOP=>X!1PC+,Q"58Z552<"+W(S'F6*2*=PS/:+TCGF7P/VE@?S8UYW5*E#U==7M9\';6 .HWY"-"%K@XS3CQR1C MY^(XZ8P12P+9J^&IL1^AU^UO$05#"#6.?)946#[)$A=!#\TH1 M\8'@.-P1?M,5MA!&*>:-)0:0#344,C#XH "^0=CA1U6#5]L<(1>$\,B#H(C;ABEP^*XK#_8DTH/K?FWRJC6 M/.9\,XK_N6;'UL;W21E'^I&P+^=Y;E'#[,TH72$0G# AT\T>426,QF>3NXM1 M\,5*=^'%@K>*VQ7!43S-?HY(PO8U9X85B[MZN*6QW2C]4EFO&YR!.P+N$_.& M)$L^C6%TDZ[#!^5US9ED):855C(+^&DJ=E7@G,5+/;@=4S(7$(Z4+H;I:6G2 M!DI,!\C*79Y):Y>G+@.Q0D[$\;H8;I7F4&>=?#SW:6L\*.7AG%8PHS1^L@G?#[JQY'A&RH>08\#VJKQ+.QU&# MUWLU77DPW=@!I+2C_$"7]RRS$UK5@7#H7J0+"$ZP]NPURN+JANPK'!5X>I\F M#_R+ADL8LDDYE#=B-TCG@N@UP1!Q$%PI4G_6D4;YK&\ M$F:>KPF1]S]W+ ,>3WOF#:=K5< K8VT7]7#RHKDH()#_=--$/O/9HBC6;*QG M><&4 X]!'- !7A>4TG92I<./K/$HC4H-2%*S"[S E"BQ8)0PYIJVKV#/-=;[ M6%8]OXZ6HQE=;\NB!(9YKDC5<4&P&'?.6C,K1:3(+"D^F^*\=<(^N64&W":4 M6A(,BXSP^M3I"",F#2:L6[+CRA+3;5((RB0)N)%-5^!"N:T075AU!2B$6S)H MNY^I^^1G5@E*+P5X(\%:\G I)H.TD^S$\:/(D;[K7R3%/,V+-<':!(XAZ,Z=SYJ6D*5^^3%>8M1]= MX8B7H%&!I@OTMS4=*]Z_X>?:T2^8EDI_O\S3-'\.[]E1@EKR"W XN)EZLL6M:AYV+ \=W@]&# MV:XHZU5R76\'S$P.CC99DC@,+04BE4VI&X85\5J)^QKR-@PQA;Y3&VXSO!RP MG&V;N3-K62%@5D2[(E=0]OM71=E+6HT'J!-1#%3"MHW#5L'2U*3+A!R=.^@VRO+(B\59J["WD[!;TZ!JO02PE^'C'!$1-\-63>LU9@ M4G8?E@++*C4,M3H#\3J+DV+.(KAPC/)F[XU'%Z ZC1ELQGYJF3!^F5-18Y#@ MCF6!X;+-7&=BZPJ"=N_C/D9(,:Y4 "7+595!6(2=!Z>WQC9-?6BE?5+4 KE- M0HTHF%G>C$\^)H8+EB'AB5U1Q'9C=QDTH7YN>N]WAL-DAX]-[W4?F_C'('[5 M"/^0=(M+]H6(E(]HEJ_1B XB](=1%O<_,:&ZR9/Z:U.H*WTY1%6CJ27@?!VT MX).BPKE8H%KN=O<9N\QANOA48 [*/G[U%."U@1M+.9Q3DFN*LJD=_3GY( 5ZO=!YL6.?.66=M M,$0>#%ER0^L"ZD2.9?0"(V&/VK099C2@"RUNU:B\Q#&U,&6YLM84PZ8C/*C2 M!I8(;P^>/ M[(;626;\=#Z\&)_KNWU:/83#C1XBZ7MR25LNPYOB?[&+ M*\*OFE1<'HLMN0'L;S1"CSX]Z+:QIA*'PQXK1OD<.5VET\5Z<>CQ1)FC_B(A MU"'-23'*XNEBD3>@JQVRXNJ^,]KL8M0U/^HB>$:OO"J$7>TE2J'N5U6, Q6/U*:?,A8M29(Y=4)O'R/ZCX]X>8]) MO_UT@>E\\89X@Z+XB6LF+"K(W9OWEQCWE*UYK?!FC0F5-S MJJ5 -:81HKDIR\>(CNX$M]MSW[8\"="6DVQ.V/KL HO_G617>5'0BL&D>S3' M*@RJ95V0*H[:5(,DB\]-JA+0UW%5QC?T-Y328ECCLG)"]#V%80H_99L8TJ$) MC?K06]4%O*JA5MXK"5[EA']166&2Y#%O^N9=;0\O;]X6@@XC3'*6 M67G.,N:HQV&%"*A&U>.3UFMM2?2KD#7F #MFK6\*EH+,4.=M 7@UKD"GK&\A M%[*V_YZ4K"=2)_EVO5JEF_/'*,D^1EGTP'N@N@6%XY1K\DY>/YNBCS)29\5YD:VP1!WN&7\HPN?S_WFW*8-J@VW0FZ M:KIB:S@B/O^+TRW\QH6J]"H"G[=^\ULK7!2QEM@^>:9@T+Q"$V+2NL9E73'B M2$>_Q24!4(VJ0Z=LM\I+H/Z$. !6L&,2_98+T0B7.5G@A"Y]6HN@DI)0/9R: MI4$UCQ-4^118I82V6HBKA6B;LRC[_"EC<-2MT7\.JOXUX/HUSL20D LY-?%K M;O(H4U=T]RFH:E9"DX8@%O[([D4*6<4S_)2G3RP6C@*A$Y^YRLW2H)K ":J< MDK%20DR4S]F\E:X"M](-7^=.,\TJLO<85#NHL4DGL,5"GHJ%K^:[Y]Q4STX/G=T>_KB)1AMNKJ34OMND 2 -4N.G1R M#@0AQU8'(:M9NRZ0!$!6LVUMT%0S%0Q:S?IU@4($9E5;UP;;RF:B0:J[LTNN MJ6^%#*P*UP-4W",D=O6KI&$AO[A5C<\2))N)OI6 5>TZ>%J:,\F0@PI+XFNI MZD8"9E7WX>FK.@D3_*1*Z5GPM'W:C\<.*J :PQVOY/A']^LT(KUOQ"DO3SHA M'J+UO,5V0VK/'8 [KNCBH:'?0=9WT0M;[%SA*K,'JR9I>:>0 =6&!H#2XDZ( MTEY6)R1APCQ1 W4-DI3UP 4%V%O:55&&0;IEM1YE5__>8O*4L.N"3:UE%H?5 M<$Y8=0MT?OUV(?30/'\5#=K-J&I(;M@1 '1GNAJ7.A/L"3H/>FF]'+S4?0*N M6F%FUFWE!C405I8"5+T&<(9,J*'YVX)BJ7&85>U2Q^C7"[R(UFF)KE@YOM?B M-6H>2B9.^13CW]>:+*:RU&__ J;B#>"DG#_\\0D:E25)[MYN@F@L%V M%F/MU" V'9C]P@S5U%G82D*(!VJD#R0OBAN2+Q+E)-!Z#*CJ5:CZMP7>8\37D=B)MH5,UXQ-\.%1=O89&A+!4 M6^SO$]04#(L?PIK#$<2I//@,&6:&A2+BGZ^ (_*I[#IY7&O4U4Q1=D5 K3X, MKV+:J$Z<7[03"M1%=*8),"TYFO-TP\4,SW'RQ-9Q;@TIZX%N1P- M.2U=%W4B0GO M/$D>Z+TRXEF!]>H +H=53B=.VBC"J:=;@A>14EJ#;T@#7L2&K$EIM&*I;LOP=4?%X0_*G),;Q MV>93P59PS6[QB*7YUWX5==<&U* [@.XW*RT"L3)070BZWZ"O63FT=;]I78Z\ M+2M0^U:;),5=/IKSDTX4,457;FZH02SS#OO"M>J?#ANN#:A]=P M'26NBF#? M::M"4%W*">+EG#3?!WE1L+HO<_N*G;NO0AM0\^X >F#W;8H*WWUGU)<35)PN MKO+L@67'8!%\JM;4R0)J.RM$.4%(K<#BMYG**4\0PI1@=;G+)(NR^:Y=3J$- MJ-EV #VPRS5%A>]R#"7[#QO:GZ)4;)#5:;#8 SJ#=']H28I/'WV7H089J:(AA0P+<:R0_-5-8=)$4J[R(T@\D7Z^H!K_CD0<%X-A\*:#/ M]__V_LL@_JYF'X_V#2)40T(<$]=LHVH%B(0BO&Z/_%K];< D#VDD=8&I/;*K MVN:GS;Y@9SF:2]'XL8]S@N.D1"SZ!U #-MED75NP40#>A#).US9L-%]'BMOP M0[,9E]*][9YX#[8K*[[X;'B0K7K_M2T!B/$:8/*>:B5V@KA@Z(IN+GJL;M0P M5[HD#;$!]""UC8&V]UW62J'"]%B,V'T_Y*P5)7:VV8I4.WW\?L3IBGLBUSG? M_\'Q]9J=_Y\N1/"9,H+O.*\",/SYLE 9]U<%^+7?V([R8UL'RD! ]MX35+V9 M1Q>+=],_^=O9'I)X_VNGYB\X>7BD_SL2!W$_T +*"[IZO(P2PL-IC\I6Z]N_ M1 *[&WTT3G-!%2 T?L%DGA3L2T4R#_516!WO*U?WF::Z>;72):W8.=F= MYOX@ )J_0UE^S$%<8.*!+1R5@OAZ0C_LR?/0_4>:$P^EGG' MI.O/7ZC#4?V[.5[AT37/.W//W!$E,VQM*+&>*FM M/=L3%H=T3QW[*(G9]YBJ=-8!1?F(O0 R22[6^!J_E'?/.'W"'_.L?%1G6=FQ MK-=&$),)^]*#48&E;@9.!P;S[CG?AP55$:^P\?O(#]+FM$#@;;Y/8[_"5CY0 M\T)LU$\9RZS*#GFR4RMS*BJG*MVKH-?2W%;\N[1]NU D2D6BV&!K]-M]\HFY).MDD':&%UK(LR8D_;!=L_7=&_Z,_U3_2_V'*? M_O+_ %!+ P04 " "4BQ57DS63XC(S !:"0, % &-V=2TR,#(S,#8S M,%]P&UL[7UM<^.XL>[W6W7_ ^^ M5X'S3&CL1^%?WWW\]L,[AX1>-/?#Y5_?/4PO>M/^O(NQB&B^C/SLA=D1^=SR0DU$TB^F?G M9S=(^4^B&S\@U.E'JW5 $L)^D7WX1^40?)L-=NT]) MLHY_?/_^Y>7EVS!Z=E\B^FO\K1>M8 U.$S=)XUUK'UX_Y/_)JO\E\,-??^3_ M]^C&Q&%XA?&/K['_UW?\N_EG7RZ_C>CR_:+RX_?OL;S=UOP!8(T"LB$+!S^)V-O]U5O M[;N$1IRO]_QW[_L1LTGRP_>7'WC+_W%0)MFLF5G& M/K>J=\[[NE\-YR2,R9S])8X"?^XF9'[E!ARUZ1,A26P4"=K B>2]=RD)DR>2 M^)X;'"V\M+7V-.&=DJS8%^/Q8KSF PFSU%H4Z%LZC0;3)X;>4Q3,V7@W^%?J M)YMKLO ]/SE6(6/#I]&O[\9/-T'TM Q];I\&N=05FN([H:Z7].*8]?Q>.+_UW4<_8!\B (:- M51OBE$' 5A<;(X6E4;&@,6ZW\1(S5;!3BPQ+;TK"M#60(,]9L M>5:Z9U,C0%!X RW-4C/W,3!*::K6^HP%DA+>0+.S%T@X1>DV9S*07*"ZSI )Q.@I9G)DF=X \V,N=X3F:[#H"C(RZS;4YDP]>^5_)340G)$ZH[PF7"RLZ M#,UNLF$\35G(D/-4PD<5H8@7,T$_V4Q(P*6<1>,T$6B3T\B/[P:?=0C-W7?8\+TJ9S;*)A/C/G"E69?O# M>WT^C57PFZGHA/^TSN#:,K:^B*>&X:$^[:C6ARP=8?JY&;I)3]A)6. MR3!D;*:B9WP+,YTSTJ"AODMG# HNN,K$V:^X\JQGK GO0"38C%,J6Z%_<>.^ M&WBIZ%V6(^#I!6EMAV.];H8WT9"_C1F86"Z,%[=1N!16QWML?,8=^YOQ!KNSK1 MU]M8([&%.QOPDJ=)E.Z6\8<"%A;U7-1:"Y]CO]*@C\/2AO65FO:ZUQJPM37; M]LI;;QFM6])IL,Y<'&(]>H^QV&1O6V)#" E$^[^P,J4B[T\@U18)[C&2"W58HBQ3D;,>]9R( MLB&28;UMRZ7> 5/5Z*6\Q/NU"&ZY\)[\8$?R@D8K%3HY$I%"T")0[!.G0;/' MOC_G,MP$[E(.9ZD($,^/&(!*M<%"])K$'O77Q;-Z!; ')8'X?D+%5Z+;B6'> M]IT)6?I<7B[*SOVC'Q<458# 7V*.%%IMD1CHA6'J!A.R9BLL/?"')8%X?X>) MMTPW))C_.W4IVR\&&PC2E<) L/^ ";9"0R2\9]0-8W&J P&\6AJ(^/>H"P^% MCDB03Y_8%C4_+X2 +BL/A/V/F+"K]>P \ -^ '7-IA8X]H4J0/C_U!7X*]HB M,7!/J!_Q\RL*P+Y2&(CZ#YBH*S1$Q7L0SJ%H[XJ"]S_X8)?40X+ZQH\]-\@D MNF$_B_5P2XI#(4?9&/!^2NF!,-I115T: M"CG*!M2DY(DQ'X2)GVSXQ=!1RH^EY5A72T$Q1METJI1"P7;K:0@3?M]5AV^Y M)!1CE+VF3CD4G/N$![$%PW!.7O].-CJ@*T6A2*/L,;7JH4!]3_V52S=3WS,/ M&M6R4+!1=I9Z!5'0GKFOPSG3RE_XV8UQ,^C**E#L4;:5('51*.#GLW0=%=S% M?1Z1Q8-+Y]HAW5 12@?*?M-"=112>O,Y@RO._[CU0_)11X6T./B,"(\ C9H= M@?V3'>R?X+"C[$.-:G8$]DL[V"_AL*/L18UJ8L+>9W\=TUGTHCB!5A:&0HZR M%S6HB FXF&G&])Y&SWZ6.,>$>J4&%'K$+:I>652#SR9YB+5O2T+Q1MRNRI7# MQ/D^BA,W^'_^VK22E)>'8HZX<=4I>FH'8\8[=UJH0HE*1:#XHNQ5I>J<&E+. M,"6NVGP/2T !1=F RI0Y,9ZW$3_[>(I"K3^V6@J**\I.4J74J0=>'D<<*[M^ MX=?@"#:48;6LQHEA_$+]A$G (\#3,/?1*$[%%$6A\*)L_[3JG1CJJ4@DPT/K M[UR>"F&?^N\09UDY*,@HFSVU8B=&^)X2SC1ARVX1Q\4O&M#Q8J$:>77EH8BC M[/7,BN(BSV_H$6J+OZ06E 64;1]4Z5./,\3C]RDW'S\]SOB-&<4H4RD%Q1IE MRZ=2ZL38CJ(9=?F5U.EF]1@%ZNLATH)0A%$V>!K53@SR@1QR>$M%H,"B[.RD MZB"-"8-7[\D-ET0=O2 O"0489:>G4PYM[%V"QMZEY=B+LN-3*86$;18;SGK4 M^#'PEP=97^4P2RN []E@(JY1]=3W]\25'Y[JGZZ$'#?L+W+8%46A@.-.0C+/EOHZ M#[^R"I0%Q#-$@[HH%/PXJ@84>,1#1+VR2/%I">$R^\_DVDW<7$(=_JH:4/P1#Q3URJ+%S],^FWB6 MD?[,O%00BC9B**Q4-120IRLW"*[2V ])K!U;2@6A("/&O$I50P%YL")TR0:U MSS1Z29[RNYTZL!45H* C1K9J5<4!_W5_CSR[_Z9%7E(:G)T $7:EDEAI-[+T MFME,'LY=JD!=5QZ*.^K%2K6B)T9^G#P16EP_"6&&;-^F"WHPUX*R@+)=A2J- M,[<6;O)KI]:#F,L5P[DRECX'OW021JUV7'Q2#XHNX"Y6HA0+OE1O^ M2M-UXFWN:>01PH]/XEUO VR(@ U *4',NR-(2\W3B(C=Q7,B:KG4: M:.M!J<&\Q E0'&D5%.\O>O'G1"9D02@/4YB1U^2*?>A7_:((4!W*#VI&(3 , M$IK^\KZBURW[07N)3L$OWAYD0?WD7#@[+SE/@SH>70]&T\$U_]MT?#N\[LW8 M/ZYZM[U1?^!,?QH,9E/GFX?0S1SNOSL^9>K"C1\%B6E\L73==6:;)$CB[4_V M1IK_X)>=R./%SME_'V7["$UNU;PZK/;Q':Z.9GDF9:,.Y7)8"5FM(#WL:0I- M6ACYZA.1SY!0/BK%T?*ZZL&5,:!0%9T(_A2&&O?LMVCI74$(1A*).P)N]8V1 M$4G4*^2MNMI::"E?:Y !T1^=I&$8IU3,Y"1AD[=8FNP%-K(%K(Z6.;8&;5:( MH/.W?5+MBY\\;5_.$-I"^AJH,EHBVCKC'QP-=.9V#\P-CW:1WZTN)H*6MKT:#1&)V/>TK6KC_/7PODC[QP[_6!?FIV0)71 M\MO6X,H"#73F@!S58Z/YT]HZZS<#[DSV!6&_G-]F6BLE%.(E4>(&HB068X?O M)TW\Y1/;43\P.^-ZJADT5,/+KFNS#07ICMZG[FG$Y$PV]X'+7S*8#_Z5^FN^ M -4N$?2U\%+QVO #T1R=GNN\O^^FU$PU+3FZ.G@I>VVH,6N-3LSG*)J_^('L M0E9>9%\"+VFO#>AEC= A+JQ$1E'HF:9]17&\;+Y6DX5.5W0F,L%,*R[,K+[V M_N$WL+HJOD<99D]P/T4!@SCF$F/Z_)CTAZ='MD!QU;+3:WSGFIMO*3) M=6FS006=PMN()P;=OF.]$4."&_1=2C?L1S^[00KH6E\5(XUQ\NU5JC4R)V\;=1N)P1NKHFCV9:U#7P4CS7I<:D M/3X]!QYY^!QFJH>7';HV52 DT D31\C0'96T,%X2Z;K4:'1&Y\-F$W7$[JF% ME-/UIQO MNGL_(;Y&,WGTNU4JEOXR4KC);MNR*6DP0"]GRF&9] IB+DJ7C[M M9J@#HX//8WE%!#['4E7"R][=$'=F1-!9*Z@(FMXPDWXW[E]_ ]-;G8.P!HZ^ M6L@VW@R[9W#@5;@\*GPM.G]BN21>:G(XOF7?H5Q;=!IZ\[DX3W6#>]>?#\.^ MN_99;R[(JSDT =3%RU]>ERHX(NCD34CBLL7L?.#2D%^+[WE>NDH#?G/VFBSX MDP1J\B!U\1*BUR4/C@@Z>57=;.8JS%SJ=2^%[A89B#) :7QR8Q<+XY^,K7I ;MK589T&,J9)V+I=P] MH2+["6@!JZY\OND/++!!GW0K*6MZ:?(44?_?^^ZNY:]:"3L_0C/$J<#H'F$B M%;<-6=L*V!D6FB3J$(3ND:3/@*72JD[^JQ:W^,W1!7/4VUG2ST$R!T]8JB;RDF MY)F$*;EANLGB[@>O7I#R]32_V5(X\:B.%SG(_ MBMG^*M= MU,\*-89EXN)&JEZZ*!_IE$/"C4&=>)"7"):F=\M#0E M0FZ_\T.?[)/Y<5)[ 2;/:!=;OC*O%1*\=(.@=;1>UF&UU M^84C-5G2PM@9+<',:%0]XPXHWF9CZR1C3ZL4Q%Y@@XE3J(C>=_9VM%W8^&'* MWP'>.26OR"*BI)!XR;T,8H)ZC3VA?#\O@P" M)HR[)-FSE^-%)>(#.+W5; X]T2BXTQZ%%WI7MI*^(98[D,GT.-*.,("N$Y^/ M9!;A;M8-H:=6/;9KFS Z@Q@X(?O!G87R-:*#D+@_U F)F_[4FPQ^&M]>#R;3 M_W374?QG9_#?#\/9/YQOK@[1QID6N"'F%7$LL49*WB0BI%.Q/38L&$4F/T1;OB#K^)%T.USH3!6' $0@*=K_*U M?1-1JO*=B62Q8$BO.SHU)TI3@.]4;N%Z^II0/^+[29J@NBH1[^?AQP1:WL8[ M3X9;/0+']QV;CL 1A\;L*NYU2IDYW0MK$#??MR>'W+6TXE$3 M2;B"Z(KST" M.JK1LXD7; Z^S[[0]9G0[+D;C[\A'55_;,!JFG; ;9Z-C&+38#W%JU'TWN: M'&_.*)2Q/E!=G5QT1M[HP'!&\8E'0-4-FFMOKW[Y=$9QC'+Q&UF #T+< ;GY M#98%L_@AC29%6N*X:X?%?3=^N@FB%T6^E._K' [W>].?G)O;\9<.Y$LIG#3N M5+4Z^I740MLN'5G7J#R*)/SZWZ55KS>39,0IO7$;H0R=F;_S.-$S&(SZ()\:+0\P-RH./2&O M'??9,(4I?X?JFF1_#ME DRUY"E>BU00#JV,[64_(MQ6@9^VY%UC%V8'$;>3R MB2E[TBSBV9G4-F.JA^VK/:&QP"#LX""Q4S6/P0+EFP6W@>T&1ATN3-!VT!IZ MGA>E#"P&%?&?]1!JJ+#,$ZI>#*$)$F0.93K68:I M)?0K^2V8"0R]-V8RLF2//,>CU7RB:00]'4 +AF+$[(W9R#!\9CA'5/NNJ:$: M>NJ!5@:,"BYOC/E[2M:N/]_NH_+,36RM+)[C%39O91*P]M"S$;1@*S9(OC$C M*NR^ZRY&I V@IS5H94C18/7&[(+OMQE4>SVMAA)9;?1 MR-@V?+1.6U!S.<5CND<&D@,P0Q\-V#R1GX/WO'^E/B5,"6;7R>8^<,.$;>KX M[:J9D'4^A(X7MU&XG!&ZNB:/&O+5-:!TMN9E M:YB;M:-08 7F=M#W#PFI@E MX-;2FM>O56NQ1_.,%Q]<4_X_OO)^=H,LM&[[=#3_!5N5'_Z@4#)+Q%%V%NR> M)&9_>7+#)9FP#C)8+(AND7)J.R_<2DW33O M-Y-S:9JNU]DANQML@1[DP?^ K#2@VE!CZI+CW :75HXPQ=J81\P6JVP!K_S5\Y*R'2"A M$&Q@Y*%:%DI%\Q[8(ZA0J8S_/)@P$W^5;^S=8)_L;2?C08:W/SH7#I]U@RA. M*6'_&(YF@\GPSKD9CGJC_K!W6\CNAI/#+8\PY01%@>_!,A9IZN#TDS%=NF&> M^&.?C8_]@[\=&(\7]P4;N$IC/R1Q?$UBC_KK;3J8BDXS9AM73-Q?U4"T_%GD M;&]FTRAUW9.P@#\*3,@S86MH?J=]&?H'L9P'O?]/Y=X_&?P\&#T,V)_]\>?1 M<#8@/2. * &\ Z]=**!^C9\!:0.ZDEE95#+SN@\#O?5LSL MGAW/]2&Y"7'0#7\H=\/^>#2;]/HSIS>=#F93IS>Z=FZ'O:OA+>N2@WKSL'3C ML_^J3FK]/LBVC0:W;:J[T85/;W1=B2\!+=O ZDPU@*YN[&KAA=^CMG>?-]+N M\_%#=0W+9K'9>/(/G+EK)^Y>*$CB'$TEK*U=123 O*2OA3P7 :BI;/;,(.#W M$)'(_.+15>6?.^@O'\O]93H;]_]^<=7+$GO?W0]&TQ[>TF\OVGA15&9" AZ5 M($(<1+H]H>XV#L+]X<3YN7?[,,#I]#MY]U(!NK2^%DZ'E:RNLQDD^7 N1],^*QY-QXYTY]Z$Z0.M'V+ ME6DB=#!W'G4-I%?"2_( .HVF"G*',=%1?B'W\9L1GA@NZJ[P03IT&SBQ[]RQ]!#Z!'*7^N&7=4T5,-ZJHQ)PSU78B7. M)+3R1\!J8_O((715GC"#PX+?E43B"447^K[5I H0 OI'+)]]FEP]'DPZM<]'FU@E:)4RJ9G63:#]WBL44C0VLRN'>3^6(MB MR<.S]M#A]UEU8.$V#DK>=2NQ#;H 0^>;;6-([\6^C5C#/)BM)-@F^W] MX36 M/[?H/SM:P@W=(=6R/U%%1FU80 MX7=!73R=KC-6(FD,@9O'=! M>+H.68EKV86"(L^);R4F=.H]D7D:D/%B)UP_I=QXH3T/W@*Z]\TV5M06'/Q. MI8@;U76Q2AB,*GH4N<=]#2.5]]O!:AU$&T*FA#[['I$_7-T+A!CYVDUL3/[- ME!$79(6&5AV]\4]BASBT$7K:.D/H_HR]AGMP#N';Y@L1P])!!A'QDP>V/8[S M5&7@E5Z[7\7VD[1LBNT1A3_W[0)4=;-=);9M'RB-/+^]P8CIJ\V5&XA'<9\( M2412()_'A\&#IXTMG'$<-1 =_(XE"ZG6];%*!)TBL!JYPYU_A'5AB5&2C)^, M>%>;C+!^X,:6"SR;YLXK,OLHS/#[H@BLU?2]2N@=C]W&WKF==1#WWF#NW"2E MPB]WF*_;?N4*;0E[7V03^ET7)_P^E8+Z03QR M*=?C67X!\E,E"E,?RI4WZNQ:_1K3=61JY >V_N30SWLK+IWF=%-6^-RBM30: MX_>EFR@(HA>^_Q8S>IXWCCO)W' 3Y^$.A2@(_N;"]OAUQKXG?&;EN)\[DCQ% M\[S?R/M@)9QR]D2-XN7@.Q\-QP_FN*-V+Z*R$C#_NNO?7&*.3QQC5"RTR#P"5OM7*.-!>8-&[ M_:K@0\=X8Z,-&;+)5I-UWERS&_Q!+!-&6D&UXFO+#1(7TZ1 &OO7GC#VCU_N M:31/O61,\Y.VWJLO(X@5E9<\/T*4JA36TR?'GP843>,%X2.%Y^C:&Z:3O/:H,KG-\/: M:+=;]7240.5D#%.R(Y.S#2-UN&QH_CZ>S%P\2N;C9T*9U.H9?ZN9N@IT[F_M M*5TKVRPS9H("?^C<2]A+[B,_3(:A)6/2>M!G3%L+2&N(-@THZ-P9/!B[]R?Y MU0KVW_G,?:WMAY(WAGW."W1RV*7RU^&&[_"M>FM!AR:7L/N:73DK>>MNU1V+ M?!3*GGQ:1'3%H^K&CX&?&?3@=4UX*.MV*)NRG\8+)O7V9H11_:/;[\:2J9&7 M.X[& M^I>[0F /=OD]_HE/4TU->:-J[VG<^G-##Q=.^UFQCVW$U_YZNA64/6 MCJ.]:5L[TH305ZC-C]AUS*)K.Y;Z<&3WRCZV.++LOH!]HZH;IF-!!O[>:!_* MJTM.H(MKN:R^29.WZ42+?62**YH5L2G!ON$C8U&^IM60)X70/N6KK]6)J-HV M$F7(W_JU>XO^F=#'*":H+]'+%-P%$]NQ7JC6C:#=AGFOP())O'2L8D9YJ+-\ M.)(4@WJ+NT>87)\C"4JBQ U*]'0H$Q7,X5A)@6/,2=60\_'K/*H>.PZ]Q__> M6X/E&"MIYRW.M6;<\!>]/*XZ"OGMB6*ZGRB,_9BMV\>+782X=MU;R:;#X[F] M7=-\]>MO&^?KX*QU_N.D&/B-'H_]5O);[42:N"]W+K\OXP8:AYJB^-EEKM*J MC>Z^V$GW):*_#L-[&GDDAK!2*H_M6CB"%ZGFW2'FQ@_]F&W8^5D_A)A2>;1U MZ/'$2#7O#C&?:03J*7DY(!&7'23B0--&MP!(U/&D+]MT2X0^$PB-DCI 2K_K M(*5*!.SI_2&C-\RNNW6#8*V#[; 46MSX\20VX3+KP,9GXL1/OQ'3<.-]UQ.A[ MCJ\9/EO-\*F/=&KI<]V(*#B/!)]="8]J1IU;I*A6C=8!E@OC*NN7$/BML;C M50*BOAR[<_U7BN*[Z "F5CG!4&B,[@::DH UM_Q,0K::#WKAO#=?<7]5DIWS MY9L7(T^6S>!O5NTYK(44.K_YF,_VE](I(9=:32RT/G;*UG86F"43L ,3_P#R M, 75SI.PR[N>;U9FT3A-V.8^Y%>K)G$:5].U]UY<.H]O(CKU7^^B,'F*!UR, MOZ4AN?S C4[KDZBD;Y:DI-I[$&+'S>5S:":@DT1.M!?1F4P?LA"_O929F\/) MY!0N#>Z^B/U79R7$=01L#A?8N?SP>X?+_-4]T5'WA*+[4NJ&69:#^&JS+Y/+ M+Z@'NR2._D0WUH:G>-SA&)3P70]&%50: +P-3;3=#3MJO.^53:H!I/#]")F: M/#>CUG-0*O;;8+BD-+I'H+Z6>TW"^7W@AB-W9X[4XSAY%X3/A,;2CE.N53YBF96 ;'T1VJC2W=);-%NTQ5#N(9"U< M0>(Z-FK\3V/X?"'^\HG]V7LFU%V2SZP!<=%\]V+8"8P:($/G9TAT0P<3^39L MOPX7.60"FGB87X$V!+>V\K'.+PB.LN9VJ.G&HJ$QW8X==T\I"'9 ]YF8:_LC MR=74WHR#GK>/EF@$%<+(,%P Z]W*ZO\U$O5K).K72-2.'C%4 M!OBOD:A?(U&_1J)^C43]&HE:HW]C1*)*$Y_N7!O0,%-6R52G\[$'#00C F#H MB"?H[><=:&<$A^0:P'L2]6NN@3/*-=#I^^TM9JO\K=QOSS*IQ7%*YM&L-*S!U,,_T=C+*9'R MQ@_9SWPWV&U#^FYVH PXSSB^Y8Z1#S!SI1'4A0#_F**@_AUQN>F+V=Z-_5CO M!#-6?$/T*C1$/[>X9U,B1S/9B2H9RDR.$ZM&.D>JSFA+?%HIBNT5VR[Y)F3- MQ&8KXQ5?0-6@U[HA[,UQ#:,NY_*LAQVZ^V,0)V)%/%X>![/=AW4 MT*F^)H_)?I\&B+145D!V9S:UP"R1:L '?]-_$]$9LP6^>U6UT#.Z2Q+!E?V'A7F\Q@^H$;6[SK 6VJ&PL[$XOJUSB@>N)O MR:6B C;N"Y=2EL:_1JZVD$.1F4O;8;884 MX8D%OJJRV#>I0.CJ%47?PHU(DJWE;[4)K$K%L%]A "T^2F.'5-.S3J(CA<%^ MRU"JANTYJT4N" KTSB:5TI(H?&<7#&L /V^R$U[[0.H,/Z4[X(?9#PK/" 'GO)K-8:_?:W7!HZ [+^(; M(AP_>=1QG!W!_YN8@Q4:YV-:17%KJU$WA)U?J3CY;10N14 T/RP?O'I! MRL>1T^;L/LN<@5[MO\]#K8/MU9\X^ MXWQ#M@(XZ5Z"['=^+H/C<2%^Y_"3Y X='7.8]LH",N8HRN.,%=P*9KD1[*UC M0M9Y_I;QXI[ZH>>OW6!"N*=USF>L&R:_&_R#N)I HN-;1AXG],261HFF<$3? M!E@H,@Q';/B9O9#@F60A+(U8@ZQ9;-]H6[:@AO"\#(&;\.PE:HC_76O8'M?V M:"\!UBFV82SB^TEKLW/TWCOA5PQQ$Q@*Y2%;L.\^EE=CUX.K67?V6V>^?F); M_O&BSPS'3VYWBG4S_MRLIV8YRWG79EFA3L MI@M40))6JVMT@Q:U<6GY:#N#=):#<1RJ;^VS4I5"V(&1)O,HC#T*!5L9XK-O MS5XB,YB%0MB1B-9@5A1L$TQ^6QP 9[$8=L2?/:!5)5N!],:GL9#,#0(NFC9- MO*(L]G-N%N#JU6T%X2GQHG .A%A9&/OVFP7&!H7;6=/%-"DL(MB_]@L(]H]? M)CPN2K%\8[\O_+H;2P/PBNU0^,(D>V)LE4:]%; CV;@.\9)CV6H^+0.8=W[H MK]*5#LY2$:B_HGF'11FO"II29=#W=#^[U.==:>(FAH>.JB7/;'10ZE%80.*3 M8-K'R MN:]\K+R**(U>N$O77;/?)!N[,TYU*\AQK3)A;PTW5^K A,YM.0N<1[)4CE W M5;$&]E%$'=),^J,3)%-J\+KV:?:8#1LM/MKUN4IE[(..IOJ: I56=LD]9BUS M83%$%L7&BAR6P#[FL,*X(GV+0.9K;MX-\_GI+2L35-SG6QDK8 M+F);V($HM#G(].;_3/D3.(-'/YF[VJ&E7!3[*G7- 46N,?J:YG#1)9+*3QFB M[GP<%C=+FH4-O 5L;__QBU(S/ATC=!@FA&?MXS**)(KS>T(]#OH2G'Y;WP;V M\<+QI$(P0J>U>!]H+]X5<:EX*2NSQ*(FFIV(?5/@[6276*X-&3[9!6UA.TI, M9WY#>\=.H1]OI>JGE,I7A@45JJ6A;'1N)Z]2')^5O#<#^X:T-+K_^9AAS-!7 MSB\;T^$LO'W&QL[G6:X%9;@;[@:02AWK?US87CCONVN?7RHF;DS&CX&_%! # M,RKHZD,9[(83PU*YL^+2//79-0-EMAM^DGHZ=H3@^UT.ATI6),UQK:X2E+QN MN%T@&G6$JNM\VLY>C\J$&T6AEUG4B&BG0F-5*&T=\[D (>E"AK)_1K2?QDFT M(C2&);CX5$YP<=?[VWCB]!^FL_'=8#+M3JZ+B1__&K-1[X&Q0)E((<\08TYY M8:B&=/>2&1 C/3N5Y!(:TEZHRG@*,JHA; 8W7SHTU.\J8 MPB:-W)75PXZOG+H!S\/V3,*4L,6.*<>-34 I[MM\Z M#RI"FD8]8\7.K0"J!E@F"H8%RCW00T^/^D*HK%Q'.X[J6JA,A7:2>!@PYY>% MQXL#<90#&"NO*8Y_=U1M/P7D-1JTD:]C^PU#Q@Y),;2Q10]2=:6KTK"=K43^ M-4/2#DDQM(L?-?$\3=:.W==,>3ND!=&BX>MB>J+$'=OOW40IA8!:+(<6[5D3 MTZJ.[4+J/X/LM%@.[XBN+J85);NW'=W'>VHBU_6UD*^]FL]$3+L<"0;X!Z8W M:9)2DM^)$&$4VT-Z<0EE%(47'C_T#0*^.!VO"=+_Z6AN3R [> M+P3ZP--E^<0UD\)996(X 6_=V3Y\X:1<$B<\%,6)MK)DQ6/^J%.T<+@\SN6' MWSM<).>%-/K:DW2PV6N2HZ(^D&7%U:618H]('),2L;>^^R@B [:V8/MVTQ%M M8G5S+372#GX\:K=(MKVIR6KT<#VF[ 9\WM0M@VA;>C: MLQ#U&U!OW##XOJPAT\B:0DM!T+)Q%(%"WQ/82,ZWBZ0>/6O+WA#LD 4\A',& M' ^:(//!J\>*FBZ2U6P.+?U$P[9A LS>4'[(#"4D2WZ''M54%#JKC4%9 2UG MA3W=!J4[X/L33C$FH#AXGI(DOHEH\C2)TBP0K1?.Y3KXF>M/Z^/[3O:(^V+[ M14<\?._PK[ ?LH\Z"?OU9/S@N.+3CAO.RQX^)]A_/G/V?77G5:/U,N:,=T+* MY<['[2;7\*QWOX>];.(OGY+QXB$F0E7H(%FIAAUOI"!*-T@J5#]KP5&,.6I&H;TN?7V]3J+B_KFK-<[$J?O+, M(ZFNXM#5;MG>WJ#%3!5'LM.*4^#$FXILFH#=O/Y#>8]P.^A-!\U=N'Z#ZWLA M!3S)M;3T^:SU==J^H6F*9U2 CG=9V3,Z\%:KVK&IYPOANP\R[^79CT7DQO:7 M/.>,IJ/9MW1&B_JZ,'6;W^O:A>37YE;9T1F?*=6'"]V!F:;-G[BMT MQ?%]><4Q'/7'=P-GUON?!M<=1QON3J^]K&;?@;823@?"\A[.;Z+[82IOC*PDQO"H'8#GEL[93)L#@K;LFW9./:+.DV902U,T>WC M9S=(,X'Y.1P/IM_F=F.2"I=[_XF_ SD,3:?U]BUANTGMF:^+5L-']2=>4_6C MUZ)K]>S0;CCX/1OUA MEQ9=.L4MEF&6S6 =2B5YKM0I21AY7-S,B'LO+NN(\UDT3IX(O7>I_N%"JV;0 MKW#5(+ARP%4#./1Q_Y8-+,$-(=K+%[LBV$NU1G@J:XS/@<1R\KV!70?;5<)> M2[75GTJHM')#^-JG;%4741'DM%CX'J'Q,&0"\VE^0MB$*5!4K8*$D\6F!>S5 MSU%<66M;PS^4_X;_WZ,;$_:3_P]02P,$% @ E(L55^ H S@B"0 &E4 M H !E>#,Q+3$N:'1M[9SO3^,X&L??(_$_^"K="J04VC+,W+:E4FC+4HDK MW9)9[;PZN8G3^DCB8"= ]Z^_Y[$3FD*!L@WSYU_ M7W1V=]KG?;L'/PE^M9V!<]'OM _-3[A[F-UNGU[VOI$KY]M%_Z3BBRAIDGHM M3HC#0Z;(D-V1L0AI9)D/+'+%)/S)NO&=5I%?^+&1\JG5^BB8I;[4,T"-4>==[)W83= M)U4:\"E\)/ETEKRGT^U3R+P6_#D\I%_\RIY%X8V]5$Q$UR%"=Y8=6)2!(1ZL\J)G>Q7;*Z8OJ) MD!Z3QL!I0-UK\@G<5"+@WL/-W)BY7U_,L-&J/UST=-06"?[7JC.X5)] M/J I ^9C56UR/NZ?G53.Z@?U%:-_T^?L]P"- MRZ*$R7+0N>IW,0&!X4PN MSXASWB=7]OC4'O:OJI=_7O2_+:6VNPZF:M1JC8_OR_=OEH_IS/?T<&#M[O2$ MY,F,G--K'EK0"C+A_IPD,YHT-]GUU8WKV*<7?=+M7UQSN8/C;2:56T=@-0(:*S H?PWU#%M9YR;O\6F=&F0#S!8G4P]UM5$1FKU M4XJ+'47?!M_[,!=?YZM M:/3%"%O52Q]H^O\< 73>0L?:CIU2DR5F%K?\<:68.J4*N8A@<(YN8[$7<"\ M*;,*M)*&49X LY%(8#A&">41H=&HMT8 M_!,9LUT!4PW::#(O-DC)XI+%)8NW@\5'/P6+&?%Y!*!#<"[ 9@&((0_N4'J@6& 9P%@%M"7HPB-@7W(;F1Z$"S@G"%1K2H?%@&/HW4+ MDZ4! !:(+ ";NDREG7*IFA$_$'E'X/H=+C:X!H9)I4@+T M^"1@"#/" ,^3@*L9)L=D(0AF%,UX[7'E!D+!4[V6TE($AI:Q%"[S\&&?[ $< M/0:TS<,&@,'^O3NCT901&U0J;FO'GKDREQRCHI%!-19" M4,46"&Y@B@X52EM=D/$A*\U?*@VNL,*/V0X),/C1+%%=HOJ#4?VEL5'$>P.J MZQOE^![=WPY6]Y@")X!5^@E_0=/\87TE4BT,0[@T54_S/4OA1) ) S)FQ9G@ M@D@E& "A>LN5EK^0BD6+\G'_92&ABS)3A3W.)4<:\%-($0_'41H*548E]!K5,9I#&=HV2P4 ]<2D.F8,Z8X_=* MHN2'"FI/'C0W@M_$38HQ'_AMPC A"'+(S[Q2>Y= +X&^)4"?;"70<]VZA/-G MQ>L3KJ\O>]?">P9U@>O"+?>0VE2)B*+2IPJPCX%G1#F57DY4 #VG$Q[P9(YQ MCU5EXTJCX:NY:M:'I:2+^([Q0#]5W&=5BU,9 ]R5CMBX+DQ7[86.8T]9Q"0- M@/%PA\6X@F"2-$H,QV&EX3%H^I+D)K<7CGW]K4;\_[.5P MMQ;"$L5N*%0"AO&O'PH:$Q7JVBQ?1#>>(2A-/9X(:51QEDQ_!J;#D"<)8R]( M^HF@4DMFCX.?VLX>@!W$LT*%#C\Q. Y^+%XP83W(KAE&!^(Z#3[XQ*9*686QH&8,[A[-Q-&)M,BS0F =YUH MQWJ1@8.2AB4-WVI^1<<^'BCF8(L?%#+$79KF[HZ=3J&S2*-ND4:M<;2:)-U+ M;/CA2:51>:=!_WX5Z8X&QE&[/[Z\G3>T^3Q>4\_PN=#=4C,02O&77W:2CF(2K<>ZZG"83SE\/A9 MW-JD% MU$W2^-6<5*A[K7""8O'(Q<\KCES\7#A6\9F3$XL#NVBNAEF?GJSVI B=[@VS MJ%#?O*8MXLQCJ*4MZ82[+3*D(3.M,118[Z//2Z<01@V>;ZJ&CST3]'U!+ P04 " "4BQ57Z!U(H"() A50 "@ &5X M,S$M,BYH=&WMG&U/XSH6Q]\C\1V\E?8*I!;:PLSLM*52^L"E4K=PV\S5G5N['_VFX<'C:NN MU8'?!+\:=L_N=YN-4_,;4D^3Y$;KNO.=C.SO_>Y%P1-A5".5\BPB-@^8(@-V M3X8BH&'1?% D(R:Y5X""^-VX>6W).@FHG/"P1C!KN4X\FHSJOX?YCQH=#\+1RK6;UQB@:AV3?--W(W8C^B$O7Y!#Z2 M?#*-WM+I-7??T>6T0_Y6*I%+SGRW1H:QSTHW=,)(J=1L='I_$JO?^WUP4>AW M+^U"ZH6Q78K$K$;.9E%:66DLHD@$^K."*9WMD*21F'\LI,ND,=#RJ7-+SL%- M)7SN/B2FQDQZ99E^S]UHBIU0_OMRB*&R9O(STYS3E?:\0U?ZS,.F6N1JV+V\ M*#@S7JJ4[_Y5_GQ6KIZ=3*.@T&S?](C%I%"1C)THEFBX%SHG4'7IC\:I]N!X<'-]^&HV\6F+>O]2BTAGI5:(ZZ;+A@16Z$@KT3TB'SCED M=IB,N+<@T91&M5WV?G/_VE:KWR7M;K\_NK':O<'O%X5R05_?6)U.>OWJ5F16 MB8I^3EVI4/]=([! F7:L:T>,C*KD]I+G*C^8_9C M=?+^.U8X9J\Q_F[C8'>>=/S\?*<AN/>9.V'%#*VD890K MP&PH(IB.841Y2&BX('$(A&)$131B 4@QA!<%[0!TX]0G'G7@(TE$P".8GR;? MHPPAXEV9^"?2)CM"+C5 MH(_&BVR'Y"S.69RS>#]8?/9+L)@1CX< .@3G$FQ% #&4@6292>>A!X*21AR, M\=#Q8Q<, SPS "L"?3F*T!FP#]F-3/?])9P3)*I-]<,BX'*T7L1LL0^ !2(+ MP*:N4VFG'*JFQ//%O4IQ+=F$@ZBE4!O%#XWSX&HQ0UV5>K1TV;B0@S<';P[> M?0+O^9Z UUYATV]2W<6BGE#'H#6)KZ%>%)['X5*CJT>H9)J4 #T^]AG"C## M\]CG:HK9,5L @AE%,UZ[7#F^4/!4KZ6T%+ZAY4P*A[GXL$^. (XN ]JF80/ M8/>',Z7AA!$+5"KN:"A2.:.ERJD-F^E-KC"!J^S'3)@\*.6HSI']3NC^DMEIXBW/:K/ONZ4XT?T M>#]8W6$*G !6Z2?\)4W3A_6-2"UB&,*AL7I<[DD*1X*,&9 QJ9N$&):\+"82'1,Y*&EP2.]RTTA[.U;< MY51R; 4W@1#]=!"BI5AA7$*O40FG,9RA9;-0#%R+0*9CR1G%VR_V*4I^:*#V MY$%S(_A-W"0;\X&_Q@PS@B"'\LS-M7<.]!SH>P+T\5X"/=6M*SA_4KP^XOKV MLGVRJ&U<: M#5_-5;,^K&1=QG>,!_JIXD?2M%DL9P!WI2,VC@.WJ_9"Q[$G+&22^L!X2&$S M7$$P2QQ&AN.PTO 9:/J2SBZ 4W7JZS:,+4Q@Z&V;VL9MZ\ M,4C&:11?+TC,] DX54?C.79S[.;8W0_LNGN"W8[AV.;M,OV>1A+1UKWA]T4[L6EL$2Q M&P@5@6'\!XB,QD2%NC7+E]&-)PA*8Y='0AI5G&33GX'I(.!1Q-@SDGXLJ-22 MV>7@I[9S!& '\:Q0H<-O#(Z#'\L73-A=S*$MV"8O#AW]*LEQOHN84SG7S'NB MF?=E%]'R?8*17P[ !6@91_$M"("C:^*5@WU>Z^;/-9X8)X$N1C$=#'4/DF(EB:?\A( M4%LTH0$>SH4_9Q@?".DD^><2F2AF%LQ\L6"0>C\51B;3+,T)@'>;:,=VD8&3 MG(8Y#5]K?L/ KD\4<[;%3PH9XBY-[?# BB^KLV:,\-5*I!]L?MM1X__[(SKK^\E+_^MOZ?E]P/'J6?X59K M47O6I[4CG\;K1S[]#)]/U2DQ9ZT8=],#5_)YE+OUZ/EFY4B>?(;\*F[MTNE) M[2EGWN'!Y<-3ZG5FQVC$',DB*AU;;6_B.!#^CL1_F$.Z55?B)4#;VX44*4#8320SX+L2ID^R6 M^_4W3@@-M^5N>X*6[J:5(#CV^/',/..QXZC7UF^C3K&@7NM:'[]!_JG6T!KI M';66?./=VN:VVIWT/X%I?1KI5Z4Y]\(6U!4_!(NM: !C^@4,OB)>.2DH@TD% MFY>PH?Q7IX]MV885$0OFM4!65=I@+%LS5OE&DK#_CPJ$B$=!UB?TGG"/,@+O,V=Y,A27WZ_?WOS G7$HE M*#_?6P0[ZVP^,\.I[8SG"*ITZ5P.58-K0Q]K*[>_*95-I-*O+<%7J M]*9#T*C@02@B.XR$%#ST["IV77FOUK0C^U&JH*/ZZL$(IG8[^L?K87=H%0O- M1K6NUKJ=IZ';BXH1-O5"*@ZL^)YN6,/!L*=9P\FX6)C>&.:-AN*M26R%KA'' M]4[]#=Q4S6JO"J;>DU6AWKQ0=JIH)FC]R=32^[!/2MKVK7()DP%8USJ8FM'5 MQKI9F7P PH=<+&*(R)V+V+IMXETH#@L!WZ-/(HA02FC0S2:0 *8,Q?+MV!, M:D>"A0Q'1CP']#M[23R,^]C7B@6!!)Z%D"!.$91C$1'V) +4+'7*P+RXS"8^ ML6.QQ8*4RY-BAX04JSC,Q@L'9M3E7\JPI(+.UNA, LTBD?B1""+BA1!RR/!F MHTC)F[(<"G&X+\5DJZ>5)$%0K]AIL6 2,2,>#2J3.Y>N0;-CE4N&R &0L/5= MN-O#S+&T[DB'GCX:F5.M-QR_NRHII?CW5.OWT]^/'FXFF=AF'I@\NL0/$%!Z M)3-3U3)2\9^E@6WBIHK!/"89Q[=FN4GRW$_E;4"#TT(^;@+0/'+==8+4QACC2@YN(X2@MQ$3=(5>&TC>W-/PC& ,$E"_ M.'->;\B6C2?;6+(A7/UM\[PMHTQ6/_AA'-=+OMVI'S#-/:V.8,N,Z%0-M9BO MG9RXST"(Q@LB+O-POE\12<24MUY(&$[!Z0R<4ILPF6GXF%%( L<3-'%=G*\P M26#$17H'/C(Z2.;R.?.(9\MR%.BPF.AR_L9:D9OPG_M4Q!UOYU?9_R8WJ>;< M_L&Y_1R,Z,MLLE4L:-$"+06->I+N/DSGWD1J?7Q5:CQ:Q8?$'&?\NC$Q+>.F M9]T8NHD9_[AWH@0Z8J)ZBL8Y,^B"X5H,%Q6OG]8@&PY?2 J?FG%V(39/'N'Y M+R<#\<=C\C/"ZJY;)X>I%M2@SX5<5%V3/]DJ=X[3A95]S#+[YV.49\EOW+(Y>,SD&_HW84LL\4)O,YLZDHPQ37;$SN-<8+N#X3N,KC(G>?'-9.ICL5 M#!?\/J[XZ=:'>.)#3YSZYE9Y>;"^3Z_(]Q->DK7R_8079) Z M6:!YCL &HRKTR6<6Y/YQNK!.;K]@ZSL)U-R!]FWV#>+/ I+:@ M(1'KW&ER6'MV"^Y/"DB/(;;-(R]DWN)?-P^VC\!WC]EM#\_]GR?L\J!;]O"Z M/+;>QDJW$?7L&'D;/A WPLO&V^0\>ZS)S#G[[,'\RP<.YE]F#M_O.5^/6IX^ M)$Z13;\^,OM5%W&]1Y@T,^!TJ&VPUCZ.4A-DQNPVC,F*)NH83R M !C<&EA97)O;&]G;RYJ<&=02P$"% ,4 " "4BQ57EL!IS?H- !-?@ M$ @ %A_@ 8W9U+3(P,C,P-C,P+GAS9%!+ 0(4 Q0 ( M )2+%5>AX$P,RA0 #F 4 " 8D, 0!C=G4M,C R,S V M,S!?8V%L+GAM;%!+ 0(4 Q0 ( )2+%5=153]4E!T ^. 0 4 M " 84A 0!C=G4M,C R,S V,S!?9&5F+GAM;%!+ 0(4 Q0 ( )2+ M%5?=G0[E2D< !GK P 4 " 4L_ 0!C=G4M,C R,S V,S!? M;&%B+GAM;%!+ 0(4 Q0 ( )2+%5>3-9/B,C, %H) P 4 M " <>& 0!C=G4M,C R,S V,S!?<')E+GAM;%!+ 0(4 Q0 ( )2+%5?@ M* ,X(@D !I5 * " 2NZ 0!E>#,Q+3$N:'1M4$L! A0# M% @ E(L55^@=2* B"0 (54 H ( !=<,! &5X,S$M M,BYH=&U02P$"% ,4 " "4BQ57V+8WY[H% #F,@ "@ F@ &_S $ 97@S,BTQ+FAT;5!+!08 "@ * &L" "AT@$ ! end

$%RRD-TS0^"W KJ1=0 M]TI\#GW*$>,M9N226!$\=62"=OX-^9&O@E MP")L)^T(232WKP0D$&7C#47G5D_L/I*Y#_P:EVP.B/:&E S*"X"6#K\$S,EX M,!S/A@/QVVQR,QK8<_C'E7UCC_M#:_;;<#B?6>\@X$'@@T=\E^S[243RJ),1 MPQ,;C^C.%I]D$Y?<7K1 _$'N,0IY[Q&A]:F@_A1[ 4\^D<8@#2'^X!^1.^B' M3.Q32=H&-XD]^<1_Q.5VBIUV@E5DVN40HV]WD6T9ALT!!->-?O.C MF#$.JDU#64N/CXM.^="1VR2>8"@8,NF/< N2'KS#?9*PC2KZS%WV2ESM31A M$H7)U.U7$BR3#%T*K-/CM"KKT?>A6T>HKP63R$OGJ &FJIMME]*CXX>.>U-> M+K/TGJ;;FTZN(J"PN!X3/W;,A$)2DRBY8WB-B!LO3XA19;",^W!U4JE568^N MGSJEJX863"(O EB5])N24Y5T[$IH0967")VG<%,4G)6PG%F/I.5695 M4MR,U+:8/55WH/(:76>&V@Q5"6T2045S MB8F@KWM-J>9K=YTU:A-71QDFD7A#.=\L2K]*#X&\S$:YZGY7HXVN\U']GEA; M,4;12GRY4Q+&-*1Z>:.X=->Y:PVG62ZL2:3(?%OLPIO'F_ JB2FOT?4DK38Y M54(;15#A!JWJ6%953X^LGPT@2TL!)E$F5VQT1UB%A?7(^=@].0I136*DX"(- MY2C=J %N:81Y$R.FV,N*>)B$0U765E3:H+%L:6)6+J5);)3X4JW)Q.JJ!HUH MZ\42LV<:<]F*]MQO626#1K"Z&9K9%,G#=9FKQ,J9*2K;U62)/& D\&1N,RJ: M&-DMV75\+-=X;A*D6$B3S,=V77EP'GEWB+@COX_6)("!_0:Z8@Y8HV[7 52; M+'U%F$3?5)R9\+$[1,R'V,)MQPE7T6'#G1L%\_3IU.TZKFK3IZ\(D^C;/O3D MNW5<>77-KMVDKFSE8XMZC'68FM>13U%0*>:OI[M20L;_K;,S2,7WRF8.)%T> M>B#)>I=YRGC77M M5PN8RL7"O75D4G 49^XGBU@8U0 A4ZSKL%!-3Z%AHQJE]M9$M\,_%#D&6375SA!65XZ_3-\ 7D NT3'['7$6A0[DT47IU* M-1*]BU)VB?TA)=&>4ZQCC0 M"<8[Q;KNGH6H"X\:-LNW41TS%B.VMBN(8\I!5VF%KCNJ/KFETE9TL>[G/.J] MM"4S)?##/E,"L]_LZ?"WRNR=T"V.=Z')"M/W^ MF:*#ASJU#8@?A[%81TDFD;N-;[*(;ZGW'^4=DXK55F6MKA?J#B931RDFD2BS M@:NR=T(53,24E.]Z0\S!Q*D581)EX/*9V'PUP-'/D9\[Z*R*YIK5NS[2<3"A MM=1DU"!9RBS>3'M-V0U%(A9$N^THYRIFJ^IU??3C8$KU%&-V7\U?DE>GJQ;5 M[OK02 ,]M5Q)1G74/'#U17IUF*YJJ>O3)PVPKJ<\PRV@]"Z^.N0K&NGZ8$L# MO%>JS'#*D_O^E),H%=4TYR+.WA*O!7HQG,GX KHD42R\B*X.Q7KM:7)O\$34 M89HTW"CJ7Y>IUX F[0;/7-74E>$\BZ&$>&]5BKM65R^JK[W)HPK[5D*85O*G9-"W='9'^ MW#M8X(,B+Y[>M;0914X>O/BS DZAF?JM:!)JXES:7O*^AOB!NXD*V^AH_2U^Z>&KNNEQMA1DU5BR1/]V\<8!5%[;1U9'#=4Q3]-+8Y%Z0>WZ=;- M$8V\*L)D9:J2E0.4V=S4O,G*5/EACR"H&B[S-L8X4;.8LQT_B_<>$ M.Q[E(]T?VS=8YCN:.I,0GYJ?8H8\^R4RO9>#^O MW M.OQC.+X?PL_^Y,MX)&[<:/3@C)S=35]S7C2WG\'[<1=O?S*>3^W^W+)G,W$E MBCT>6#S9L#"X+J(!(W:J6M-MG9J.?19PCBD1+O&.8@EW ;R'_E<:P![.CQ MD>%'>6?E:^+,Y_ \.3.P&Y!N<;"D;BQ&L4IR<76^Q-8B 6,%$HVUCN!8 7P9 M8_KK7WZ^./_I%VZQZ+&6NPW.>GBUG!B>)?1A(=]-B[(-1&LE,7Y*M=UJQ-8R MFTN]V-VFM4<9L676RH0[)929ZW:7B+K*/M Q#3 M3AE9BM?^"XJ9\TX\B4CYWF1UK93-FPU,NQ_( ME,Z.KBZO*:KR916>.I?N5PY3VO3:(G)2/UJB3$C$C[!_+P8IKRE5;='+ENMJMV&,8HJ> M;Y%(0Y&G SI;O.NESV*=YS8)*D0UR;6G0+]2]DT<+Z,.UK*DG?)=KZ'68Z50 M6"-IN19WUT)2^8525X>6G?)=K\;6HZ506"-I42:HV5+&^*OMY+*$@"Q+)BI> M3*9)H>/=O#I]HJ".,>Y*@Y12D4W*.TOF:>/SR=>4;?9\E>F8[)17JBX>;S!YG6+YCJ,YG80!2."+72Q3'O+, M)ABI)/L9,1>4S&;DY18&$4L^%#!^#WU\>2;ZHU+QN4GA@BFPC9JXA6)\H'L) MT JH13<0K>GL/IHQV:",N+0BG)(WP1$G+]9*PK6DVBP!V+H\^]X2F%OAH,3T M]49;N2GJ\L6*-H=9=K A'FQE@!V\>L#L\AP^N$@7->)[7O.W"D5'5S.'6==K M1E_(2EKC$A.6>3<\O\(."CD6M^A2%O0@85Z-40 :F2R@M#C! 680RN[W7FF( MN8EU.\B:A+2J1![K\EQ^>O%]-+ #P:PG"4C.X(%LWX.I1H*(&==8/-E&^ODZ MDM!"6R**YJ M)Q8R:?0A$C,92/)46,N7TL9?0 FR)7 [CH3-(58+YLH< 'PE M5 4]ZR1D1$Z[N"!0"45KN[JLDA$)=M"^#VX M%0;:%" M<-HB"D CH'K :3V#NW92I&T[[R+5Z7F-@I7\DC6X-IW&K;!A.=,4 M;?Z7EBW6Z-(-E/<^BN[Q%*_=V]E?;C.L92H?+/N0E3[=<>(SU M#B< K'"#(/J.Q!C , #$=Y8PBV([Z"3QU3M1HCY%TC[2C25L'PBY8] /R1IY M4[Q"!.R*B9M<.1C@GQ@Q/>GV:[GK,5CA49CB%W4?JCZ31FTU9!KY8W V\V?L M/>$H^AS%'HJ:[7KL=UQC*%?[=!I-VO9WLFK!SNW1K:SL[?E?2^A&#O<$I^LPI7<>Y0ST%M\&H-CG^5ZR;A>66T"(4UBJ"87FB=2LQ7,B[ (GE9Z$D MTRB0E\GB7&1>D+YE$_MG;%A*)MZ*B4MN^4@T/U"]DU*_A8Z\M0Z^NDG< 6UV MGK[59'S7JQ^L3J-"N:8R:N1S>[?8>2K7@F$H5/D6S:(ZN:O;4.=Y73M&4"O= M,YA[,9]W)/:CIKI^14J;_&\K[ZU:P#4-#\T3,BUU_4:5%OG?5MU;I-]>!)A) M04CAQ60U5;+37-?O86G)$ J5:-#H?V=-&@=B53E83FF8;DHM%I)$HU'EL#.W MPE^XT"SVVR_$0^42TG1RO[T)?V?0F=F4+\>?G8\P:]^XJ7V_9J?X^R%CRLO= MJNIU/0ZLNMFSY%7@2BV8Y,9+$(NW)^])W7;5K@=K1V$OKPN#/&\THZR[VBXN?_O4\]ZTGB(F'@D\' M)Z^.#RP8.,CU@H=/![>30WO2&PP.+!*"P 4^"N"G@P =_.M___N_+/K/3_]S M>&A=>M!W/UH7R#DO3CX Z_!0H=Q?8> B?#L>K,I]#,,%^7AT]/7KUU@)?$?Z3 MO'+07*W 20C"B*Q*.WX^3O])LO_D>\&?']E_[@&!%M570#X^$^_3 :LWK?;K MV2N$'XY.CX]/CGZ[OIHXCW .#KV Z8F5CY,,QG%GL_Y3H5:W.P@,0(T;M$?OMJ(>H MZ5*@<:Y'#&>?#IRGB)9]>G;\]NR8E?R/7)IPN: 63#QF@ ?6T;:U!BX,"'3I M'P3YG@M"Z)X#GVEM\@AA2*205 OH".\-P# ('V'H.<#?&7QE:>U)PMHOG-,: MR6@V6K ^AUKJ5A2(2^I&@LDCU=XC\EW:-?;_$WGA\@+./,<+=Q5(6G W\O4 M>;STT=>="2H5U C^01!"[,TOO8#:LP?\=8T2O/*,C> ;PR<81#2M@QX"C]FG M!!<_0U-\AQ@XH4T(;?EVX%YYX-[S:450@6%IUH8XI2J@$Y&EE,)"ND9JGX3( M^?.0C7DNF_A0FP8*M$ER-8+L$G@XGO1(L)32-<0*_1/>0$SEFZ,@[IZD!/&S M-(+I M[+^MG-)(W4>0W^0+@7D9"*AF5MICIQ(SBN(#4V6?WY1 W:P10\2RNO M2-E0'S:?>V'<5]->B'5+=/5#5T$J79@T9\NCT@T=&A6 JA?0TB@U!?>^%*4L M6^LCEA)*]0*:';V4P'%2MSF2*>%2RMOLJ*:$BY.ZM1%.D419QL9&.R4\Y80- MCCA*"*J2MMRS7L 0>#X9 LS6@4_RN4G=@IJQ=N33-1 ==1+=W&!(:)VLB8%@ M2=(.]<(CX.$!PX=XJ;[,.K I!4"[KW*O>PW#1^2FN&4-J#, +8U,-7E6+Z"9 M/M=YA&[D0[K>%0P[:E1M55;K8VY-_6]35%.SQ 4*DKV'U2C+-B<\0HUZ-%LU M!#4RMBVNS9&\_\S^A)<(CR$)L>?$6RXTZ2"0;Y,-R"2:SP'V_H*N31+XJH:I M"4X+/?"J4F([U 2]<#F&/D,Y1:,HC(]1:-(QB4C<\>7$LK\"[%*H>.(]7U,S M?R3]P(7N+U$ SXZ9PK;ID;L$U*9MUNPF:I;2"'([7&N&*O,".G!^#_'9"?WB M=#713+/Z7J$'NY1W$M*5U+0 M.71 1"#;VD4X/*3SC_D0A!&FW]#4! X"RF84MXQ7:J:S1Q(TU';QE*J" >>9 M./V)"4];Q@*R!@3]Y2C"53/T+X#T@.]$<>NJV0-V#Z2U%4[M>;-Z$0WMMU$# MBZ<+H]D5"AYBJV,KG/ZSXT>L,[P-P)R:(QLYV/<#0B)VN-5#A$XX,*Q);6OU M-;8&K,F8*$L+.Z(UT:EE;J;WB%A7=>T%WCR:QRM4VNO%G=4M;;IXB()#AQ'I M^ZPK3*,M4L220"PDPE1E7@3"L<7)G/) M84XP;V*(C[0([$3W\-#U*% 2'_6E%6UJ:56*%X1'-.E1FN:HLH#V<:\J.W31 M''@U09=S=X XKNEP'D]L:\+-9VT?*_#]>@CC#.WC"E!HUX66Y>G4)N$,1'ZX MM5%FV?.8Z==>LO-W13_F<,/G$+)9>X:<%:CHO19Z(4N;NAZ>6(?,3S%>^M _ MTY2MX5!V1\N!/*7(5ILO#.5H>-$?3OH7[*_)Z&IP84_IAW/[RA[V^M;DYWY_ M.K&^H]-=.NVE57RO4:)J'[6<>&>[BF=]EZNE8W$ESFPY45^KB3J9TO]=]X=4 MS-&E-;KIC^WI@":@0@_MVXL!3?-]YLF9">DC)R>9SUQ)$2ZW;9(URAD@]W'+ MC,CA P"+(S:8'T$_)-DW\? >M_7TB[L5>*I).*!_K@2ELU_HQ]7>I8FKTA[I M11U/6!40I^F*:->&9.,,=]J=*8X921_ZT:%S(VIZ?3^NC?;#\(']D2&;8327 MJC)5&Q)*L*E;"N3 0IBN63X=G!ROL?B(6O2G@Q!'%2)W3%#/!X3Y4,:[HL^> MBG65LS1*6^6$3T937OL52<'N\G%WW 5X?WK!-5'*= MKE-*9-#DO-1WKQNG([]HXJA:8.I(#31/RZ^W[:0JM3RNH>/JM'?O#=:P #)/ MO^^U#0*I)\8EE31S"OCBA8_9WN]J>YUM_M%_W2EXYO=,6Q1V=U+5@CN@4GG6 MM;50/++U#3*(A*-9*H]@?-E,9CX_%7"-FVI]QHB0&XQFZXM"9;UO)#)?ZR6P MW#F5MF4']&EQ#\D-6I^=JKMSJC[:-\>;U*E?C& -HI3??*;JR,&=9>DB<774 ME!R87%&CXS-6D=A\>KB@N7,Q75S$SKET;B-M.86$YG-0"9BG_S?Z])\92#87 M\8*(&LYZ7_(+_6?:RBEN+P!X&6M@B *V@J-:]&.;2P07<=E:I?M@ M%RT+S[.QMWIMC$J2-H5S.FH()RV<#/O"+0>*@7@$J9MWX(#NS91QC0KD=Z5&),P MI6VWXPOT'AZ99$]T:OH AQ%32QJOAFS<45$-G2Q0%R"-[9\?CHJR$J1_*G) M(4T>C"SGG_9F&_^TR<_VN/_SZ.JB/Y[\$RP0^='J_]_M8/J[]=U%_W+0&TR_ M?W%<>W%<^[8=UY+&M;YLKNB\5IUM3QS81#(;=+):@"GSG>(DU^S*)M0U4A& M>_JJ;ZW? #%[X=>V*WGMN+[V:X;JPSX-\!S!T$/++P0^#)"A-E::%2-LR,7P+R]LC&[!1E -]LXDI%4 MG?ZNJLZ',C&]60;_6V-?0E1+N.I MD8+G-I:].F4VG88R6NYD2VL?Q2*60/!2S0Z'&<[JK;#P+T+:3RQ$HZ3>:-@&E4O?5!M2%XQF!-@>_^E;=9.O?5\)E M(O%HUN9CMX7A-MK$]Y5HJ4P\IM^9>7Q3?GLE=USS=IOCFIX]^=FZO!I]R8<3 M:"MF@L)[+3F9WK&('!YAF_L1AO3#8#CMCP?7UN5@: ][ _MJ0Y[64 M><\FA M?5]$.^[_VA_>]NG_>Z//PP$+V]!F. KYPRXYN!^*<*F=3,=V;VK9DPF+JF$/ M+ZRK@7T^N*+0^^WIM_P$S";.D^.R$5"U3D?CWUM#)'L()H?OI(AO,AWU_GUX M;B=M[_J&MD*[5>[+;\7D )X6 5[:@['UJWUUVV^1TW*$R6IT9V5ZJ=+ZUDU_ MS+1W/1HFA\JM09F1RB-T5$U_8O(ZJG6VISU_UQ M>VVT\ 9-#M3;(JBK/K7]-ON+U?6):D 5PT9L4E/[MQ9AJ;Q+DX-9&B^8N0^F MR>#,.E_6(0^&G_MTI&M5G!L?9<5UM[L0OJ2S2;\T]*P4C%: M6]\E);0:14KU79L<^M*@(QF\VY>$]PA.#G9I*%J-Y>T#5'L-)P>W-#;QAO;V MT?/>S,GA+0U8ZY&^"P.0/J"3 UL:RS@#?_O(*Y[:R2$M#7!L'M ^K,KW=W+ M2@-=,O)VP77MAW=RP$M#GWCL2 NU5J6VV,ZZ>UHGIY'2:#I]A-8L V.%,1IK MD<"Q0OICBNF?_WA_>O+N1V+AI%K+W01GW2\M)X5G,7U8('!72?$:HC6/,7Y< M*5N3;^:&:BFJ5:".TAY0>6M+GE//_AT'E\2+4YS+&)].5;H*6W8J.M'C[TEP MN$$J_;0FE'ZXN\'(C9QPA"<0/WD.Y+AVTJ35*;5YXB8ITK-2UL[#/-;4O;H0/#[T!7Z<>G,6R68VQ2 @,W8Y M[C-"KFP>E.96RKP74Z,Z G&':D,YE-VY4,RNYW),'49J<6GNE9DNZ#1R@M8- MY89>M,DP8^B.GB"FHO!G?9FXO"QW)V_U^/;4:W.HCC3%;?6/G&K$=WB"J MLD%0D[>*?'>GQWM-'E1QOR%]ASYY-=Z=W]S, M/U,[6ZXXU=!IW&/(#")QGYPA/&?O-HWN?>]A]2XXBU&?-?X)_9;,**^)EF6; M\TW6H;4+V%X"R89_4^4;(F=Q9V$ (<7()0LUINN1]NZ MOF'[:-CX*MDPZ :FDH [6I&NN^5F=$W"!::V]>7.NDEN7YRTV,&D-?R]K4=5 M00H=2X<)J6SK\--MZB/'?#)<1M-P\!?(KSQ?E=\$2V0/P@[()-H/@?8^PNZ-DE4 M)C;ZDF?G!JQ8<1DN"R; J)*PM7ZZS2(L/55JK$!G R'])8/(](M6("V/6&0% MDS:H5.]$NX]8?[[PT1+"=,.I^HJ?[<>5I[L6\0*>BI'TC.P-***P:FV\(DTW M2%>=;C,"R0(0ME.=,0O;ELRO>*NU3=*,7^PFSN3K*\"I;.*5JS"3OCB*K1)9 M]4J)4&T&+3$Y:&4'EY)L>LZ?532OQ)6YY\UMT&7R^7+#E!IZGIR\ASD!ON!A MW31M*:FFP(UJ+:?JV<\"=N-Z1+7'%Z5$U2I&U_/3V[!87S >Q5M[-NX>I#,9 MX-.P\J7Q7_I 77*)\,1[OJ9CVR/I,QB_1 $\.V9F)]Q1*%V_K+APME[_ M$PND^"R< +1"9*$U1&L\N4VVV]8HDTT**\$9;TBPS0?B/5OS&*X5J\UB@*VS MXQ\LAEG[Y@+'8#$&0>*F>[Y<)[D!2_95+*'"?D(39>O>0I#*0'A"*&\;[%R% M,5L%S1D3=W>@(3Z,WQ%((+,;ML(]@$(R U;]31&$1'*:-Y/=6NJU9(%[XX-@ M".927^9V:M.SDU#-+.I 7O.V'/;?BDS>X-!E:8;NA!2FU_* _!7)->V(M-H? M%)T3.&(;-P05D-Y2#@A=I=3D-9]-E\^)/H(KY.V43JC+\^S[XO:&2WB ML^XA"IX@6/Y22#U/OP,Q8^"M)"9=^F0;:@(^XZ[]NPO%U[ MS^Z O%AL _KC+B3W=1KP:ZK'8'O?&L5M_+3&T);\+ZOS:F%]MN5I4\<]?S M/!7G&I3:C;92 '5^''U3@F*\N &]N &]N &]N &]N ']S1TX7MR 7MR 7MR M]L<-J#+R]&KJK>KC0S.)\WS+CB!JPIOG!?)-7AIN9]ZPU45A;>>#+Q>%7RX* M&SR _CTN"FNYFZIIE&W_;JIP!-7GB!%',"(D@NY%A)/08QY*+EF2JNN'JWF" M@/"MR]1U,[F][9K=5&&\P7%_^YEM):U5^TDXZ M*>@<.B B\8(,X? PA'@^!.QALM&,IB9P$+"GRN(%V2OAQ?O2H[UVF+\"']^B MS^2QSD[B;T]_2$(?4L&LIQA0'.Z2RO:#!5)!V'NNJ7AQ&:OO%XF$%M@0D15' MRW)2(;-"[Q,QLU"+9"6L%<32IC_0%-Z&P+HO[:_X/@<^"Y,Z>80P_(Q1M*"B ME5\I[H'D1%;AK&[WDO7TTVOT(V8J#5?05W^L1Q/9XKM6(7KV MQU290=L+9MZ.6=?DFKR;UKH!&+J_EDTWQW!!9:'3\SF;O&UA!S4+TG1E?9L6 MBW:5T[A>O4_">#H^FNW2\NN4HFM+=7>^:TMIW@GE!;P/UPM%!7=>3H8[3<_! MM331%DFIL.G9:?0^/*6VP+8/>%'WZ$]LO3Z&A#W0X3U!?SF*<'*B< -Q#\WG M*(BW9KX T@.^$\7Q]-3> 7A?W#RX3*/JA0Q5O.H7Q]>+DR3["7@#X0\6BC!= MTC.0%IV!LS<%:"%T_4]Q6E\!L9P54J.> @"8O9!"J&*SW2[/45C6R_+I=J^M MQ'>^3(RGYP-2(PB_:E'&+.?52.7'RZ^G.^-7[NONE&$?S9+C(>&:79#% )>6 MN@05#]$DZC!H>K<)4>;^4)56SQ)&GLW+DQ>,>_.5X>NF+?!^E6B MY.!;Y(3)2ZWKZ$Y@ZD@--$_+6PO3=8PP+(//V^US8(#&&8 MS/ZOA!%QQ[$C_65W.AD&7;+Y841#%N E6)N29; M9K%4J7 %HL0$:?,8+&*]\/R([6;4;EB%C&:15K=I50K#G5\9QEUMSHSA2J1V M)<+$1&D+ZE,(&)"/C;'Q3HCBF+95<<:0K-0@=Q"1Q[ZVX#BU9&F(=6UL[T[< M#H8@-@!M<68X,J1]5DF4VB; *^B;:/)BX7AN"RUXG(O):H38FB0D%,L.;N0Y]1RI294OYZI* 2:=K[5'FLEG;PT3V^%!W#D( MXL==H"LZ'"JFTN0MJMP@D!"Y<3U=G3%HKT>?.N..MLWL/$BIDT!E:CWCBW(' M)!+1I-%D=RI,'C5VHLO0^PMC^(3\)[JFSF.6/[J9/ C6+^# [:FISM)@\E=J9 MN@Z7W$FXIU' O]!'4Q42W6DZ@Y-:.A(BYBITVUY*H-#I5R17Z"J1+M?AV@K- M(^8I]'4;"F67R114NDZFZT)B?:46,//4^J91M5YZF,0X@>\SH,*XPY5I=;VN M4D/! N \+;]K5,L32 KFVG0'6%,:E4E^H&EI'<^8&U6GD3%A= MY5UN'4JT?DU5-H_F(KWGDE#H'??,'&M%(GS<3:IC;8<:OP+LL8YM#$+)HSGE ME.9WSUSHW(F="3S(%N)5:?7LC' 5R]>_N3LBNU%@9-^_*TV&'B;=8*H:AE(: M]"R?\.Y$TVZ[H $@.6#^V8:V3=VJ'O@:/+,![QQAC+ZR,R^PH+^$RWJN/;Q2 M[DXU;755@;S:P@E2+!B/8T/VAZD0,(F@IKH_O,ZQ5\R)A>"V1)/:8?]YX>'D M10K:D9S4:WZ%S'O%G;(\W+E'D_M--C4@-S8B6.4&3I-LIM@/15>"YLX/FM1F MNIIBS3.-7]]#R56>,6.W6L&23'NC7Y>X9),>Z-[)3EX-&Q["U/4Y]CN'Q%[ M$:-_[X4N$/8T^:1[HW(!>N[9C!GSTCCP\V2!(7!'P>8J2S#M42UA/^C;2BCN M09 9K Z"$+(@60QQ'+[,O8'8H3_0OEB55U$9>\RL7"P>MQ^TK5%0\#!-[_:N MP9Y#@./G,;VE=/Q3!1-6I6K+S_WBJ02<2X'6C0&2@>Q% M&%?/&S.TJJ!>!OGNKN#Q5;247J_:*&*P"7&D-\E;,G).IM?.9S[155 M^Q/=W5?*OU0YM?E:2CB1$,C1@$$>%&7( M&6!I6 EI3DW1/E1)D'%7K0B37#;;(\]D=\Z6"#;4V7,"?$C&\ D&$:33*YG+ M9V5R79%"5)L44A.AZNJ6@2?I^8WV@8I MVW'8'APU"@=Z3VP EC4#7@YM49NW; MB.?@[R ;-)Y936EWM^=\ZT]Y._8IR MFQ3+K20:K:SVG&$SDS%SO9+696NLDN1&S_!V)&K/YG7;DVGH;"[;@RHAE[Y; M+\YHR@ROHC6ANG)TTUO*;N#F=@SYU_6KTAD^8G%0%A9Q9*(6*5D70\%2D:-Q'B;[GN$ M"I5$Q"HEZSP:Z)8:S0/FKPU;T:DL*%9%PLYCC6VKUP)DGF:;#3:6U7Z)(JRB MV'6ZSJ,T;:G7 F*>6K>.SB16J_>D9*_K='H^FS96='Y(D%AS1,8EL]*MQ8I M$"MB2*P@#\5"&98D.6%/E:&9Q?!89\<_6 R2]15V_H99H@"**UZ>36!(58+# MQS&*DKUX.W#S:KSRP#WSSO$2A0HU][KJP;=95J,5QIIAM= O::562'\>CVZI M"N(O0> 6]6;YZ^H3%7:AI,1^U%QUWA1EONK;DWZUATY;>)-+FU/PK KZ+>=5 MPJG]6\?0V8.*7ABW).9021=3E'L8.)ZJ*.^*HK!7%0?3Z_YP.K'LX07]/)P. MAI_[P]Y )%O:J['_W%/VZ3?_#U!+ P04 " "4BQ57W9T.Y4I' 9ZP, M% &-V=2TR,#(S,#8S,%]L86(N>&ULY7W[<^0VDN;O%W'_ \YS,6='2'8_ M=NRU9V8O2E*IMV;4*FU);>^"7P <@ 282?_G?+\L4/6%2)'GVUZ_>?OOF*X2S>1XGV<-?O_IT>SJZ M/9],OD)%&65QE.89_NM76?[5__ZW__[?$/V_O_R/TU-TF> T_@E=Y//32;;( M_XRNHR7^"7W &291F9,_HY^C=,U^R2^3%!-TGB]7*2XQ?2!>_!/ZT[=O?XS0 MZ:E#N3_C+,[)I]FD*?>Q+%?%3]]]]_S\_&V6/T7/.?EOV'NKUSZ__S8G#]^]>_/F M[7?_^?'J=OZ(E]%IDK%ZF^.O:BU6BDKO[8\__O@=?UJ+2I(O]R2MW_'^NQI. M4S)]FACD6TB*Y*>"P[O*YU')F]WZ&J258/\ZK<5.V4^G;]^=OG_[[4L1?U57 M/J]!DJ=XAA>(F_E3N5E1*A4)8\)7U6^/!"_48%)"OF/ZWV7X(2IQS%[T(WO1 MV^_9B_Y0_7P5W>/T*\0D*3^T=OW8*:M2^LXWV!M,DCP>9[NA[FL'@D_[#BGW M,*"M[]V$N[R,TIW MS6]P[[&N]7X5L]_3=-Q'N]6TRW-H\ N9&X!LF*,(S _ U\8JC*;DK/YYUR4S::YT2VG@+WKW_#J=E4?]RRG[AE5#]\!N;&_$29^5Y&A7%='%;YO//HY>D MJ-_#C?SK5P[RW_4-8)HC4EL1D;FE*BJ)[^8YGM^4+RJ90M 8TA$CN,C79(X'M7';&M=:K1 N4ZK!'#:K?N!C* M%X@+HE^9Z/_]RW?;HG?ATOQIS?GQYOOW;SA'Z ^_?DYXA9E$?S' !RTAAD@O.!P=P?2JTQ9&01[\*C>,P8N;*!YV@+S:8@=9< M4$N!8((16I\'LZ.QX'!SS/CW=5)NV.J0KC.SLG"99]0Z0>8:$WSE?*-2",ZL M(2C[)!.B:"M[H*EG;XI11,L\X[.AD2\6'9_<<8+?YI%1 0RG7%#V^;7504SI M-,E0I0:';3-<1DF&XW%$LB1[4+M)-F&?_#(#;A-++0F&449XLMLDA%$M?60& M%:1LL8?^:\L<^H_?;D@>K^?EE-QB\I3,L<)#THOY8(L-)..)3B8X0RS ^MRH M1%&449]:2!]SJ3W")*<^/'WCFF#MJDHIY6M)98!8KZ<4(L';W8Q+FEW:DL== M2_-7;0KJA^N7T0H9K\VM@M=I[+8 G*96H%(VM) [;C/_/2E+.K>,LOAVO5JE MF_-'.N=\C++H@2_ M$WOJ.>+#H/,J"GBI 2"-D.0]JE4Z8JI@FLCKHZV^G!< MT[MD2;%.%WK(-:<$H.Q]HGI=!DGPEJ M7?8WTT8Y.;!'LS\I*X@$Q],G3"AVM0_D(.^5@#;8'=KIA.&0S8)0HMA6'N54 M 3$-0"/=%MZHO,F3K)QD0YBE5 I$+X,!&HXI-" 230_3Q+:H1%P-T4D6%NEF M^ EG:SS#2^H T 'X!I-%3I8L.FMZGR8//"9K_++"[&--/;K?TE^+131GSWC, MS$54FF;B0[_$[T[3,2JHNT-UR#> Z31',4O>$>,O.4'-:U#K/6C[HA-4OPIM M/8WVVTX0?Q]B+X3B9DRR>;[$S;>O.D32T-.,&CZ[C0/T=A\PB(,AM!UCGYU" M S4JJ-:!0K#SO"A9ITLUD1$&.;]?(C4PNU\B>T)@B*-#)G^)+$HQ+*6@(B)P M2HM[$!'TZ2B+1S$=0).B))3+3YB-JUEA(=# ,KQ&3.QB7B>"8D@!8$BY"^H^ M8:LR3JK3%2G?4>J6@^J"X/!Y]!R1^(Z^P#"/]F2\?CI7P>M\*F\+@.&3"I6T MA\UD$!,ZYJ>IRYPL<$(]O59(FC;6QD7!UY:U&_!ZK]HL'9P7SA#[)&F44#M* M$%9TC@NS++)^U[ 6/AD%@U/)!9TIPA0T=SYE25G,;C\-X5!?)R"7U/ -G.HJ M0.66$J658UP+?4WUBF_@$.XR2@@_37JV^8BC8DWX6O0L*A)33+-5RR?I'$UH MT\ZB H9X;CC[U&N)(BX+9D%MCCCCMI%@1 M/AF\BW%M^@[1!\/='4!+)TJJ(M@F'=.%3."K)*.FGA,<)[2#SI,T*3>&Z5XO M[I.8-M!M$NIDP1#. K!/KBMV$)OP+"#'W!TYBS+NW>)8NQ\BB_C: =&!J_<\ M^L^#M[4!5+]]F1@2?Q(?3(X#8F !X-G,D3]?VZ MAEBV+8PZGL,X[/![41EZ!3"L\\]%_B^G&3LF!-;8QF\%)6@SUE&#[0]M"OK,4FG2;D4HF+'G3[$ M>^Z>=V9#RWKPROU\); 4AM M+*'2M3(3/&X[7R:DX)-&E*;&$Z(Z06_Q-4:@35R-4@I$VQNA27$T3!BUI(_+ M@EM,:S]VH8%6TA)NKT$BM7++C+&4RC]+N)ZDC;B!:&OICDB7+]5(Y%"B>^VIP):RZ MT3L/032\"I$4$")DX*S9?XY($MVG>&8^&BB+^5ROZT"V5^M]F>"4L #K,Z,6 M0S- )]MN2++DP(W?#R0IG]S00&Q3HR<"AAEJ7'+&*'826; "RJAQSMHEXV=' M\FR6%)_/-F]V]0!/')9SI@9-0*/5Z;S M9P9Q,*2R8W08H YX4&U_>JV+,E]B(AEFCJ.V:7FEF9L)':J95>#0S0FG1+E* M"RFX%W1_YF/TSYS4Z%2'1'1"WA;P6H#-*EZ2"$X6(RPM-X[X8;5^A^G3JD+& MUS:M%EZ]02L)!&]B$RIM"Q_](VO])M-G5H6,[W;6?FJ5!$"UL^US:]/.1__@ MVB R?G)52GEO:_UG5X4(K/:V?GK=MOCQ/[Y2UX'Z#?-R5!2XU.=E5HMY:W4# MR*;9%3(PVET/3+&&X*)(R/KI[9?44FMG;POY[NLRP'Y7WTK :'$=+&U'9Y)P MMB)&\SD[EEG,\!PG3VSOW[A(U(M[37MC =W)@*.1#1X!27IQ*'&WE/8T= MR9/=46@+>1\[)(#2V-%(!&]](RS]V,&R9!UE["CP_-N'_.F[&"=BV*!_;$<+ M^@\ZMSUA,KHO^*S5LT;QW$?K:V&QAI<>!F]S'2+9-7CBB_E*RG=#7^1S'J?- MMC05%G0?^VIF%:BZE=O/0#2R I 4$U^)\(UCSPT\HB^.V_+#0U8:>G1DP/%$PTX M_9*DD0_+E-M'G*;L2O8HLP\H*F'?;-$#[O-%E@3%&"T\+6>X!JI4X-!F_,2\ M<^HF.1K;D@])'@FVB3^-,%@*]1$ZLHBK\4MV C%)G(MM[A8R6"M)^F:/!FJ? M-STQ4(Q18]-RI3JTO+V)*2A)QEGL1)%&+@Q!>C#5]*B$ )*CB\QH=DAB7 M23&/4H'EDO[6#XRTR/HFB!9NGR22("BBZ-!IR2(4:LYPE:"$^0>.B!M=6I)A MR")!55.E$0-(E#XV&TV8?!"2G*\)Z:#6SSAZ46\?92U@F^^S&CD01+& DS_2 M<_$.40+-0..L3,K-99+BZ[4B8$,MXHL;.G U)_K/07!! TI*^LW%$)-#0C!( MR]=?";*298C6FM,7\\L -<@N"[HR@)B@!*9APU:6)^P.PHAS?F0HG60Q?OD[ MWFCMDN3\,4,,@JH2Z6B&)Q*ZW)JN\%>YPSL*8R>8\C_4>BD7++ZF<3.A2RZ@"B& N M.#4TZZB>B)@4E+-SRKP Q$H(PKA1'-.**JK_N4HR_%9KOU+6+[L,<+N<4@@" M8I(>G88_E>1)_0=B.NR<*Q#2O!M@ZKOPI'GG2IIWH$GS;A?2W#WG0$CS?H"I M[\.3YKTK:=Z#)LW[G4C#SMV&I,TY_7-*[O)G57"V5C((962H2L)LQ>#11<)F M(PM38/X,4PE)$^Y83""'?S^REF,U&.> MZ0,$9!%?+:T#5[=V_SF(%M> DBYNSGFL&9,+M!O_4N*L4 _?K6?>9O8^G&8B MKQ^ :-T^&FF:KI][;LU?2%+2-Y_GR^4ZJ[[RJ.(&-7*^6MD(LVYQI1"(UC11J 2BD!:\ADB2/$0ZZ4!:22440W+K%L_7='[4J6IQ*8MXFY,TX)H9J?<:[%-**5\D,$"L>: 0 4$%/:X^&ZYS5(DB(1LB.U4'K,*YVY:*HE@UQ(&$[93W8G8"'8$[ @\4)>(#H!#RX.@$/P9R ^K4B10@=EZ;W M:?(0:9(3&J5]D\( N<\/A2@HJNCQ:<>,1@5M=7QGM.0ISB;9(B=+_OY+^H?" M2HV@,4SK]S+10K5;MA 5ATL]Y MNL[*B/"SY$0U,FGD_#)' [/+F)X0(*:HD6D8T@@C(1WF@+;('M$X66S 4Z: M,8M[/JYM!-T[M:V4!<09(T#=&>XJY\?6-Q9:@8Y8EIC=%Y$\X8NHC"IL6GMU MXKX/59I ]T]3JF0!4<@(4'M^LM%AJ6*BFE/!4L:0<^IJ/>2&*/&>E/_$,1)$ M.7=,(P*('BIW#R1_+A^K_*Q:VS32?KEAA-SEB%(4$%=,^#2.: %+=X](DB"(9(6G MOX>DT4"UBF?63"F'27L=QT%,2KS4GG:PJ_ABD"OXFD1!L<@39YQ17ZRZN MN2)BFB&S&;63V^M=O(Z09\]8 ;#G&++UD>5L!0 R04>E2Y'%!Q"6#M/]9E'TFZU4YW]R0?(XQB[(J MFM'*MO_FJ.V7,X-,ZK+)2140SX;@U3!P6P1JE7'2FK%";N:QH'&6S2V??[Y] MC&@%3M=EP690"DR_"VY4\OQYP<& WD<&@P8@ZCG U'UPX)J(JYX@H8Q:VH'6 M9\4V"R".SS8SO,"$G3NXPR_E&7W19\,*PT'7]^K-V9S^8LZJ"(*$0]'JEGH% M:A> [EF,6%4$^I45@G@IA[V_?!$5]]S.=7'Z$$4KP4R MEZ.BP&5A86!?R"?7U #;K.I*@.&/$I84;79[.[Z[!<*"RE-T(H,DZY\3&K@R M-7J"P!BB1J>[VD7H_!2<,>=1\:@Q2SSRR8GZX5.\@N*EX'1$9[QZ?:7I'P\7Q=EOL2$SZW60<])T^OLYVY*9W*TJX'AH3M6.8NA MT$01=YR"\VZ2L1NE<[*AR+6=KBWB=U23P74'K^US,-Q0@)*'HDH$0///*7?O MHA?<&D>UABEE_1+" +?+#(4@((KHT?6Y,L.+=18S 91P-50RO>#,N2%X%27Q M^&6%LP*/LIA')G26D!KKG31]LFJ *6V..:B!89P[5D7.)*:)L% M4)3%*.=1 M*/-J#P#(5.;"O8 LL_(I''/*O(S2*]>=(5TN!58(ZNX+!>?$=(79-5S9PQ6. M"CQ+'A[+Z>(3[0$,GL98BXY/SCC!;W/(J !F-')!*06^U3HH94J(,*W3?'&Z MIO\ ,@+=D)RB+#N?:K.)W%K2#[TY_>GDP3', *4]X M0H5/=+B6A[%K=<$^)A,<-PZD&&;U]#(I^"27'7B;6GII,,2R0I0B!"H%YKZ+ M\2HXFS[D>?R_C5M J.+K)'U MZO:8X';<'94@&':8T*GC^H'X,0*S<2T08NVD7S1!7"T9ETE ED=7272?I$F9 MX((Z1SR$\C%/8TP*YBB5&TOHA;NZ3[(,-:I-)U==,&/,0,#2Y2N3T=GD:G(W M&=^BT?4%NOWWT6S\[].KB_'L]H]_^-=W;W_X,QK_QZ?)W3\@<=4M,,BD$(B/ M#B%">FF(G!L6+-12#!\Q5(V:/&7:/0&IA2!PR(E30B,DWGS&"T^B*@A898V>XP.3) M,@#IQ?U.96;0W8E,+0N&0A: DJO4B*.BB3Y"^7$2_QXJA*CN'QLSN]Q40P<1 MZ8RQ11'U]< P< !8;1Q1NAT!@S/P*F>W/?-$%SB;;_B8&Z7G$2$;^M//4;JV MC7(#"O Z[@TVK#,2.FN#8>9@R/*MG@4+^N7C:GA>LC1AT\4YP7%BB:94B_J= M8_5@N_.K+ >'/WIPNL4A/Q].)]=\0<>TC-_*,.?JP>G#]V:O\NSA#I/E!;ZW M4$@O[GT/W0!:VD97R(*ADP6@"Z6H\FE)M5%,U<-3JA,!X>BEV93"1::X>&9F M#3A4%.GW2ZEI$]V&:"V*:40 \,C/38Y&KP.ZP6S MQ^6\N15Z5\MM.ROP/I;U@Z'S+E8WQO(*U-)/3,[,\:O]/NW:0B7J=SFG!]M= MN,ER8 88 SAYZZKM3_-0-O[/KIL4G$.:J=<>L6+7 ^ :62)9;$I@>.>*5-X1 MJ#WP7.\MA>=@?Z7A%B^ETPBZXG.(G5*+P^&:%:.>96R=!W:H:TW==I\@F$ME M\:7 .E%&[PF2US0XX@I*C-6PJ*I7$$F+)@<.D7_\]LW;][213Y!3TSISRA: MEX\Y2?X+Q^A/;T[>O.'_007/87F"WKX[^>'=#R=OO_^!GT6A__S3F^]/?OCQ M3XT$_:\5YA9.?1*J$#<:L* M=3$>#HI>0VB<#>G$TEBUP+#:&:H47=,H(G98^#3)T%SH!F??#)<17?[&XXAD M+!7Q:#Y?+]OU<,CCM M9'_"V?$([7"PG'\M/O4:0.^\!2>.+:#?OOK1J$$Z@F%96"IU8!'.$:UU M"LII7* MR7:)@KZFKERHX%$T190"")KX0/*BN"'Y M0OOIIB/A-7F9#*V3OVS[&-9NI@Q,2F7&)-"*BP1GP"U.:7$/'W"&292.LG@4 M+Y,L8?$:[%MXE>58-XT[*GOUC089U/&7G#3!C#:#X$I^E5 ^00]"G>^=1YT" MX.1W:,)DQ?$.=AY64R=*R2 !RS)498CR5@S6**8'J#ERPZJACD;.L_"-2Z9&D*J'DD D*(F<^W+)]F:DGS:\/8, M+W*"6Y=*C%_H<)@3ZMY'9,-7GRQNFJT"F* AKB3?@4F=ZATN@:EU:_L2?CDS)*>&VB= 1@#5XJ:'UF4)F*#\&94$=# MUO$;9U&1S"VG1"PZ/IGB!+_-'*,"F('&!:5F#F-1-//J^R)3/4'W3#G\J1&E M34/L!\ L9T;!9M).# )'H(LD79L$D"0; "YO)+J"9/[O, FG\H,\]5QZA?,+A>C?8.:'CW@Z_7R'I/I0HH> M>3JX0.L"QX@=ALN7JS7/>)$ =P('5<(A M*A(PU?>F^.NDMH;2?_S#V^_?_%G^;W&D19Q(ADK?:CYR#<@=7 H "MM,=""Q MK@CH-+;@WG]L=O!+CAHXN>,)S7=>&XY66Y+'MV5$2I.K:,#9;Z@S_)!DS*^D MDR-],*5AO:^&8\HM]EN&?""]SLL")?J6^5XG> M#]#O9[HTCN]6G!\6_RA8G.$'=K;4.M3O98HQG\ZB%H;*?C&&'I3^CD4"X/\@ MXQTZ@%-YKZ0'#+'%K0NXSKE )X.##2 @J.]@Z'XC/AAW96?H\I$I6M#I/9/F M"[):'$P4W@X]^7!C @A6NYBZYS@.G=<.V(<2&\!B:>?]A?+Q,\^?"FKS7I!+D++8!O/)4MD(> MT*!M!:D_J9TO$%-"7 O]6NN%/[5]C4L&C,>JQC@^VWRB4\DD:\ZZC%CZ5W%U MB"(.V\+(0Q7N.?;T@!72VQ0\0,E@^L-!S9&6H:RS+'AG:9^BHH-UU!1K_)H- M9_?7[WSI$$VCA@[R&69-E*2X8\9=[LA%RXAUG%?YS2)] MO,KJYIT^_'O C&U'-$[.;=V\"I4Y(O7+^-4B]:&1G/]KS@;%5?5&=+]!7U$7M2?B(3_].,?N#GLGM2_LNTC>&FZK-C#3&FW5%<], 0 M?P#8/I';JN+H?$LG.!7;!DP7ETE&5WRTN[#4([H#4&85KV.Z _C.V&R0!T,U M!Y#26-E284LJ=@<33\S(E^]SJAF<9\/V:B%LQ[KON +?5#W$OFEP_E '@[!; MZRZP^-\)'887F!#F7#2GG34UX*CK^?"ONSF]H\!V16C?8X> EJ=/(0GKH'!S MAODR)U=YQ%P!<2]CSO*Z::K!IN23@&X&M)EGU@ SW#G!E/:\HUA,FE"^>\H] MIEE!5;<#61;L0PH(._#9##./?CIM,'P<#%G:\GND_\(%BYENK68IF4MQBT7K M&M?P*UO9VM%\GJ_I(GZ&YSAY,F1/=E,-RU6],6:6RGKPIV@MYCY!OZYUOZ%C MJ/B+D36J]-G6354 0'I.LF)-V#+I%I=ERC]*[4)56S%A:>MFI)G"YC+@T]D) MO^Q\5GS^.FDX3JF=U&7!YK8J 3'+.^SN,QA*",MHJVEF,FO5X?/8!EUQZKL9 MDN>5;N4^ *3L)'NB'3,G^@NZ+3JA!UH)OFU4;13@4T\&JQTO^2 II,-?IB9; M8(6)XRM13)/^ M6%P"S8J /,0V6VX[.;I*[=##KL$DVP"L4(7/7Q-LDP= 2;7.8B8,:S]5MI!M MVB79P]8Z]P%9I1J6H'ICS.R4]>!34XO9-)!N=[8(RS5PFB].U_0)V$&TWARY MB3;,1!8),)^3-:VK[6[^ 1#-MMO^E]6OW6JXS=BO#!T'V,8_3< M13\X-_< +7VBN&CQ<>MU%$T)+&HJ;4I&>5,@P'&W^7XHOFL/'G&U^D"^ ZO- M^@QTD \XP\NP#=/Y5C@XEUP1&L+!ASCW4WV:7C6D )CG.E7CF[LVN-M(AN%6'0,<>.X(*H?99[UBT&G 70H" MP&D'0QVX;2@E^+"[-W3;>>.D+@'4>3KJC51G$D?SW]<)P=1PV@'+S0TUIAQE M,19TA6S760F5M MK$(<&KWL4.5]K_Z)?;9#FH3/L>T^:N\][$.=M_>;FU^%EZK';?5253-M<-8R M&]E_V#+Q*4K%61_J0"1SVG/9 [J$[/[0DA1)9_N[U^.7>;IFB3/I'_Q$YHR. M N/% FN]6=\@?/:>,!7 M1.D'DJ]75(/^>R[6)#C>+DF.T3B#(;R:3K]CY1ZLRP]\/\A[HOS;KUQG1R6Z M;Y)$LPU6#C]4#N__GT@9XOHR6X[Q$/;K:(G9\2L70OK)>;9>K41X8936J;'' MU=%S6\YR)U6O^= &&-/)CN:@!V:/<@!8*7-:2Q7%E+YI7JS9A9>4C_-Z=Y+Z M28N<+#F;]]Z.5(8^\=4=.]G8NC_C,B<:NCEI^ I_